ニフクラ ブログ

ニフクラ/FJ Cloud-Vやクラウドの技術について、エンジニアが語るブログです。

これから始める人のためのニフティクラウド入門(リージョン選択編)

今回の記事では、初めてニフティクラウドでサーバーを動かしたいと思っている人のために手順、および設定項目の意味、選択肢がある場合には選択の指針となる情報を解説いたします。サーバー作成のための参考としてください。

サーバー作成までの流れ

ニフティクラウド上にサーバーを作成するには、概ね以下のような手順となります。

  1. ダッシュボードにログイン
  2. リージョンの選択
  3. サーバーの追加

今回はリージョン選択時のポイントについて、解説していきます。

リージョンとゾーンの選択

ダッシュボードにログインしたら、まずはリージョンを選択する必要があります。

dashboard_regionselect

リージョンとは

リージョンは、例えて言うならデータセンターです。ニフティクラウドでは、関東のリージョン、関西のリージョン、アメリカのリージョンに分かれています。今回は関東のリージョンを中心にお話します。

zone

ゾーンとは

リージョンの中はさらにゾーンに分割されています。これも例えるならば、データセンター内のフロアだと考えてみてください。クラウドサービス用のリソースは少しずつ増えていきますので、フロア増設の際に導入される設備やシステムには違いがあります。そのため、ゾーンによって使用できる機能に違いがあります。後から追加で機能を使いたくなった時、サーバーをリージョン、ゾーン間で移動させるのは大変なので、あらかじめどのリージョン、ゾーンを使用するかを考えておきましょう。

リージョンとゾーンに関連する主な制約

リージョンとゾーンに関連する主な制約を確認しておきましょう。

多くのリソースはリージョンごとに独立している

これが一番わかりやすい制約でしょう。前述の通り、リージョンはそれぞれ独立した存在なので、そこに配置したリソースはそのリージョンの中でのみ有効です。

たとえば、登録したSSHキーはそのリージョンでのみ有効です。

サーバーをリージョン間を移動させるにはサーバーコピー機能を利用する必要があります。

クラウドFAQ すでに利用中のサーバーについて、リージョンやゾーンの変更は可能ですか?

また、リージョン間をネットワーク経由で接続するのも、VPNなどが必要となります。

クラウドFAQ 「リージョン・ゾーン」一覧

このような制約を回避するために、主に使用するリージョンを決めておき、バックアップなどをするためのリージョンを別にするような利用設計が必要となるでしょう。

new_server_zone

ネットワークはゾーンごとに独立している

サーバーが接続されているネットワークは、ゾーンごとに独立しています。

サーバー間を簡単に接続するためのプライベートLANは、作成したゾーン内でのみ接続可能です。同じリージョン内でも、ゾーンが異なると相互接続にはVPNが必要になります。WebサーバーとDBなど、密に結合する必要があるサーバーは、同じネットワークに作成します。

ゾーンごとの機能比較

ゾーンごとに使用できる機能の違いは、以下のページにまとめられています。

ニフティクラウド ゾーン別機能対応表

クラウドFAQ 選択するゾーンによって機能制限はありますか。

主に着目すべきゾーン間での機能の違いは、以下の通りです。

Type-eファミリーが選択できる

Type-eファミリーはType-hファミリーに比べて性能を押さえた分、料金プランが安いサーバーファミリーです。あまり性能を必要としないサーバーを作成するなら、Type-eファミリーが選択できるゾーンを選びます。

Type-hファミリーのwlargeタイプが選択できる

Type-hファミリーのwlargeタイプは高スペックなサーバータイプです。最も高スペックなwlarge96で8vCPU・96GBが割り当てられます。

専有サーバーが選択できる

専有サーバーのプランが利用できるのは、east-13ゾーンのみです。

増設ディスクが利用できる

east-11では増設ディスクとして追加できるのは高速ディスクのみで、標準ディスク、高速なフラッシュドライブが利用できません。その他のゾーンでもフラッシュドライブが利用できないゾーンがあります。

ファイアーウォールでIPv6が使用できる

ファイアーウォールでIPv6が使用できるのはeast-14のみです。

L7ロードバランサーの冗長構成が選択できる

L7ロードバランサーの冗長構成がeast-11とeast-12ではできません。

プライベートLAN・ルーター・VPNゲートウェイが利用できる

プライベートLANやルーター、VPNゲートウェイがeast-11では利用できません。

ネットワーク速度

クラウド上のサーバーを利用する場合、ネットワークの速度も気になるところ。以前のエントリーにネットワーク速度の測定結果をまとめてあります。2016年2月に測定した結果なので、east-3ゾーンは含まれていません。

