GMOインターネット株式会社
ホーム > GMO最新ネット業界レポート一覧 > GMO最新ネット業界レポート

企業情報

GMO最新ネット業界レポート

第13回 テクノロジー編(後編)
前編では、「GMOとくとくショップ」で利用しているEucalyptusの概要や仕組みなどをレポート。今回は、「GMOとくとくショップ」におけるEucalyptusの構築や運用管理などについて紹介する。
1.Eucalyptusの構築

図3 Eucalyptusの構成イメージ

前編ではEucalyptusの構成について触れましたが、今回は実際にGMOとくとくショップでEucalyptusを導入した構成、注意点について触れていきます。GMOとくとくショップでは現在、Eucalyptus 1.6.1を利用しています。当初は、1.5系を使っていましたが、安定性等の理由から1.6系のバージョンを採用しています。

前回の最後にも記載していますが、「EucalyptusのVM(Virtual Machine)はシャットダウンするとイメージファイルが消える」ということを念頭に置いて、Eucalyptus上で動作させるシステムの特性とあわせる必要があります。例えば、シンプレックス構成になるようなものについては復旧可能性を考えるとEucalyptus上に配置するのは難しくなります。逆に、スケールアウトさせるようなコンポーネントを配置するのには適しています。

そこでGMOとくとくショップでは、Hadoop DataNode、CassandraをEucalyptus上で動作させています。どちらもスケールアウトさせることでパフォーマンスを向上でき、仮にVMが停止したとしてもシステムは継続して動作させることが出来るため、Eucalyptusの特性とマッチしています。またこの構成の場合、Hadoop、Cassandraにデータの保全性を任せることが出来るため、EBSについては利用していません。

また、運用的な側面からHadoop、Cassandraを一つのパッケージとしてまとめて、複数のサーバーに配分することでアプリケーションのセッティングも容易にすることが可能になっています。

2.Eucalyptusの設定

図4 VMのスペック設定

次にEucalyptusの各種設定について説明します。Amazon EC2の場合、作成するインスタンスについて、CPU、メモリ、HDの種類が様々選ぶことが出来ます。EucalyptusでもVMの設定を自由にすることが出来ます。以下はEucalyptusでのVMのスペック設定UI(=User Interface)です。

Eucalyptusでは、m1.smallからc1.xlargeまでスペックを自分で設定することが出来ます。Walrusに登録されているEMIと、VMのスペックを指定してEucalyptus内にVMを立ち上げることが出来ます。

ここで注意が必要なのが、CPUとSWAPです。NCが管理するVMで利用可能なCPU数はeucalyptus.conf内のMAX_CORESで定義されています。各NC内に作られるVMのCPU数はMAX_CORESを超えることが出来ません。これは低いスペックのVM、高いスペックのCPUでも同一にカウントされるため、特に低いスペックのVMを大量に作成するときは、MAX_CORESの値を上げておくことをお勧めします。

また作成されるVMのスワップのサイズについても、eucalyptus.conf内のSWAP_SIZEによって決定されます。VMのスペックの大小に関わらず、VMが利用するスワップ領域は全てSWAP_SIZEによって決定されます。

また他にもWalrus上に作成可能なEBS相当の不発揮用の仮想ディスクのサイズなどについても、管理Web UIから設定して大量のデータを安定的に確保できるように設定を行います。

3.Eucalyptusのネットワーク構成

最後にEucalyptusが管理するネットワークについて説明します。構成とVMのサーバ設定を終えたら、VMにアクセスするためのネットワークについても検討する必要があります。

Eucalyptusのネットワークの構成パターンは全部で4種類あります。

モード ネットワーク分離 Elastic IP Security Group
MANAGED
MANAGED-NOVLAN
SYSTEM
STATIC

大きく2種類に動作が分かれており、MANAGED(-NOVLAN)はフロントエンドネットワーク(NC)とバックエンド側(VM)が分離されてネットワークが作成されます。MANAGEDモードを利用する場合は、CC、NCの物理的に接続しているスイッチがTAG-VLANに対応している必要があります。

MANAGEDモードでのネットワークは例えば、フロントエンドネットワークが192.168.10.0/24だとしたら、バックエンドには10.0.1.0/24のアドレスを割振ります。

そこでNCは新規にVMを作成すると、自身が終端している192.168.10.0/24から払い出されたIPアドレスと、10.0.1.0/24帯からVMに払いだされたIPアドレス間にNATを作成して、フロントエンド側からバックエンド側への疎通を確保します。つまりEucalyptusによって作成されるネットワークへの疎通性はNCが担保することになります。

次にSYSTEMは既にDHCPサーバー等を保持しているネットワークで、VMのIPアドレスは既存システムから割当てられます。また、STATICモードはDHCPが稼動していない既存ネットワーク上で、VMに自由にIPアドレスを割振る場合に利用します。
この場合、複数のMACアドレスとIPアドレスの組をCLCのeucalyptus.confに設定し、CLCはVMが作成される際、そのプールからIPアドレスを払い出します。

Eucalyptusはシステムが置かれている環境において、選択の幅を広げる柔軟な構成を採ることが出来ます。GMOとくとくショップでは、環境としてSTATICモードの選択肢を採用しています。STATICでの設定は以下のように行います。

    VNET_MODE="STATIC"
    VNET_SUBNET="192.168.1.0"
    VNET_NETMASK="255.255.255.0"
    VNET_BROADCAST="192.168.1.255"
    VNET_ROUTER="192.168.1.1"
    VNET_DNS="192.168.1.1"
    VNET_MACMAP="AA:DD:11:CE:FF:E0=192.168.1.10 AA:DD:11:CE:FF:E1=192.168.1.11 AA:DD:11:CE:FF:E2=192.168.12"

以上の設定を行いCLCよりVM作成を行うと、作成されたインスタンスには上記VNET_MACMAPからIPアドレスが払い出されます。

EucalyptusにはHA構成の整備や、Web UIの充実・改善といった、これから解決していくべき課題がありますが、今まで煩雑だった仮想環境の整備を一律で管理しクラウドインフラサービスとして提供していく基盤の一つとして、これからも注目すべき技術の一つであると考えます。

最後に…次世代システム研究室ではクラウドを作りたいエンジニアを募集しています。ご興味がある方はこちらからエントリーをお願いします。

2010.4.28


*本文中に記載されている会社名および商品名・サービス名は、各社の商標 または登録商標です。

 

Copyright © 2013 GMO Internet, Inc. All Rights Reserved.