ニフクラ ブログ

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

ニフティクラウドでロードバランサーを使ってみる!

こんにちは。ニフティのハマナカといいます。
普段はWebサービスの開発・運用を行うアプリケーションエンジニアをしています。
このたび、NIFTY Cloudユーザーブログに文章を書かせていただくことになりました!よろしくお願いします。

■はじめに

私のスキルセットは、インフラに関しては概要は理解しているけど自分で構築作業をすることが無い(私の会社にはインフラの専門部隊がいるため)のであまり詳細は分かってない...という程度です。

そんな私が「ニフティクラウドで使ったことのない機能を使ってみる」ということで、今回はロードバランサーを使ってみようと思います!これからニフティクラウド使ってみようと思っている方の参考になればと思います。

結論からいうと、ロードバランサーの設定はブラウザからポチポチとクリックすればいいだけでした。すごい時代になりましたね。

■このエントリーの前提

このエントリーの前提として、既に、ニフティクラウドの基本操作に関するセットアップは終了しているものとします。

■価格

気になるお値段ですが、ロードバランサーは帯域設定に応じた月額料金のみとなっています。10Mbpsで10500円から~です。
http://cloud.nifty.com/price/

■さっそく設定してみる

ではさっそく動かしてみましょう。ロードバランサーはコントロールパネル、APIのどちらでも設定できます。今日は簡単にコントロールパネルから設定してみることにします。

1. ニフティクラウドコントロールパネルで「ネットワーク・セキュリティ」を選択します。

Clouduserbloglb1

2. 次に、画面中央のタブから「ロードバランサー」を選択します。

Clouduserbloglb2

3. タブの下に「ロードバランサー作成」というボタンが表示されるのでクリックします

Clouduserbloglb3

4. ポップアップの画面が出てくるので、「基本設定」で、名前、最大ネットワーク流量、ロードバランス方式・ポートを設定します。

Clouduserbloglb4

5. ヘルスチェック設定で、ロードバランサー配下のサーバをいい感じでヘルスチェックしてくれる設定をいれます。

お試しなので10秒間隔で6回ヘルスチェックをおこない、失敗したら切り離すように設定をしました。このあたりはサービスの要件次第ですね。

Clouduserbloglb5

6. サーバー設定で、ロードバランサー配下に置くサーバーを設定します。まずは一台だけ追加しました。

Clouduserbloglb6_2

7. フィルター設定。ここではIPアドレスの許可/拒否設定が行えます。リリース前は社内IPアドレスだけOK、なんて設定もできそうです。

Clouduserbloglb7_2

8. 最後に確認をすると...

Clouduserbloglb8

9. ロードバランサーの作成が開始されました!

Clouduserbloglb9

10. と思ったらヘルスチェックでエラーマークが出ています。。。

Clouduserbloglb10_2

サーバー側のiptablesロードバランサーIPアドレスを許可していませんでした。

ロードバランサーを利用するにあたり、サーバー側で許可すべきアドレスを教えてください。
http://cloud.kaiketsu.nifty.com/faqs/49902/thread

サポート掲示板に書いてある通りにiptablsを設定しました。

-A RH-Firewall-1-INPUT -s 111.171.200.96/28 -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -s 111.171.200.125 -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -s 111.171.200.126 -m tcp -p tcp --dport 80 -j ACCEPT

これで完了です!

■最後に

ロードバランサーの設定は基本的にはネットワークエンジニアの領分で、アプリエンジニアは触らない場所、という先入観があったのですが、わりと簡単に設定することができました(もちろん各設定の意味はきちんと理解しておく必要がありますが)。

そんな感じで、ロードバランサーの設定なんてしたことない...という方もぜひ使っていただければと思います!