ニフティクラウドのネットワーク速度を計測する

ネットワーク速度の測定場所(接続元)が東京・渋谷からになりますが、帯域は大きく異なりません。

レスポンスタイムは測定場所とゾーンの間のネットワーク的な距離によりますが、東京・渋谷からはeast-2ゾーンがかなり近いのが分かります。通常の利用では気にならない程度の差ですが、レスポンスタイムが重要になるシステムを作成する場合には、事前にテストサーバーを各ゾーンに作成し、計測してみるとよいでしょう。

どのゾーンを選べばいいのか?

リージョン、ゾーンによる機能の違いを見てきましたが、それではどのゾーンを選んでサーバーを作成すればよいのでしょうか? いくつかの観点からおすすめゾーンを選んでみたいと思います。

とにかく全部使えるようにしておきたい

専有サーバーのプランを利用しないのであれば、east-14が最もフルスペックなゾーンになっています。次点としてeast-13、east-21あたりが大体の機能が利用できます。east-14とeast-13、east-21の間に、通常利用で想定される機能の差はありませんので、ネットワークのレスポンスによってはeast-21ゾーンもよいでしょう。

専有サーバーを使いたい

専有サーバーを使いたい場合にはeast-13一択になります。その場合、その他の仮想サーバーを作成する場合にもeast-13を使用することになります。

リージョンの選択など、ニフティクラウドを初めて使う人には悩ましい課題について解説してみました。次回はWindowsサーバーの作成手順を解説します。

ルーター機能のルートテーブルを利用してみた

ニフティクラウドのネットワーク機能では、仮想的なルーターを利用することができます。ルーターではDHCP、NAT、Webプロキシなどの設定が可能です。また、複数のルーター同士を接続するためにルートテーブルの機能があります。 今回はそのルートテーブルを利用して、インターネットに接続するためのゲートウェイを作成してみました。

ゴール

ゴールの構成は以下の通りです。完成すれば、同じ構成図がニフティクラウドのコントロールパネル (以下コンパネ)のネットワークから確認することができます。

try_routetable_goal.png

また、今回の構成を実現するにあたっての想定の料金は以下の通りです。 今回の記事ではリージョンはwest-1として進めます。

  • プライベートLAN × 2 = 20円/時 × 2 = 40円/時
  • サーバー × 2 = 42円/時 × 2 = 84円/時
  • ファイアウォール × 1 = 0円/時
  • ルーター × 1 = 20円/時
  • ルートテーブル × 1 = 0円/時

上記の合計で144円/時となります(料金は2016/12/26時点のものとなります)。

プライベートLANの作成

まずはプライベートLANを作成します。 コンパネの左メニューから「ネットワーク」->「プライベートLAN作成」を選択します。

今回は2つのプライベートLAN(vlan1、vlan2)を作成します。 プライベートLAN名は好きなものを指定してください。 ゾーンは今回はwest-11を選択します。 1つ目のプライベートLANのCIDRを172.16.0.0/24、2つ目のプライベートLANのCIDRを192.168.0.0/24として作成します。 料金プランは従量を選択します。

try_routetable_addding_vlan1.png

try_routetable_addding_vlan2.png

ファイアウォールの作成

次にファイアウォールを作成します。 今回、ニフティクラウド上に作成するリソースはすべて同じファイアウォールに所属させるので、サーバー間で必要な設定は特にありません。ニフティクラウド上のサーバーにSSHログインするための許可を設定すればOKです。

VMの作成

2つVMを作成します。1つは先程作成したvlan1にのみに接続されたグローバルネットワークとは隔離されたVMで、もう1つはvlan2とグローバルネットワークに接続されたVyOSを作成します。

VyOSの作成

まず、VyOSを作成します。 ニフティクラウドにすでに公開されているパブリックイメージがあるのでそれを利用します。 料金は従量を選択します。 プライベート側は先程作成したvlan2を選択します。

try_routetable_addding_server2.png

サーバーが作成できたら、IPアドレスとインターネットに接続するためのNATの設定を行います。 VyOSにログインしコマンドを実行します。ユーザーはVyOSになるので注意してください。

  • ssh -i sshkey_private.pem vyos@xxx.xxx.xxx.xxx
  • configure

ここで編集モードになります。

  • del interfaces ethernet eth1 address dhcp
  • set interfaces ethernet eth1 address '192.168.0.10/24'

上記でプライベートIPの設定を行います。以下でvlan1に属するサーバーがインターネットに出るための設定を行います。

  • set nat source rule 1 source address 172.16.0.0/24
  • set nat source rule 1 translation address 'masquerade'
  • set nat source rule 1 outbound-interface eth0
  • commit
  • save

