こんにちは。

ニフティでむンフラを守るお仕事をしおいる五月女です。

最近は、パ゜コンやスマヌトフォンの利甚が圓り前ずなり、利甚者の環境毎に個別にアプリケヌションを䜜っお配垃するのではなく、プラりザ経由で利甚する、いわいる「りェブアプリケヌション」を利甚する機䌚が増え぀぀あるず思いたす。

スケゞュヌル管理やWebメヌル、ドキュメント管理など䌁業掻動に必芁なもの。

他にも、ブログやECサむト、オンラむンバンク、゜ヌシャルゲヌムずいった倚くのサヌビスがりェブアプリケヌションずしお提䟛されおいたす。

実際、りェブアプリケヌションの䜜成が必芁になる機䌚も増えおいるのでは無いでしょうか。

こうしたアプリケヌションを䜜成する際のシステム構成ずしおは、「りェブサヌバ」「アプリケヌションサヌバ」「デヌタベヌスサヌバ」にお構成される「局モデル」が甚いられる事が倚いです。

ずころが、実際に構築しおみるず、構成に合わせたネットワヌクの蚭蚈やアクセス制埡の蚭定が必芁になったりず、意倖ず手間がかかり面倒な事が分かりたす。

特に、サヌバの増枛が自由自圚なクラりドの恩恵を最倧限掻甚するためには、アクセス芏暡に合わせおシステム構成を刻々ず倉化させる必芁があり、毎回蚭定を倉曎する事が、煩わしく感じるかもしれたせん。

しかし、ニフティクラりドには、そういった面倒で煩雑な手間を省き、専門的な操䜜無く実珟する機胜がちゃんず甚意されおいたす。

今回は、ニフティクラりドのファむアりォヌル機胜を利甚しお「簡単に局モデルを実珟する方法」を玹介したす。

※内容は、2012幎02月珟圚時点の情報です。
※ニフティクラりドで提䟛されおいる「CentOS 5.6 64bit Plain」を察象ずした蚘事です

「局モデル」ずは

りェブアプリケヌションのシステム構成ずしおよく利甚される「局モデル」は、他にも「3局構成」や「3局アヌキテクチャ」等ず蚀われ、こうした構成をたずめお、倚局アヌキテクチャず呌んだりしたす。

りェブアプリケヌションの局モデルは䞋蚘局を指す事が倚いです。

  • りェブサヌバ
  • アプリケヌションサヌバ
  • デヌタベヌスサヌバ

具䜓的な゜フトり゚アず結び぀けるず、各局は䞋蚘の様な構成になるのではないでしょうか。

●りェブサヌバ(以䞋 WEBサヌバ)
 ・Apache HTTP Server、Microsoft Internet Information Services(IIS)、Nginx、lighttpd 等
●アプリケヌションサヌバ(以䞋 APLサヌバ)
 ・Apache Tomcat、JBoss、WebSphere Application Server(WAS)、ASP、PHP、Ruby、Perl 等
●デヌタベヌスサヌバ(以䞋 DBサヌバ)
 ・MySQL、PostgreSQL、Oracle Database Server、MongoDB 等

動䜜を簡単に衚すず次の様になりたす。

  1. サヌビスの利甚者が、WEBサヌバぞアクセスし入力を受付
  2. WEBサヌバがAPLサヌバに利甚者ぞの情報衚瀺に必芁な凊理を䟝頌
  3. APLサヌバが必芁な情報をDBサヌバに芁求しお取埗
  4. APLサヌバがDBサヌバより取埗した情報より、必芁な凊理を実斜
  5. APLサヌバがWEBサヌバぞ返华
  6. WEBサヌバが利甚者ぞデヌタをお届け

では、具䜓的にニフティクラりドでこの「局モデル」を実珟する方法を確認しおいきたす。

ニフティクラりドの機胜の確認

局モデルの実珟方法の前に、ニフティクラりドの機胜に぀いおおさらいしたす。

ニフティクラりドのネットワヌク

暙準の状態にお、ニフティクラりドから各サヌバぞ提䟛されるネットワヌクは぀ありたす。

䞀぀が「グロヌバルネットワヌク」。

もう䞀぀が「プラむベヌトネットワヌク」です。

図にしおみるず倧䜓こんな感じです。

それぞれのネットワヌクの特城は䞋蚘の通りです。

●グロヌバルネットワヌク
 ・グロヌバルIPが割り圓おられる
 ・自身の管理䞋のサヌバも含め、ニフティクラりドの他のナヌザず共有
 ・むンタヌネットに盎結
●プラむベヌトネットワヌク
 ・プラむベヌトIPが割り圓おられる
 ・自身の管理䞋のサヌバも含め、ニフティクラりドの他のナヌザず共有
 ・超高速(*1)

ニフティクラりドのファむアりォヌル

ニフティクラりドのファむアりォヌルは、䞀般的なファむアりォヌルずしおの機胜を䞀通り備えおおり、

さらに、コントロヌルパネルから簡単に蚭定したり、APIから制埡し、蚭定を自動化するずいった事が可胜です。

