「さくらのクラウド」や「さくらのVPS」と組み合わせて使う――はじめての「さくらの専用サーバ」(5)
さくらの専用サーバには、さくらのクラウドと連携するための「ハイブリッド接続」という機能が提供されている。今回はこのハイブリッド接続の活用法について紹介しよう。
専用サーバのデメリットをクラウドで補える
今までの記事でも触れているが、連続稼働させることを前提とする場合、専用サーバーのコストパフォーマンスはVPSやクラウドよりも高い。ただ、専用サーバーにはクラウドと比較すると構成の変更に時間がかかってしまうという弱点もある。そのため、サービスに対する負荷が急増した場合に素早く対処したり、短い期間限定でサーバーを増強する、といったことが難しい。こういった問題を解決できるのが、さくらの専用サーバで提供されている「ハイブリッド接続」というサービスだ
ハイブリッド接続は、さくらの専用サーバで提供されている「ローカルネットワーク」とさくらのクラウドで利用できる「仮想スイッチ」を接続することで、専用サーバーとクラウドサーバーとでの相互通信を可能にするものだ(図1)。
さくらの専用サーバのローカル接続機能は、複数台の専用サーバーを専用のローカルネットワークで接続するという機能だ。以前の記事でも詳しく紹介しているので詳しくはそちらを参照してほしいが、このローカルネットワークは各利用者ごとに閉じたネットワークとなっており、通常は専用サーバー同士の通信にのみ利用できる。
ハイブリッド接続は、このローカル接続ネットワークにさくらのクラウドの仮想スイッチを接続する、というものだ。これを利用することで、専用サーバー側とクラウド側で任意の通信が可能となる。
ハイブリッド接続機能を使うメリット
ハイブリッド接続を使うメリットは、費用対効果が高い専用サーバーを使いつつ、クラウド側で状況に応じたサーバーリソースの増強が可能になるという点だ。また、専用サーバー側でのネットワーク設定の変更作業などは不要であるため、専用サーバーで構築したサービスのスケールアップにクラウドを使う、といった利用法も可能だ。
たとえばWeb系のサービスの場合、データベースサーバーとWebサーバー、ロードバランサを組み合わせてインフラを構築することが広く行われている(図2)。
この構成では、サーバーの負荷が高くなった場合Webサーバーやデータベースサーバーを増やすことで対応することになる。このときハイブリッド接続を利用すれば、クラウド側の仮想サーバーを使って一時的にサーバーの台数を増やすといった運用が可能だ。さくらのクラウドでは時間単位での課金が行われるため、構成を工夫することによってアクセスの増える時間帯だけサーバーの台数を増やす、といった運用も可能になる(図3)。
以前にも述べたとおり、クラウドは長期にわたって稼動させた場合のコストが専用サーバーと比べて劣るというデメリットがあるが、短期間の利用であればクラウドのほうがコストパフォーマンスが高い場合もある。その後負荷の高い状態が継続するのであれば、適切なタイミングで専用サーバー側でサーバーを増強することもできる。
ハイブリッド接続の利用手順
さて、さくらの専用サーバでハイブリッド接続を利用するには、以下の前提条件を満たしている必要がある。
- さくらの専用サーバおよびさくらのクラウドの両サービスを同一の会員IDで契約している
- さくらの専用サーバーでローカル接続ネットワークを有効にしている
- さくらのクラウドで仮想スイッチを作成している
2.および3.の条件については、それぞれのコントロールパネルからの操作で簡単に準備できるが、1.の条件については事前の注意が必要だ。さくらの専用サーバとさくらのクラウドの両サービスを異なる会員IDで利用している場合、その間でのハイブリッド接続は行えない。
また、ハイブリッド接続の利用申込みは現時点ではオンラインでは行えない。以上の条件を満たしている状態で、申込み書類に記入して郵送で申込みを行う必要がある(ハイブリッド接続の利用申込みページ)。さらに利用申込書が受領されてからサービス提供まで1営業日が必要となっており、即日での利用開始はできない点に注意してほしい。
ちなみに、さくらのクラウドでの仮想スイッチの作成は、さくらのクラウドのコントロールパネルから行える(図4)。手順としては以下のようになる。
まず、コントロールパネルから「ネットワーク」を選択すると、スイッチの管理画面が表示されるので、ここで「追加」をクリックする(図5)。
すると作成するスイッチの名前などを設定する画面が表示されるので、適当な名前と説明を入力し、「作成」をクリックする(図6)。
最後に確認メッセージが表示されるので、「作成」をクリックすればスイッチが作成される(図7、8)。
追加されたスイッチはネットワーク画面の左側に一覧表示され、これをクリックすることでその詳細な情報を確認できる(図9)。
なお、仮想スイッチは作成した時点で課金が始まる(1時間あたり10円、1日あたり105円、月額で2,100円)のでこちらにも注意したい。
ハイブリッド接続の構成例
ハイブリッド接続はWebサービスの運用以外の用途でも有用だ。以下では、いくつか考えられるハイブリッド接続の構成例を紹介しておこう。
分散処理のプラットフォームとして利用する
クラウドサービスがよく使われているものとして、Hadoopなどの分散処理フレームワークを利用したデータ処理がある。複数台のサーバーを連動させることで、大規模なデータを効率良く処理する、というものだが、そのためには多くのサーバーを用意する必要がある。だが、処理の内容によっては必要となるリソース量に波があることも多い。そのような場合、クラウドを利用することによって必要なときだけ使用できるリソース量を増やすことができる。
このとき注意が必要なのが、分散処理フレームワークによってデータの管理方法やノードの利用方法が異なる点だ。たとえばHadoopで使われる分散ストレージ機構であるHDFS(Hadoop Distributed File System)では、データを複数のノードに分散して保管する。そのため、データを保存しておくには複数台のノードを常時稼動させておく必要がある。また、データを管理するための管理用ノードについても同じく常時稼動が必要だ。
そこで、常時最低限稼動させておくノードには専用サーバーを使用し、必要に応じてクラウド側でノードを追加する、という運用方法が考えられる(図10)。
HDFSでは、「NameNode」と呼ばれるノードがデータの管理を行い、実際のデータは「DataNode」と呼ばれるノードに分散されて記録される。このとき、データは複数のDataNodeに重複して格納する(レプリケーション)ことで冗長化が行われる仕組みだ。データの複製をいくつ用意するかは設定を行うことで変更できるが、デフォルトでは3つの複製を用意する設定となっている。この場合、最低3台のDataNodeを常時稼動させておく必要がある。
なお、稼働中のDataNodeを停止させる場合、それによってレプリケーション数が設定値を下回る場合があるため、ノードを停止させる前にそのようなデータをほかのノードに待避させる処理が必要となる。データ量に比べDataNode数が少ない場合、この待避処理にそれなりに時間がかかる可能性があるため、大規模な分散処理環境を構築する場合は常時稼動させるDataNodeをある程度増やしておく必要があるだろう。
大容量のストレージを利用するサービスのバックエンドとして利用する
クラウドの弱点として、ストレージのコストパフォーマンスが悪いという点がある。たとえばさくらのクラウドの場合、20GBのストレージであれば追加料金なしで利用できるが、たとえば500GBのストレージを利用する場合、その月額料金は10,500円だ。いっぽう、さくらの専用サーバは最も月額料金の低いエクスプレスシリーズ(月額料金8,800円から)でも1TB×2のストレージが利用でき、また容量を追加した場合も初期費用のみが必要で月額料金は変わらない(フレックスシリーズの場合は初期費用なし、月額6,300円で2TB×2のストレージを追加できる)。
そこで、大容量のストレージを利用するようなサービスの場合、フロントエンドのみをクラウドで運用し、ストレージサーバーには専用サーバーを使用する、といった構成を取ることで、コストを抑えながらも大容量のストレージを利用できる(図11)。
また、メモリについてもさくらの専用サーバではすべて標準で16GBを搭載しており、ストレージと同様に増設も可能だ。クラウドの場合、メモリを増やすとその料金も大きく増加するため、メモリを大きく消費するような処理は専用サーバー上で実行し、それ以外の処理をクラウドで実行する、といった構成も考えられる。
専用サーバーとクラウド、それぞれのメリットを生かした構成を
近年では柔軟な構成や迅速なリソース調整が可能なことから、クラウドの利用を検討している方も多いだろう。しかし、サーバー構成の頻繁な変更が必要なサービスというのはあまり多くない。さくらの専用サーバであれば、コストを抑えつつ、必要に応じてハイブリッド接続を活用し柔軟にリソースを増強できる。
また、クラウドには小規模な構成からスタートし、段階的に構成を大きくしていけるというメリットがあるが、それに応じて常時稼動するサーバーが増えていくことも考えられる。さくらのクラウドであれば、構成が大きくなっていった際にその一部を専用サーバ側に移行させる、といった構成が容易に行える。
さくらの専用サーバおよびさくらのクラウドであれば、このように専用サーバーとクラウドのメリットを生かした構成を実現できる。特にクラウドの導入を検討している方は、一度専用サーバーを組み込んだ構成についても検討してみてはいかがだろうか。