また、vlan1へのルーティングも追加しておきます。 exitで編集モードを抜けて以下を実行します。 vlan1へのルーティングをOSレベルで設定しています。

  • ip r add 172.16.0.0/24 via 192.168.0.1 dev eth1

CentOS7の作成

次にグローバルネットワークとは隔離されたVMを作成します。 ゲストOSはCentOS7を選択します。 料金は従量を選択します。

try_routetable_addding_server1.png

サーバーが作成できたら、IPアドレスの設定をします。 c7サーバーにログインし、コマンドを実行します。

  • ssh -i sshkey_private.pem root@xxx.xxx.xxx.xxx
  • cat /etc/sysconfig/network-scripts/ifcfg-ens192
DEVICE=ens192
BOOTPROTO=static
IPADDR=172.16.0.10
NETWORK=172.16.0.0
NETMASK=255.255.255.0
GATEWAY=172.16.0.1
ONBOOT=yes
PEERDNS=no
EOF

この後、サーバーを再起動するので再起動した際にもvlan2へのルーティングが通るようにしておきます。

  • cat /etc/sysconfig/network-scripts/route-ens192
192.168.0.0/24 via 172.16.0.1

ルーターが作成されていないので、まだVM同士の通信はできません。 CentOS7の方はプライベートIPを設定できたら、グローバル側のインタフェースを外しておきましょう。外さなくても問題ないですが、外した方が料金も若干安くなるのでおすすめです。

ルーターの作成

VMの作成が完了したらルーターを作成します。 左メニューの「ネットワーク」から「ルーター作成」を選択します。 ルーターには作成した2つのプライベートLANを接続します。 各プライベートLANにIPアドレスを指定しない場合は、.1がルーターのIPとして利用されます。 ファイアウォールはサーバーと同じファイアウォールを設定します。 タイプは一番小さい「router.small (10ルール)」で作成します。

try_routetable_addding_server2.png

ルーター作成後のc7サーバーへのプライベートIPでのログインはvyos経由で行えます。 vyos上にSSHキーを配置してログインしてください。先程、実施したOSレベルでのルーティング追加がうまくできていないと通信できません。

ルートテーブルの作成と設定

ルートテーブルは今回ゲートウェイとしての役割となります。 そのため、作成前にc7サーバーでpingでも実行してみます。まだ、疎通できていないことが確認できると思います。

$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
From 172.16.0.1 icmp_seq=1 Destination Net Unreachable

この状態でルートテーブルを作成し、ルーターに設定してみます。 ルートテーブルは左メニューの「ルートテーブル」から作成できます。 「ディスティネーション」に0.0.0.0/0を設定し、ターゲットは「IPアドレス」を設定し、192.168.0.10を入力します。192.168.0.10はvyosに割り振ったプライベート側のIPとなります。

try_routetable_addding_routetable.png

要するにインターネット(0.0.0.0/0)に出る場合には、次のルーター(vyos)の192.168.0.10のインタフェースをホップします。という設定を作成します。

ルートテーブルが作成できたら、ルーターにルートテーブルを設定します。 ルートテーブルは作成しただけではダメでルーターに設定する必要があります。 作成したルーターを選択し、「ルーターの操作」から「ルートテーブルの設定」を選択します。 そして、事前に作成したルートテーブルを選択します。

try_routetable_setting_routetable.png

動作確認

ここまでできれば、c7がインターネットに接続できるようになっていると思います。 先程のpingがどうなっているかを確認してみてください。

# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=55 time=10.5 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=55 time=10.8 ms

上記のようにc7サーバーから外部に通信できていることが確認できると思います。 tracetouteを見てもルートテーブルで設定した通り、192.168.0.10 -> VyOSの共通グローバルのGatewayを通って通信していると思います。 VyOSの共通グローバル側をモニタしてみても良いと思います。 以下はVyOSで編集モードになりeth0 をモニタリングしている状況です。

  • run monitor interfaces ethernet eth0

try_routetable_ret_monitoring_eth0.png

大きなファイルをダウンロードしてる時にRX Rateが大幅に増加することが確認できると思います。

【おまけ】なぜこの構成にしたのか

2016/12/26時点のニフティクラウドでルーターのみを使用してルートテーブルを使用する場合はこの構成しかできません。理由は以下の通りです。

  • 1つのプライベートLANが複数の「ルーター」に所属することができないため、同一プライベートLAN内でのルーター同士の通信ができない。
  • そのため、パブリックイメージからVyOSを構築したが、ニフティクラウドの「インスタンス」には複数のプライベートネットワークが接続できない。
  • なので、ルーター同士の通信は実現できるが、ルーティング先が共通グローバルしかない。

