OSSクラウド基盤の大本命「OpenStack」 導入の基礎から「本番環境」を

Lenovo Enterprise Solutions Ltd.
®
®
インテル Xeon プロセッサー搭載
OSSクラウド基盤の大本命「OpenStack」
─ 導入の基礎から
「本番環境」
を視野に入れた
運用のコツまでを理解する
企業が IT基盤を構築する場合、今や「仮想化」や「クラウド」
といった
め、高度な統合管理フレームワーク
技術を検討するのが当たり前となっており、その ITリソースの調達にあ
を備えた、オープンスタンダードに
たっては、用途やライフサイクルを考慮し、自社ですべてを所有する
基づいた IT基盤を指す。レッドハッ
「オンプレミス」
と、必要なリソースを必要な期間だけ利用できる
「クラウ
トでは、オープンハイブリッドクラウ
ド」
を組み合わせることが、常識となりつつある。
ドを実現するための複数のソリュー
ハードウェアの性能向上や仮想化技術の進歩に伴い、従来、クラウド
ション を 提 供して い る が 、
ベンダーが「パブリッククラウド」
として提供していた IaaSや PaaSのよう
OpenStackは、その重要なコンポー
なサービスを自社内でユーザーに対して提供する
「プライベートクラウ
ネントの1つであるという。
ド」を構築するケースも増えている。こうした環境を実現するための
OpenStackは、OSSプロジェクトと
オープンソースソフトウェア
(OSS)は、さまざまなプロジェクトを通じて
して開発が行われているクラウド基
開発が進められている。
盤ソフトウェアである。その特長とし
クラウド基盤を実現するOSSとして、現在、活発な開発とコミュニティ
ては「モジュール型のアーキテクチャ」
「スケールアウトが容易な設計」
レッドハット株式会社 OpenStack Tiger
Team 輿水万友美氏
運 営 が 行わ れているプロジェクトの 1 つ が「O p e n S t a c k」である。 「一連のコアサービスによって構成される」
といった点が挙げられるが、
OpenStackは、2010年にスタートした、クラウド基盤開発を目的とした
モジュールが個別に開発されているため、スピーディに作業が進むも
プロジェクトで、現在では200社を超えるITベンダー、ネットサービス企
のの、それぞれのモジュールが連携をうまく取りながら動くようになる
業がコミュニティに参加しており、ユーザー数も急速に拡大している。
までに手間がかかる傾向があるとする。
この「OpenStack」の導入や評価を検討しているユーザーに向けて、
レッドハットでは、コミュニティにおける最新の成果を元に、Red Hat
OpenStackの基礎から、導入の初歩、さらに本番環境を視野に入れた
Enterprise Linux(RHEL)向けの最適化と統合を行ったコードを「Red
HA(高可用性)構成構築のコツを幅広く情報提供することを目的にレノ
Hat Enterprise Linux OpenStack Platform(RHEL OSP)
」
という名称で企
ボ・エンタープライズ・ソリューションズ株式会社(LES)が中心となった
業ユーザーに向けて提供している
(図1)。
セミナーが開催された
どうしても稼働までの工数が多くなりがちな OpenStackだが、RHEL
OSPでは、それらを統合パッケージとして導入できるほか、OS、仮想化環
まずはOpenStackの
「基本」を知ろう
境、クラウドサービスについて一元的なサポートが提供されるため、企
Red Hat Enterprise Linuxに対する最適化と統合
「 O p e n S t a c k の 現 状と概 要 」に つ いて、レッド ハット株 式 会 社
・ 各種HWベンダーからベストプライスで調達可能
・ OS、仮想化環境、
クラウドサービスを一元サポート
・ OpenStackに一番貢献しているRed Hatの安心感
OpenStack Tiger Teamの輿水万友美氏は、
「近年、一般的なデータセ
ンター上の自社サーバに加え、プライベート、パブリッククラウドなどが
合わせて活用されることで、運用管理のスキームが複雑化している」
と
HORIZON
指摘。そこで稼働する仮想マシン上のワークロードも、
「ステートフルか
DASHBOARD
らステートレスへ」
「ライフサイクルは年単位から時間〜月単位へ」
「ス
NOVA
GLANCE
SWIFT NEUTRON CINDER
COMPLITE
IMAGE
SERVICE
OBJECT
STORE
01010001
01010000
00110010
01001010
ケールアップからスケールアウトへ」
といった形で変化が起きていると
し、こうした環境変化に対応するために、企業は自社の IT基盤を「オー
プンハイブリッドクラウド」へと移行していくべきだとした。
オープンハイブリッドクラウドとは、多様な技術やワークロードの混
NET
WORKING
VOLUME
SERVICE
KEYSTONE
TROVE
HEAT
DATABASE ORCHSTRA TEKEMETRY
SERVICE
TION
RED HAT ENTERPRISE LINUX
在で増大する運用管理コストや、複雑化するアプリケーションライフサ
イクル、インフラのサイロ化やミスマッチといった課題を解決するた
図1 Red Hat Enterprise Linux OpenStack Platform 5.0の概要
1
CEILOMETER
IDENTITY
SERVICE
OSSクラウド基盤の大本命「OpenStack」
─ 導入の基礎から「本番環境」を視野に入れた運用のコツまでを理解する
Lenovo Enterprise Solutions Ltd.
®
ベースラインの
バグ修正の採用
「 P a c k S t a c k 」を 。評 価 や 実 運 用 の た め の 複 雑 な 展 開 で あ れ ば
Icehouse.2
2014.1.2
Icehouse.1
2014.1.1
Icehouse.0
2014.1.0
Ha
va
na
Havana.0
2013.2.0
Gr
izz
ly安
Havana.1
2013.2.1
定
板
ブ
ラ
ン
チ
定
版
ブ
ラ
ン
チ
Fo
lso
m安
Grizzly.0
2013.1.0
Havana.2
2013.2.2
「Foreman」や「OpenStack Foreman Installer」を利用して、より効率的
安
定
板
ブ
ラ
ン
チ
Grizzly.2
2013.1.2
Grizzly.1
2013.1.1
®
インテル Xeon プロセッサー搭載
に作業を進められる。
RHEL OSPにはウェブ UIベースの「OpenStack Foreman Installer」が
Juno.0
付属する。これは、Foremanに、RHEL上の OpenStack展開に特化した
厳選された
バックボード
形での改良を行ったもので、OpenStackモジュールのインストールとプ
ロビジョニングツールの構築を、簡易に行えるものとなっている。物理
マージ
システムの自動検出、パラメータ指定のほか、高可用(HA)構成のリ
RHEL OSP 3.0(Grizzly)
ファレンス実装といった独自の機能を備えている。実行にあたっては、
RHEL OSP 4.0(Havana)
RHEL 6で動作する Live CDから起動が可能だが、レッドハットでは、
RHEL OSP 5.0(Icehouse)
Live CDの内容をインストール用に構築した RHEL 6のホスト上に展開し
黒 - アップストリームリリースのレーベル
(RDO)
青 - Red Hatコミュニティでディストリビューションリリース
赤 - Red Hat Enterprise Linux OpenStack Platformリリース
(RHEL OSP)
て、そこから実行することを推奨している。
OpenStack Foreman Installerでは、OpenStackの展開にあたって
図2 RHEL OpenStack PlatformとRDOのこれまでのロードマップ
「Non-HA、Nova network」
「Non-HA、Neutron」
「HA、Nova network」
業におけるOpenStackの導入、運用にかかる手間を大幅に軽減できる。
「HA、Newtron」の 4つのトポロジをサポートするが、HA構成について
OpenStackのパッケージとしては「RDO」
と呼ばれるコミュニティ版も
は現時点で制限があり、典型的な「3ノード」上ですべての HAサービス
存在する。RDOは、RPM形式でパッケージ化された、Red Hat系 Linux
を稼働させる。また、3つのノードそれぞれに、必要となる OpenStack
上で動作する OpenStackディストリビューションだ。ただし、RDOはあ
のすべてのコントローラをインストールしておく構成を、レッドハットで
くまでも「コミュニティ版」であり、レッドハットによる各種の認定やサ
は推奨している。
ポートは提供されていない。RHEL OSPは、リリースにあたってRHELへ
インストーラを起動したら、後はGUIで指示される順序に従って
「デプ
の最適化や統合、検証が行われ、レッドハットからの認定、
「3 年間」の
ロイのレイアウト」
「インストールするサービスの選択」
「サービスの設
ライフスタイルサポートなどがある点が、RDOとの大きな違いとなる。
定」に関する情報を入力していくと導入がスタートする。物理ホストの
こうした関係から、学習や評価用途で利用したい場合には「RDO」、本
検出、ホストグループの作成、各コントローラのデプロイは自動的に進
番環境を視野に入れて継続的に利用する場合は「RHEL OSP」
といった
行していき、その経過についてもUI上で確認が可能だ(画面1、2)
。
使い分けも可能だろう
(図2)。
RHEL OSPでは、Foreman Installerのほかに、PackStackでのインス
さらに輿水氏は、
「企業が OpenStackを採用する場合に検討すべき
トールもサポートしている。輿水氏は、PackStackについて、
「学習や
項目」
として、主に「自社ワークロードの特性、およびクラウド適正の把
握」
「現在のインフラストラクチャに対する設備投資と運用コストの比
較。そのコストを削減できる可能性の検討」
「クラウド基盤への投資利
益率の基準となる数値」の3点を挙げている。
「企業のワークロードにはクラウドに向くものも、向かないものが存
在している。それらを把握した上で、現在の環境と比べてコストを削減
できる可能性がどの程度あるか。新たな IT基盤構築への投資によって
生まれた利益をどのような数値で判断するかといったことを見きわめ
て、OpenStackの導入を進めてほしい」
(輿水氏)
目的によって使い分けたい
OpenStackの「インストール」
画面1 OpenStack Foreman InstallerのウェブUI
実際に OpenStackを展開するにあたっては、複数のインストール方
式が用意されている。最も基本的なコマンドラインによる手動インス
トールから、同じくコマンドラインツールの「PackStack」を利用するも
の、ウェブ UIを利用したインストールが行える
「Foreman」、Foremanに
規範的なガイダンスを付加した「OpenStack Foreman Installer」などが
選択できる。
輿水氏は、これらのインストール方式について
「用途によって、ふさわ
しいものを選択して利用すべき」
とする。OpenStackの学習や、非常に
単純なデプロイであれば、コマンドラインベースの手動インストールや
画面2 デプロイ設定
2
OSSクラウド基盤の大本命「OpenStack」
─ 導入の基礎から「本番環境」を視野に入れた運用のコツまでを理解する
Lenovo Enterprise Solutions Ltd.
®
®
インテル Xeon プロセッサー搭載
POF用途でインストールしてみたいというのであれば、PackStackを使
られる。
い、複雑なインストールをより洗練された形で行いたければ Foreman
レッドハットでは、OpenStackを活用したいと考えている企業ユー
Installerを使うなど、用途によって使い分けてほしい」
と話した。
ザーに対して「RHEL OSPコンサルティングサービス」を提供している。
このサービスでは、RHEL OSPのインストール、設定、検証(PoC:Proof
「OpenStack」を
真に活用するためには
of Concept)などの相談を受け付けるほか、継続的な運用および管理
のガイダンスも提供する。OpenStackの利用用途がある程度見えてい
る場合には、その要件に応じたコンポーネントの選択方法などについ
OpenStackでは、柔軟なクラウド基盤を大規模に構築するためのフ
てもアドバイスできるという。輿水氏は「半年ほどの単位で目まぐるしく
レームワークを提供している。このフレームワークは、クラウド基盤上
状況が変化し、利用にあたって、さまざまなポイントについて手間をか
に存在する、コンピューティングリソース、ストレージ、ネットワークの
けて検討せざるを得ないというのが OpenStackの世界。業務の中で
管理を容易に行うためのサービスを提供するが、各サービスは、それ
OpenStackを活用していきたいと考えているのであれば、ぜひレッド
ぞれの機能を持った複数のコンポーネントから構成されている。現在
ハットの提供するコンサルティングサービスの利用を検討して欲しい」
の主なコンポーネントは以下のものである
(図3)。
と述べた。
なお、レッドハットから、OpenStackを入手するにあたっては 3つの
・ダッシュボード(Horizon)
方法がある。RHEL OSPについては、90日の無償評価版が Webサイト
・ID(Keystone)
からダウンロードできる。また、サポート付きの製品版である「RHEL
・コンピュート
(Nova)
O S P」に加え、
「R e d H a t C l o u d I n f r a s t r u c t u r e」の 一 部としても
・イメージストレージ(Glance)
OpenStackが含まれている。
・ブロック/ボリュームストレージ(Cinder)
LESC内に構築された
OpenStackを実際に操作してみよう
・オブジェクトストレージ(Swift)
・Red Hat Stoage(OpenStack向けのストレージバックエンド)
・Ceph(OpenStack向けのストレージバックエンド)
・ネットワーク
(Neutron)
このセミナーでは、
「RHEL OSP 5」を利用した「ハンズオン」も実施さ
・テレメトリ
(Ceilometer)
れた。
・オーケストレーション(Heat)
ハンズオン環境は、会場であるレノボ・エンタープライズ・ソリュー
これらのコンポーネント以外にも、OpenStackでは、さまざまなプロ
リューションズ・センター(LESC)」の設備を活用する形で実施された。
ジェクトが活動を行っており、適宜、統合やインキュベートが行われて
構成は以下のようになっている。ハードウェアへの RHEL OSPのインス
いる。
トール および設定にあたっては、インテル によって提供されている
ションズ(LES)の秋葉原本社が有する「レノボ・エンタープライズ・ソ
コミュニティに参加している開発者の技術的関心や、ベンダーの意向
「Step-by-Step Configuration Guide: Trusted Compute Pools in Red
によって、さまざまなプロジェクトが動き、そこから成果物が生まれてく
Hat Enterprise Linux OpenStack Platform」
というホワイトペーパーを
るのが「オープンソース」の醍醐味でもあるわけだが、実際にその中か
参照したという
(図4)。
ら、どの技術が今後の標準となっていくのかを見きわめ、企業として、
ハンズオンで受講者は、実際にネットワークを通じて OpenStackの
どれを使うべきなのかを判断するのには、かなりの経験とスキルが求め
ダッシュボード
(管理コンソール)にアクセスし、その操作感などを体験。
AMGPメッセージバス
ダッシュボード
ID
コンピュート
ストレージ
ネットワーク
Red Hat Enterprise Linux
OpenStack Platfor 5(IceHouse)
OpenStackは
弾力的なクラウドインフラストラクチャを
大規模に構築するための
フレームワークを提供
Lenovo System x3550 M5
CPU
以下の管理を容易化
・ コンピュート
・ ストレージ
・ ネットワーク
オーケストレーション
TXTクライアント
コントローラーノード
コンピュートノード
Glance
Nova
Intel Xeon E5-2620 v3 2.4GHz 6core
Cinder
Memory 96GB
Security Intel TXT機能対応、TPM(1.2/2.0)搭載
OS
Red Hat Enterprise Linux 6.6
IBM Storwize V3700
テレメトリ
TXT認証サーバ
エラスティックなアプリケーションのための
エラステックエラスティックな
インフラストラクチャを提供
図3 OpenStackの概要と、それによる解決できる問題
DISK
300GB SAS 15K x11(10D+1H)
備考
iSCSI/Cinder Driver/1Gb イーサネット
Neutron
Horizon
Keystone
VM VM VM VM
Swift
Neutron
図4 RHEL OSP 5を用いたハンズオンの際のハードウェア構成
3
VM VM VM VM
Cinder Driver
OSSクラウド基盤の大本命「OpenStack」
─ 導入の基礎から「本番環境」を視野に入れた運用のコツまでを理解する
Lenovo Enterprise Solutions Ltd.
®
®
インテル Xeon プロセッサー搭載
構築するとこんな感じに!!
構成を実現している四つのOSSの関係を
紐解いていきます!!
コントローラーA
Cinder
Maria
DB
Rabbit
MQ
HAProxy HAProxy HAProxy
VIP
Nova
Novameta
Novavncproxy
HAProxy HAProxy HAProxy
VIP
Keyston
Glance
コントローラーB
Cinder
Maria
DB
Rabbit
MQ
HAProxy HAProxy HAProxy
VIP
Nova
Novameta
Novavncproxy
HAProxy HAProxy HAProxy
VIP
Keyston
Glance
コントローラーC
Cinder
Maria
DB
Rabbit
MQ
HAProxy HAProxy HAProxy
VIP
Nova
Novameta
Novavncproxy
HAProxy HAProxy HAProxy
VIP
Keyston
Glance
HAProxy HAProxy
NeutronVIP
Agents
Horizon Neutron
HAProxy HAProxy
NeutronVIP
Agents
Horizon Neutron
HAProxy HAProxy
HAProxy HAProxy
VIP
HAProxy HAProxy
HAProxy HAProxy
VIP
NeutronAgents
Horizon Neutron
画面3 RHEL OSP 5.0のインスタンスの概要
図5 コントローラHA構築内容
ダッシュボードは、操作したい内容に応じてタブで機能が分けられてお
り、
「RHEL OSP 5」のインストーラを利用した場合に構築されるHA構成
り、必要な作業を分かりやすく行えるようになっている。各々のダッシュ
の内容について説明がなされた。
ボードから
「セキュリティグループの作成」
「セキュリティルールの追加」
RHEL OSP 5のインストーラでは、GUIの設定画面で「HA構成」を選択
「自分専用の暗号鍵の作成」
「インスタンスの起動」
「IPアドレスの割り当て」
することで、自動的に HA構成でのインストールが行われる。なおこの
「スクリプトでメタデータを記述して、イメージから、httpdが動作する別
際、ネットワークノードの HA構成はコントローラノード内に構築され
のインスタンスを作成し、起動」
といった操作を行うことで、手軽に RHEL
る。実際に構築を行った場合のコンポーネント配置は、図のようになる
OSPのインストールおよび設定ができることを体験していた(画面3)
。
(図5)。
RHEL OSP 5のコントローラHA構成には、4つのOSSが利用される。
本番環境への導入を目指すなら
知っておきたい運用の「コツ」
・Pacemaker/Corosync(クラスタリングソフトウェア)
・HAProxy(負荷分散ソフトウェア)
ユ ニアデックス 株 式 会 社 未 来
・RabbitMQ HA(RabbitMQ高可用性機能)
サービス研究所の石川智章氏は、
・MariaDB Galera Cluster(Maria DB高可用性機能)
OpenStackに関する基礎的な知識
はあるものの「次のステップをどう
ユニアデックス株式会社 未来サービス研究所
の石川智章氏
「 P a c e m a k e r / C o r o s y n c 」は 、必 ず 組 み 合 わ せ で 動 作 する。
進めればいいか」
「本番環境での利
Pacemakerはリソースに対するHAクラスタリングを実現するソフトウェ
用に問題がないか」
と不安に感じて
アであり、Corosyncはクラスタ制御を行う。これらによって、システム
いるユーザーに対し、主に本番環境
の状態を監視し、障害検知時には、自動的に別のリソースへと切り替え
で重要となるOpenStackコントロー
る
「フェイルオーバー」が実現される。
ラノードの HA(高可用性)クラスタ
Pacemakerでは、監視対象となるプロセスを「リソース」
と呼ぶが、こ
構成について、HA環境を実現する
のリソースについて
「Primitive」
「Clone」
「Group」
といった単位で制御し
OSSの詳細や、HA構成時の各コン
ている。Primitiveでは、フェイルオーバーの対象を「アクティブ/スタン
トローラの動作について詳細な解説を行った。
バイ」の状態で稼働させ、Cloneでは複数のノードで「アクティブ/アク
本番環境で稼働するシステムにおいては、不慮のサービス停止によ
ティブ」の状態で稼働させる。また Primitiveを「Group」
として指定する
るユーザーの不利益やデータの削除、破損を避けるために「HA(High
ことで 複 数 のリソ ー ス から な るグ ル ー プ を 同 時 に 制 御 で きる 。
Availability、高可用性)構成」をとることが多い。OpenStackにおいて
OpenStackのコントローラHAにおいては、次ページの図のように各プ
も、各ディストリビューターがHA構成の提案を行っている。
ロセスが制御される
(図6、7)。
一般的に HAクラスタはクラスタリングソフトウェアを利用して構築す
結果的に、3つのコントローラノードにおいて
「Virtual IP(VIP)は、API
る。現状、HA構成向けの OpenStack標準コンポーネントはないため、
エンド ポ イントを 持 つ サ ー ビスプ ロ セス や 、ポ ート番 号 を 持 つ
複数の OSSミドルウェアを組み合わせて HAクラスタを実現することに
RabbitMQサーバ、MariaDBに割り振られアクティブ/スタンバイのリ
なる。今回は、特にコントローラノードとネットワークノードに範囲を絞
ソースとして制御」
「コントローラノード HAでは、OpenStack関連のプ
4
OSSクラウド基盤の大本命「OpenStack」
─ 導入の基礎から「本番環境」を視野に入れた運用のコツまでを理解する
Lenovo Enterprise Solutions Ltd.
®
®
インテル Xeon プロセッサー搭載
Primitive
Active
VirtualIPを監視対象として定義
●「Active-Standby」
稼動
●
うソフトウェアとなる。OpenStackのコントローラHAでは、
「ユーザーか
Standby
VIP
らのダッシュボ ード( H o r i z o n )へ のアクセス」
「 H o r i z o n から I D
VIP
(Keystone)へのアクセス」
「Keystoneからコンピュート
(Nova)へのアク
セス」について、それぞれに負荷分散(標準ではラウンドロビン方式)を
Clone
コントローラーノードの
Novaなど各プロセスを監視対象
としてClone定義
● 全ノードで
「Active-Active」稼動
●
Active
Nova
Group「neutron-agents」グループ
行う。そのため、HAProxyを利用した場合、ユーザーが実行した処理は
Active
そのつど、3つのノード間を渡り歩く形になる
(図9)。
Nova
「RabbitMQ HA」は、コンポーネントのプロセス間のメッセージ交換
に利用されるミドルウェア
「RabbitMQ」の高可用性機能である。ポイン
neutron-agents
ネットワークノードのプロセスを
監視対象としてGroup定義
● Clone定義はせず、
グループ化した
プロセスは
「Active-Standby」稼動
●
トは、コントローラノードが複数の場合でも、問題なくメッセージ交換
L3-Agent
dhcp-Agent
ができるよう
「ミラーキュー」を利用したメッセージの同期が行われる点
metadataagent
open-vSwitchagent
だ。この「ミラーキュー」間での同期が行われている状態は「sync」
と呼
ばれ、稼働時には常にキューが「sync」の状態になっていることが重要
となる
(図10)。
図6 コントローラHAの各プロセスをリソースとして制御が可能
「MariaDB Galera Cluster」は、OpenStackで構成情報管理データベー
Cloneとして定義されたプロセス
keystone
スとして利用されている「MariaDB」の高可用性機能である。Galera
novanovncproxy
Clusterを構成する MariaDB は、すべてアクティブの状態で稼働し、
novaconsoleauth
novascheduler
neutronserver
nova-api
novaconductor
httpd
●
cinderapi
glanceregistry
cinderscheduler
glance-api
コントローラーA
rabbitmqserver
haproxy
Cinder
neutronovs-cleanup
neutronnetns-cleanup
memcached
heat-api-cfn
Maria
DB
コントローラーB
Rabbit
MQ
heat-api
Nova
Novameta
Keyston
図7 コントローラHAの各プロセスをリソースとして制御が可能
ロセスはアクティブ/アクティブのリソースとして制御」
「ネットワーク
ノード HAでは、“neutron-agents”としてアクティブ/スタンバイのリ
ソースとして制御」
される形になる
(図8)。
Novavncproxy
コントローラーA
Cinder
Maria
DB
Rabbit
MQ
VIP
Nova
Novameta
Cinder
Novavncproxy
Glance
VIP
Rabbit
MQ
コントローラーC
Cinder
Maria
DB
VIP
Nova
VIP
Keyston
Maria
DB
Keyston
NeutronAgents
Horizon Neutron
VIP
Novavncproxy
Nova
VIP
VIP
Glance
Keyston
VIP
Horizon Neutron
Novameta
Keyston
Glance
Rabbit
MQ
HAProxy HAProxy HAProxy
VIP
Nova
Novameta
Novavncproxy
HAProxy HAProxy HAProxy
VIP
Keyston
Glance
HAProxy HAProxy
HAProxy HAProxy
VIP
HAProxy HAProxy
HAProxy HAProxy
VIP
NeutronAgents
Horizon Neutron
ユーザがHorizonから仮想マシンを操作する場合
novaからnova-computeへメッセージの配信
APIリクエスト
を受けたNovaが
Exchangeへ
Novavncproxy
Publisher
nova
nova
nova
コントローラーC
コントローラーB
① コントローラーA
①メッセージ送付
②配信ルールによって配送
③routing KeyによってQueueを決定
④mirror queueによりQueueをコピー
⑤computeに配信されたメッセージを
「nova-compute」
が受信
consumerの
Glance
NeutronAgents
HAProxy HAProxy HAProxy
VIP
Maria
DB
HAProxy HAProxy
NeutronVIP
Agents
Horizon Neutron
●
Rabbit
MQ
VIP
Novameta
Novavncproxy
Cinder
図9 OpenStackプロセス間の処理の流れイメージ
ネットワーク
ノード機能
コントローラーB
Novameta
Nova
Glance
●
プロセス・VIPのリソース配置
Rabbit
MQ
HAProxy HAProxy
NeutronVIP
Agents
Horizon Neutron
「HAProxy」は、複数ノード間でのロードバランシング(負荷分散)
を行
●
コントローラーC
HAProxy HAProxy HAProxy
VIP
HAProxy HAProxy HAProxy
VIP
heat-api-cloudwatch
Maria
DB
Cinder
HAProxy HAProxy HAProxy
VIP
mariadb
ネットワーク
ノード機能
複数のコントローラーを渡り歩く!!
NeutronAgents
Horizon Neutron
VIP
②
Exchange
Nova
Type=topic
routing key(topic)
Queue
r
schedule
scheduler
conductor
conductor
consoleauth
consoleauth
compute
compute
③
consumer
コンピュート
注)
プロセスは抜き出して記述しています。
図8 コントローラHAの構築内容
図10 全コントローラのキューの同期
5
④
⑤
nova-compute
OSSクラウド基盤の大本命「OpenStack」
─ 導入の基礎から「本番環境」を視野に入れた運用のコツまでを理解する
Lenovo Enterprise Solutions Ltd.
●
®
分散配置する
「DVR(Distributed Virtual Router)」機能がテクニカルプ
wsrepで
GaleraClusterによるコミット同期
①UserPCより書き込み要求
②HAProxyにより分散
③ホストAが選択
④MariaDB1がwsrepにより
ホストBおよびホストCの
MariaDBにコミットの同期
⑤MariaDB1のコミット完了
⑥UserPCへコミット通知
®
インテル Xeon プロセッサー搭載
レビューではあるが利用可能になった。
コミットの同期
GaleraCluster
また、コンピュートサービス
(Nova)におけるスケジュールされたホス
ホストA
④
ホストB
⑤
MariaDB2
③MariaDB2
MariaDB2
ビスインスタンスにおける複数のプロバイダサポートなど、多くの機能
webServer
webServer
webServer
が追加されている。現状、リリースされたばかりでドキュメントの日本
②
トへの処理待避機能、インスタンスの仮想 CPUトポロジの制御機能、ブ
ホストC
ロックストレージのボリューム複製機能、単一のアイデンティティサー
語化も行われていない状況だが、順次、日本語化を行っていくという。
Load
Balancing
HAProxy
続けて
「運用保守を考慮した設計構築のポイント」
として、
「サイジン
グ」に関する情報も紹介。OpenStack環境の構築にあたり
「コントローラ
①
やコンピュートノードの数をどのように決定したらいいか」
というのは、
UserPC
ユーザーからも
「よく質問される」テーマだという。OpenStackコミュニ
図11 MariaDB Galera Cluster動作イメージ
ティのドキュメントでも
「スケーリング」
という章の中で、設計時の参考
になる情報が公開されている。
wsrep API(write set replication API)を通じて同期される
(図11)。
さらにクラウドのスケーリングについて考える際、最初にイメージす
コントローラ H A で は、情 報 構 成 要 素 の 更 新 が 発 生した 場 合 に
べきは「クラウドのコア数」であると輿水氏は指摘。クラウドのコア数が
MariaDBに書き込みが発生し、その内容が Galera Clusterによって全コ
想定できれば、実行される仮想マシンの数は「(オーバーコミット率×コ
ントローラノードの MariaDBに同期される。注視点としては、MariaDB
ア数)/インスタンスごとの仮想コア数」の式によって算出される。合わ
の追加時に rsyncが稼働している場合は MariaDBへの書き込みができ
せて、ストレージ容量についても
「(フレーバーごとのディスクサイズ×
ない点となる。
インスタンス数)+スナップショット+永続的なディスク容量」によって
OpenStackのHA構成時には、これら4種のOSSの働きによって、ひと
計算が可能だ。例えば、200 物理コアを持つクラウドの場合、ほとんど
つの処理が 3つのノードを渡り歩く可能性がある点が注意すべきポイン
のインスタンスのサイズは「m1.medium」
(仮想コア数 2、ストレージ
トだ。また、Virual IPの後方で HAProxyが稼働するため、実際のプロセ
50GB)で、デフォルトの CPUオーバーコミット率は 16:1だと仮定すれ
スがどのホストで稼働しているかが非常に分かりづらくなる。合わせ
ば、上記の式から作成できるインスタンスは「約 1600VM」、ストレージ
て、各プロセスのログファイルは、プロセスごとに各コントローラに分
容量は「80TB程度」が必要になることが分かる。
散して記録される点に注意が必要だ。さらに「RabbitMQ HA」および
次に考えるべきは「APIやデータベース/MQサーバの負荷」である。
「MariaDB Galera Cluster」については、絶えずコントローラ間で同期を
クラウドの利用形態は、ユーザーのニーズによってさまざまだ。例え
行っているという点も理解しておきたい。
ば、VMの作成のように大きな負荷が発生する処理が「数カ月に一度」程
石川氏は、これらの状況をベースとした OpenStack HA構成運用の勘
度しか発生しないのか、定常的に発生するのかによって、コントローラ
所として、
「どのコントローラでどのプロセスが稼働しているかの把握」
にかかる累積の負荷量は大きく変わってくる。
「ログの集約によるプロセス間の流れの一元管理(中規模以上の構成の
「一般的に、VMの平均寿命が長いということは、クラウドコントロー
場合は、運用監視ソフトウェアの併用も検討)」
「障害時および復旧後の
ラの負荷が軽いことを意味する。そのため、スケーリングにあたって
RabbitMQ、MariaDBの同期状態の確認」の3点を指摘した。
は、そのクラウド上で稼働するVMの平均的な寿命も考慮する必要があ
「OpenStackのコントローラ HAは、既存のオープンソース技術を組
る。もし、VMの平均寿命が短く、定常的にインスタンスが生成されるこ
み合わせて実現されている。実際に利用するあたっては、その技術がど
とがわかっているのであれば、本当に標準的な 3ノードの構成で大丈夫
のような構成で実現されているか把握しておくことが重要だ。このセッ
かを、慎重に検討する必要が出てくる」
(輿水氏)
ションでコントローラHAの構成、稼働イメージが少しでもイメージして
また、意外な盲点となるのが「ダッシュボード(Horizon)」の利用形態
もらえるようになれば幸いである」
(石川氏)
だという。一部の管理者だけでなく、一般のユーザーに対して広くダッ
シュボードを利用させる使い方をした場合、大きな負荷が発生し、パ
「RHEL OSP」最新情報と
「サイジング」の勘所
フォーマンスが悪化する可能性がある。
「インスタンス一覧の取得」処
理を行うと、ダッシュボードは多量の APIを通じて膨大な量の情報を収
集するほか、そのタブを開いたままにしておくと30秒ごとに情報がリフ
またレッドハットは、米国で2月9日にOpenStack“Juno”をベースとし
レッシュされ、そのつど負荷がかかるといったことも考慮しておくべきだ
た「RHEL OSP 6」をリリースしている。
という。
RHEL OSP 6は RHEL 7上に構築されるOpenStack Platformの最新版
そのほか、OpenStackにおいて、システム全体のパフォーマンスに
だ。新バージョンではまず、ネットワーク
(Neutron)に関する機能が強
影 響 を 与えるコン ポ ー ネントとして、輿 水 氏 は「 M e s s a g e B u s
化されている。OpenStack Networkingで作成したネットワークに対す
(RubbitMQ)」
「Database(MariaDB)」を挙げた。前出の石川氏のセッ
るIPv6サポートが行われたほか、仮想ルータをコンピュートノード上に
ションでも説明があったように、これらのコンポーネントでは、プロセ
6
OSSクラウド基盤の大本命「OpenStack」
─ 導入の基礎から「本番環境」を視野に入れた運用のコツまでを理解する
Lenovo Enterprise Solutions Ltd.
®
®
インテル Xeon プロセッサー搭載
ス間の通信や構成情報の更新に伴って負荷が発生する。その性質上、
やコンサルテーションを強力に支援
これらのコンポーネントでの処理が滞ってしまうと、その他の処理が実
している。
行できない状態になるため、全体のパフォーマンスが大きく低下してし
L E S ソリューションテクニカル
まう。性能上の問題を検討するにあたっては、これらのコンポーネント
セールスの坂巻宏亮氏は、LESとユ
の処理負荷についても考慮に入れておくべきだとした。
ニアデックスと共 同で 策 定した、
加えて、より実践的なスケールの検討にあたっては、事前の「ベンチ
OpenStack環境構築のための「推
マーク」などに基づいた PoCが重要だとする。レッドハットでは 2014年
奨 構 成 」に つ い て 、「 一 口 に
6月に OpenStackのインテグレーターとして実績を有する
「eNovance」 『OpenStackを動かしたい』
という
を買収。eNovanceが持つ導入ノウハウを取得した。eNovanceは本番
ニーズがあったとしても、それに必
環境に OpenStackを適用する際のベンチマーク方法の標準化に取り組
要なシステム構成には『ステップ』
んできたほか、デプロイ対象の構成情報を取得してロールベースでコ
がある」
と語る
(図12)。
ンポーネントを展開するデプロイツール「eDeploy」の開発も行ってい
LES ソリューションテクニカルセールスの坂巻
宏亮氏
「個人的な勉強」
「複数台でのテスト」
「複数台で本番を想定した環境」
る。eDeployに含まれる
「Automatic Health Check」ツールを利用する
「パイロットでの使用」
「本番環境での運用」
とステップを進む中で、3ス
と、詳細な構成情報をベースとした、より実稼働環境に即したベンチ
テップ目の「本番環境を意識」
し始めた段階から、
「System x」の 4 台構
マークを行えるという。なお、現時点で、レッドハットでは「eDeploy」に
成によるシステムを勧めたいとする。ユニアデックスと共同で検証を
対するサポートは行っていないが、
「スケールテストプラン」などを通じ
行ったこの構成では、4台のSystem xサーバにOSとして
「RHEL 6.5 x86-
た事前検証のための情報を提供しているという。こうしたツールやサー
64」
をインストール。RHEL OSPで提供されるOpenStackコンポーネント
ビスを使って、本番稼働に耐えるサイジングがどの程度のものか、どの
を導入する。4 台のうち 1 台がコントローラノード、1 台がネットワーク
程度のパフォーマンスが出るのかを事前にチェックしておくことが有効
ノード、残り2台がコンピュートノードの構成となる
(図13)
。
だとした。
また「運用管理」を視野に入れた、構築時のチェックポイントとして、
導入のステップ
「ログ」の扱いについて考えておいたほうがいいとアドバイスする。
OpenStackを
OpenStack のコンポーネントでは、デフォルトでロギングが無効化
ポーネントに応じた設定変更の手順を踏む必要がある。ログレベルを
変更するためには、一連の関連サービスをまとめて再起動する必要が
あるため「運用にあたって、どのコンポーネントでどのレベルのログを
取得するかは、構築時に考慮しておくべきだ」
とした。さらに、石川氏の
セッションでも指摘されたように、OpenStackでは、さまざまなコン
ポーネントのログが各所に分散して記録される。HA構成を取った場合
は、さらに目視によるログの監視は難しくなる。輿水氏は、OpenStack
構成は?
とりあえず
使ってみる
PCで
RDO+CentOS
複数台で
テストしてみたい
複数台構成で
作ってみる
KVMや
VMware上で
複数台で本番を
想定した環境を
本番環境も
想定し、
汎用性
のある環境
4台構成
OpenStackを
パイロットで
使うことが決定!
クラスター構成も
想定し、
汎用性
のある環境
4-5台の
クラスター構成
個人的に
勉強したい
(false)されているものが多く、有効にするためには、それぞれのコン
どんな環境?
ネスト環境
気にすること
動作確認は
可能だが…
ESX/KVMの
NW環境の熟知
OpenStackで
本番環境運用中
のロギングがそうした仕様となっていることを理解した上で、コンポー
ネントに用意されているサービスチェックのコマンドなどを十分に活用
図12 導入のステップに応じた構成のイメージ
しながら、各サービスの稼働状況を必要に応じて確認できるようにして
おくことを勧めた。
「OpenStackを本番環境で利用する際には、まず冗長化を。そして将
外部
ネットワーク
来的な運用を考慮した拡張設計について、十分に考えた上で構築を
行ってほしい」
(輿水氏)
「System x」でOpenStackを
スタートするためのおすすめ構成は?
Public NW 10.0.0.0/24
Internal NW
eth1
eth1
eth2
Glance
br-int
br-ex
Cinder
Neutron
Horizon
LESは、レノボが IBMからx86サーバ(System x)事業を買収したのに
合わせ、2014年 10月1日付けで国内での営業活動を本格的にスタート
Swift
コントローラー
ノード
ネットワーク
ノード
Cont1
eth0
した。LESCでは、同社のサーバ、ストレージ、ネットワーク、クライアン
eth1
br-int
br-int
Open vSwitch
Open vSwitch
Open vSwitch
Neutron Module
DHCP/L3/
LBaaS…
Keystone
eth1
トデバイスを中心とした、エンタープライズシステムのデモおよび検証
NW1
eth0
VM
VM
VM
VM
Nova
Nova
コンピュート
ノード
コンピュート
ノード
Node1
eth0
Node2
eth0
管理NW 192.168.0.0/24
環境が準備されているほか、専任エンジニアが多数常駐し、技術検証
図13 システム全体の構成イメージ
7
OSSクラウド基盤の大本命「OpenStack」
─ 導入の基礎から「本番環境」を視野に入れた運用のコツまでを理解する
Lenovo Enterprise Solutions Ltd.
®
ンドサーバ」を比較した場合、大まかにメモリ容量が 800GBを超えるよ
外部
ネットワーク
Public NW 10.0.0.0/24
うな用途においては「ハイエンドサーバ」のほうが価格的なメリットが大
Internal NW
eth2 eth3
eth2 eth3
Foreman
(DHCP/PXE)
Glance
Web
Neutron
NFS
Horizon
eth2 eth3
Cinder
きくなると坂巻氏は言う
(図15)。
eth1
LESのラック型サーバにおける差別化のポイントとして、坂巻氏は「高
br-int
い 信 頼 性、摂 氏 4 0 度まで の 高 温 動 作 対 応」
「統 合 管 理モジュール
Open vSwitch
VM
Keystone
Swift
“IMM2”による、障害発生時のメーカーサポートへの自動発報」
「用途に
応じたサイズと仕様、フラッシュストレージを含む多様なオプション」を
VM
挙げた。最新の「System x M5」では、新たなオプションとしてハード
Nova
Neutron
Forman
ノード
Forman
eth0
®
インテル Xeon プロセッサー搭載
コントローラー
ノード
コントローラー
ノード
コントローラー
ノード
Cont1
Cont2
Cont3
eth0 eth0 IMM eth0 eth0 IMM eth0 eth0 IMM
ウェアエラーや各種のステータスを表示する
「次世代 LightPath LCD診
コンピュート
ノード
断パネル」が用意された。また、サーバ内部のコンポーネントレベルで
Node1
eth0 eth0 IMM
障害個所を特定できる
「LightPath診断 LED」、HDD、冷却ファン、電源
ユニット、メモリ、プロセッサにおける障害を事前に予知して適切な保
API NW 192.168.1.0/24
管理NW/ForemanNW(DHCP/PXE) 192.168.0.0/24
守動作(仮想マシンの動的移動など)を可能にする「事前障害予知
図14 Foremanシステム全体の構成イメージ
(PFA)」など、現場での運用管理をサポートする各種の機能が搭載され
「特にネットワークノードは、問題判別や Neutronの動作理解のため
ている。
にも分離して配備することを勧めたい。RHEL OSPを利用するためサ
セキュリティに関する機能としては、Intel TXTを搭載するセキュリ
ポート面も安心できる。順次、導入ガイドや FAQについても公開してい
ティチップ「TPM(Trusted Platform Module)
」
を標準搭載している。クラ
く予定だ」
(坂巻氏)
ウド環境ではハードウェアを意識しないことが多いが、実際に動作する
一方、4台の System xによるHA構成は、Foreman Installerを利用す
ハードウェアが正しいハードウェアで動いているのかを意識する必要性
ることで、コントローラノード 3 台、コンピュートノード 1 台の構成とな
がある。その認証の仕組みとしてTPMを使用する。
る。また、これらとは別にネットワーク上に Foremanが動作する
「インス
TPMによるハードウェア認証とOpenStackと連動した動作が可能に
トールサーバ」を用意し、ここからインストールに関する作業を行うこと
なっており、ハードウェアベースで認証されたサーバにおいてのみ VM
を推奨している
(図14)
。
の起動を可能にするといった形で、企業で稼働するクラウド基盤のセ
LESでは、x86サーバのラインアップとして、スタンダードなラック型、
キュリティを確保できるという。前述したハンズオンの環境では TPMを
タワー型から、ハイエンドサーバ、ブレード型、統合型、高密度型など、
使用した環境を構築しており、特定のサーバ上で起動することを紹介し
用途に応じた多様なラインアップを用意している。
「ラック型」
と
「ハイエ
ていた(図16)。
ハイエンド・サーバー
ストレージ・キャパシティー重視
(3.5型HDD/SSD)
仮想化の密度を最大化し、
統合基盤、
プライベートクラウド基盤として
最適化されたブレード型サーバー
System x3850 X6
System x3950 X6
IBM PureFlex System
Flex System BladeCenter
ラック型・タワー型サーバー
お客様の幅広いITインフラの
ニーズにフィットするラック型/
タワー型サーバー製品群
高性能と高密度を両立させる、1Uハイパフォーマンス・サーバー
ブレード型/統合型サーバー
業界最先端のテクノロジーにより、
高速・俊敏・自己回復力を
実現するハイエンド・サーバー
スタンダード
(管理パネル & 光学メディア)
仕様概略
プロセッサー搭載
メモリー
最大24個搭載可能
最大容量1.5TB
高密度型サーバー
エネルギー効率とパフォーマンスを
両立させ、
スペースの抑制された
データセンターに最適化
System x
ThinkServer
ストレージ・パフォーマンス重視
(スピンドル/SSD)
NeXtScale System
System x iDataPlex
備考
Intel Xeon E5-2600 v3
プロセッサー
DDR4 RDIMM/LRDIMMを
ストレージ
12個の2.5型HDD/SSD、
または4個の3.5型HDD/SSD
を搭載可能。最大容量24TB。
12Gbps SAS対応
管理
次世代LightPathパネルを
オプションで搭載可能
ポイント!
モノクロLCD
+ LED
80 Plus Titanium電源を
ストレージ製品
電源
エンタープライズ・クラスの機能と可用性を低価格に提供する
Storwizeシリーズとアーカイブに最適なLTO装置のラインナップ
使用環境
System Networkingスイッチ製品
セキュリティー
データセンター用ネットワーク製品群
シャーシ内蔵用およびトップ・オブ・ラック・スイッチ
オプションで搭載可能。
Active-Standby/
Active-Active冗長電源
ポイント!
室温5∼40℃
(設置高度による)
TPMをサーバー本体、
IMM用に2つ標準搭載。
鍵付ベゼル(オプション)
図16 System x3550 M5の概要
図15 レノボ・エンタープライズ・ソリューションズが提供するx86サーバのポートフォリオ
【お問い合わせ先】
レノボ・エンタープライズ・ソリューションズ株式会社
Lenovo Enterprise Solutions Ltd.
このカタログに記載される内容は、事前の予告なしに変更する場合があります。Lenovo、レノボ、レノボロゴは、Lenovo Corporationの商標。Intel、インテル、Intel ロゴ、Intel Inside、Intel Inside ロゴ、Xeon、Xeon Inside は、アメ
リカ合衆国およびその他の国における Intel Corporationの商標です。Linuxは、Linus Torvaldsの米国およびその他の国における商標。Microsoft、Windows、Windows NTおよび WindowsロゴはMicrosoft Corporationの米国
およびその他の国における商標。その他記載のブランド名および製品名は、それぞれの会社の商標です。Copyright ©2015, Lenovo Enterprise Solutions Ltd. All rights reserved.
8