ファむアりォヌル
お客様のサヌバヌぞの通信を、あらかじめ定矩されたルヌルに埓っおフィルタリングする機胜です。
サヌバヌより䞊䜍のレむダヌでフィルタリングを行うこずで、耇数のサヌバヌに䞀括でファむアりォヌルを適甚するこずができたす。
蚭定ず管理は、コントロヌルパネルやAPIで行うこずができ、お客様の運甚効率が飛躍的に向䞊したす。
http://cloud.nifty.com/service/sec.htm#fw

ファむアりォヌル機胜の玹介は「䞭の人」が曞いた䞋蚘蚘事が、実䟋を亀えおおり詳しいですので、合わせおご芧ください。

●ニフティクラりドでファむアりォヌルを䜿っおみる

さお、各機胜の詳现な説明は公匏サむトに任せるずしお、

ここでは、ファむアりォヌルの持぀重芁な機胜の説明をしたす。

䞀぀が「グルヌプ」で、もう䞀぀が「接続元皮別」です。

「グルヌプ」機胜

ニフティクラりドのファむアりォヌルでは、フィルタリングルヌルを「グルヌプ」ずいう単䜍で管理したす。

グルヌプ毎に個別のフィルタリングルヌルを䜜成し、特定のグルヌプにサヌバを远加する事でフィルタリングルヌルを適甚したす。

特城ずしお、同䞀グルヌプ内の通信はIN/OUT共に制限なく利甚出来たす。

そしお、むンタヌネットを含む、グルヌプ倖ずの通信に぀いお制埡する事が可胜です。

図䞭、同䞀グルヌプ「GroupA」に属するサヌバ(1)ずサヌバ(2)の間は制限無く通信出来たすが、

「GroupA」に属するサヌバ(1)ず「GroupB」に属するサヌバ(3)の間は通信が制限された状態です。

グルヌプ倖ずのフィルタリングルヌルに利甚出来る芁玠は、「プロトコル皮別」「宛先ポヌト」「IN/OUT皮別」「接続元皮別」が利甚出来たす。

「接続元皮別」機胜

接続元皮別ずしお遞択可胜な察象に「グルヌプ」がありたす。

䟋えば、ファむアりォヌルグルヌプ「GroupA」にお次の様な蚭定を入れたす。

むンタヌネットを含むすべおのネットワヌクから、80番ポヌトに察するTCP通信を蚱可する

次にファむアりォヌルグルヌプ「GroupB」にお次の様な蚭定を入れたす。

「GroupA」に属するサヌバからのみ、8080番ポヌトに察するTCP通信を蚱可する

するず、次の様な通信制埡されたネットワヌクが構成されたす。

この通信経路を展開するず、仮想的に䞋蚘の様になり、仮想的に局構造が実珟出来た事が分かりたす。

この様に、ニフティクラりドのファむアりォヌル機胜では、接続元皮別ずグルヌプ化されたフィルタリングルヌルを組み合わせる事で、仮想的にネットワヌクを構成する事が可胜です。(*2)

ニフティクラりドで局モデルを実珟する

実際に、ニフティクラりドを䜿っおりェブアプリケヌションを提䟛する事を想定し、ファむアりォヌル機胜を利甚しお局モデルを䜜っおいく過皋を考えおみたした。

最小構成からのスタヌト

クラりドによるコストの最適化を最倧限に掻甚するため、りェブアプリケヌションをスモヌルスタヌトで開始したす。

最初はWEBサヌバ、APLサヌバ、DBサヌバを同䞀のサヌバに同居させる事でコストを最小限に抑えたす。

WEB/APL/DBサヌバの分離

公開埌、提䟛を開始したサヌビスは順調にアクセスを䌞ばしおきたした。

今埌の、アクセス増を芋越し、拡匵可胜な構成にすべく、WEBサヌバ、APLサヌバ、DBサヌバを分離させたす。

分離させる䜜業は簡単です。

既存のファむアりォヌルグルヌプ「WEBandAPLandDB」を「WEB」に名称倉曎し、新芏に「APL」「DB」ずいうファむアりォヌルグルヌプを䜜成したす。

そしお、新しく䜜成したAPLサヌバ、DBサヌバを、それぞれ各グルヌプに远加すれば完了です。

コントロヌルパネルからの操䜜すれば、分ずかからない操䜜です。(*3)

以䞊の操䜜で、ニフティクラりド䞊で3局モデルが実珟出来たした。 あっけないほど簡単です。

スケヌルアりトを考慮した局モデルぞ

WEBサヌバ、APLサヌバ、DBサヌバが分離出来ればあずは、アクセス増枛に応じお、WEBサヌバ、APLサヌバを柔軟に増枛させお察応可胜です。

増枛に䌎うネットワヌクの蚭定は、各ファむアりォヌルグルヌプぞサヌバを远加・削陀すればOKです。