という理由になります。

基本的にルートテーブルは、VPNゲートウェイと連動して使用するのがメインの使い方となります。 VPNゲートウェイについては、ほかに紹介している記事が多数ありますので、こちらをご確認ください。

また、今回は隔離されたネットワークにあるサーバーをインターネットに接続しただけなので、ルーター機能のSNATを利用しても実現可能です。 ルートテーブルの紹介も兼ねて、今回の構成を紹介いたしました。

Fastly(CDN)のログをニフティクラウド オブジェクトストレージに保存する

こんにちは。ニフティの東條(ひがしじょう)です。 前回の「Fastly(CDN)を利用してデータ配信してみよう」では、Fastly(CDN)の基本的な利用方法についてご説明しました。 今回は、Fastly(CDN)のログをニフティクラウドオブジェクトストレージに保存する方法をご紹介いたします。

仕組み

Fastly(CDN)では任意の場所にログを保存する事が可能です。 ニフティクラウドオブジェクトストレージは、Amazon s3に準拠したオブジェクト型ストレージサービスですので、Fastlyのコントロールパネル上より簡単に設定することが可能です。

service%ef%bc%8ffastly_img_02

設定内容

まず、ログの保存先としてニフティクラウドオブジェクトストレージを用意します。すでにオブジェクトストレージをご利用の方は飛ばしてお読みください。

オブジェクトストレージ

  1. ニフティクラウドのコントロールパネルよりオブジェクトストレージを選択してください。
  2. 次にバケットを作成してください。公開レベルはお客様のご利用形態にあわせて、選択してください。

Fastly

1.Fastlyのコントロールパネルよりログを保存したいServiceを選択後、Configure → Edit Configurationを選び、設定画面に入ります。

fastly2-1

2.設定画面にて、Loggingを選択してください。

fastly3

3.Endpointの選択画面にて、Amazon s3を選択してください。

4.Endpoint 設定画面にて、下記項目を入力し、Createボタンをクリックします。

Description : ログ保存の設定名を入力してください。 Bucket Name : オブジェクトストレージで作成したバケット名 Access Key : ニフティクラウド コントロールパネルよりご確認ください。 Secret Key : ニフティクラウド コントロールパネルよりご確認ください。 Domain : jp-east-2.os.cloud.nifty.com と入力してください。

確認方法

Endpoint設定画面のperiodで選択した時間単位でニフティクラウド オブジェクトストレージにログが保存されていきます。Periodは標準で3600秒となっています。

まとめ

CDNではリアルタイムでのログ保存が難しいのですが、Fastlyではコントロールパネル上でリアルタイムデータが閲覧でき、簡単に設定することができます。 ニフティクラウド オブジェクトストレージを保存先にすると簡単な設定で実行できるのでおすすめです。

オブジェクトストレージをS3ツールで利用する【設定編】

はじめまして。ニフティクラウド オブジェクトストレージ担当の北條です。

2016年6月29日にリリースしたニフティクラウド オブジェクトストレージは、おかげさまで着々とユーザー数を伸ばし、多くの方々にご利用いただいています。 今回は、Amazon S3互換のREST APIを提供するニフティクラウド オブジェクトストレージをLinux OS上でS3ツールを使って、手軽に利用する方法をご紹介します。
※本記事に掲載されている情報は、2016年11月25日時点でニフティクラウドで提供されているCentOS7.1およびUbuntu 16.04にて動作確認を行っています。

なお、今回取り上げるツールのうち、ニフティクラウド ストレージ SDK for Java以外のツールにつきましては、ニフティから提供されているツールではないため、サポート範囲外となりますのでご了承ください。

続きを読む

IoTデバイスハブ + RDBで蓄積した温湿度データをData Visualizer(β)で可視化してみた

こんにちは。ニフティクラウドでエンジニアをしている竹内です。

2016年10月25日にリリースされた新機能「ニフティクラウド Data Visualizer(β)」は、IoTデバイスや業務システムなどから生み出されるビッグデータを「見える化」し、アクションの「自動化」につなげるクラウド型BI(Business Intelligence)ツールです。

今回はこのData Visualizer(β)を利用し、IoTデバイスハブ + RDBで蓄積した自分の部屋の温度をグラフとして可視化してみました!

前回のサーバー不要! タイマー+スクリプトで定期処理を自動化 | ニフティクラウドブログと同じく、今回も一切サーバーを構築・運用することなく、データを描画するところまでできましたのでご紹介させていただきます!

続きを読む