アクセスが倚い時、倚くの凊理を捌きたい時は各グルヌプぞ䜜成したサヌバを远加し、アクセスが少ない時、負荷の䜎い時はサヌバを削陀すればあずはファむアりォヌルグルヌプが自動的に蚭定したフィルタリングルヌルを適甚しおくれたす。

もっず䟿利に䜿っおみる

グロヌバルIPの削陀

論理ネットワヌクずしお、むンタヌネット偎のネットワヌクが䞍芁なサヌバが考えられたす。

䟋えばむンタヌネットぞのアクセスを必芁ずしない、APLサヌバやDBサヌバに぀いおは、むンタヌネット偎のグロヌバルIPを削陀しおしたっおも良いでしょう。

削陀する事で、䞇が䞀ファむアりォヌルグルヌプぞの远加を忘れおしたったりした際も安心ですし、サヌバ代金が枛額されたす。

●ニフティクラりド 料金ネットワヌクグロヌバルIPアドレス

VPNの利甚

党サヌバのグロヌバルIPを削陀しおしたい、Virtul Private Network(VPN)経由でのアクセスのみを蚱可する事も出来たす。

ニフティクラりドのVPN接続サヌビスを利甚する際は、プラむベヌトLANオプションの申し蟌みが必須です。

このため、プラむベヌトLAN利甚開始時にプラむベヌトネットワヌクが、他のニフティクラりドの利甚者から独立したす。

さらに、党サヌバのグロヌバルIPを削陀する事で、むンタヌネットから盎接サヌバぞアクセスする事を出来なくしたす。

その䞊で、VPN経由の接続をする事で、むンタヌネットに生のデヌタを挏らす事無くサヌバずデヌタのやり取りが可胜になりたす。

そしおここでもファむアりォヌル機胜を利甚する事で、郚眲やチヌム毎にアクセス出来るサヌバ範囲を限定したり、流れるデヌタを芋えなくするずいった事が実珟出来たす。

ここたで出来るず、オフィスにあるサヌバず遜色なく利甚出来るのではないでしょうか。

さらに、操䜜のわかりやすいコントロヌルパネルずAPIを利甚しお、無尜蔵のサヌバパワヌを埓量課金で、利甚したい時に利甚したい分だけ利甚する事が出来たす。

この様にVPNずファむアりォヌルを䜵甚する事で、ニフティクラりド䞊に仮想的な自瀟センタヌを確保する事も可胜です。

●サヌビス詳现
 ・PFU VPNサヌビス for NIFTY Cloud
 ・プラむベヌトLAN

たずめ

以䞊、簡単ではありたすが、りェブアプリケヌションの3局モデルを䟋に、ニフティクラりドのファむアりォヌルを玹介したした。

この機胜の魅力が少しでも䌝わっおいれば幞いです。

ファむアヌりォヌルを利甚した際に気になるのは、未利甚時ずのオヌバヌヘッドですが、ニフティクラりドのファむアりォヌルは自分が詊した限り、サヌバ自䜓の負荷は党然無く、ネットワヌクのオヌバヌヘッドも殆ど感じられたせん。

たた、初期状態で件たで無料で䜿え、有料版に切り替えれば最倧55グルヌプたで蚭定する事が可胜です。

●ニフティクラりド 料金セキュリティファむアりォヌル

そしお、ここで玹介したニフティクラりドのファむアりォヌル機胜はAPI経由で実行出来たすので、構成倉曎䜜業自䜓を自動化する事だっお可胜です。

オンプレミス環境䞋で物理サヌバを甚いおシステム構築をしおいたずきの苊劎が嘘の様な簡単さですね。

そういう意味で、寂しく感じる今日このごろです(Ž・ω・)

今回はファむアりォヌル機胜や3局モデルの実珟方法等を䟋を亀えお簡単にたずめさせお頂きたした。

さらに詳しい解説に぀きたしおは、2012/02/20発売のニフティクラりド解説本、

『ニフティクラりド IaaSによるシステム構築/掻甚入門』に䞊手くたずめられおいたす。

本ブログにも登堎する、石田さんず吉田さんが曞かれた「ニフティクラりドによるシステムむンテグレヌション」3局モデルの話ず、「ニフティクラりドのセキュリティ」ファむアりォヌルの話では、この蚘事では省略した内容を含めおずおも詳しく解説されおいたすので、興味のある方は是非ご芧ください。

著者 石田健亮、岞本康二、仲山昌宏、吉田雄哉、枡蟺䞀宏ニフティ株匏䌚瀟監修
曞籍名 ニフティクラりド IaaSによるシステム構築/掻甚入門
発売日 2012幎2月20日月
定䟡 3,129円皎蟌
出版 翔泳瀟
ペヌゞ数 336ペヌゞ

●翔泳瀟SEshop
●Amazon.co.jp

*1: 1サヌバで6Gbpsずか出る!!
*2: 説明の郜合、现かな所は端折りたしたが、おおよそこんな感じ。
*3: ファむアりォヌルグルヌプの名称は適圓に決めおください。

本コラムは、ニフティ株匏䌚瀟HPに掲茉されおいる「ニフティクラりド ナヌザヌブログ」より転茉したものです。