IT・技術研修ならCTC教育サービス

サイト内検索 企業情報 サイトマップ

研修コース検索

コラム

クラウド時代のオープンソース実践活用

CTC 教育サービス

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes 

第23回 RDOとPackstackでOpenStackを手軽に実体験! (中井悦司) 2013年7月

はじめに

 先日、日本オープンスタックユーザ会主催の勉強会に参加して、「RDOとPackstackのご紹介」というタイトルでお話をさせていただきました。その中で、OpenStackをインストールして利用した経験について、参加者の方に聞いたところ、8割近くの手が上がりました。以前は、「OpenStackはインストールするだけで一苦労・・・」という話も聞きましたが、少しずつ状況が変わってきたようです。
 今回のテーマである「Packstack」は、前回の記事で紹介した「Puppet」を用いた、OpenStackのインストールツールです。本コラムの第20回で紹介した、RDOによるOpenStackの環境を自動構築します。HAクラスタなどの本格的な構成には対応しませんが、簡易的な検証環境であれば、かなり手軽に構築することができます。これで、OpenStackを「実体験」できるユーザがますます増えることが期待できるでしょう。

Packstackの概要

 本コラムの第11回で紹介した様に、OpenStackは、Nova、Glance、Cinder・・・など、さまざまなコンポーネントから構成されています。Packstackでは、コンポーネントごとに導入・設定用のマニフェストを用意しておき、別途用意した「Answerファイル」に基づいて、指定のサーバに指定のマニフェストを適用するという仕組みになります。
 次は、Answerファイルにおける、Novaに関連する設定の一部です。Novaの管理機能をインストールするサーバのIPアドレスに加えて、「CONFIG_NOVA_COMPUTE_HOSTS」では、Nova Compute(仮想マシンインスタンスが起動するサーバ)として構成するサーバ群のIPアドレス(10.64.200.100~10.64.200.102)が指定されています。

CONFIG_NOVA_INSTALL=y
CONFIG_NOVA_API_HOST=10.64.200.99
CONFIG_NOVA_CERT_HOST=10.64.200.99
CONFIG_NOVA_VNCPROXY_HOST=10.64.200.99
CONFIG_NOVA_COMPUTE_HOSTS=10.64.200.100,10.64.200.101,10.64.200.102

 このAnswerファイルを用いてPackstackを実行すると、指定のサーバ群に必要なPuppetマニフェストが配布されて、複数サーバへのインストールが並列に行われます。つまり、1台の「インストールサーバ」から、ネットワーク経由で複数サーバの同時インストールが可能になります(図1)。多数のサーバをインストール際には、非常に便利なツールです。

fig01

図1 Packstackによる複数サーバのインストール

 ただし、1つだけ残念なことがあります。Packstackの使い方についてのドキュメントがまだ整備されておらず、Answerファイルをどのように編集すれば、希望する構成でインストールできるのかがよく分かりません。典型的な構成での構築手順を筆者のBlogで紹介していますので、そちらを参考にしてください[*1][*2]。

Packstackの内部構造

 筆者は、前述のBlog記事を書くにあたって、Packstackのソースコードを読んで、Answerファイルの書き方などを確認しました。ドキュメントがあるに越したことはありませんが、ソースコードから自分で仕様を確認して使いこなすというのも、オープンソースの醍醐味ですよね。
 この中で、Packstackの仕組みについて、面白い点を発見しました。前述のように、Nova、Glance、Cinderなど、さまざまなコンポーネントのマニフェストが用意されているわけですが、新しいコンポーネントのマニフェストをプラグイン形式で追加できるようになっています。Packstackをインストールしたサーバで、図2のコマンドを実行すると、Packstackが提供するマニフェスト群と対応するプラグインモジュール群が確認できます。

fig02

図2 Packstackのプラグイン構造

 OpenStackの新しいコンポーネントが登場した際は、そのコンポーネントのマニフェストとプラグインモジュールを追加することで、Packstackを追加コンポーネントに対応させることができるというわけです。このあたりの詳細は、こちらのBlog記事で解説しています。ややマニアックな内容ですが、興味のある方は、一読いただければと思います。

次回予告

 今回、Packstackのソースコードを読むという話が出てきましたが、そのソースコードは、バージョン管理ツール「git」で管理されています。最近のオープンソースでは、ソースコードの管理にgitを利用する事が非常に多くなって来ました。gitは、ソースコードを書く開発者向けのツールですが、その機能はソースコードを読む際にも役立てることができます。
 次回は、「ソースコードを読む」という観点で、gitの機能を紹介したいと思います。

参考資料

*1)「RDOデモ環境を確実に構築する手順
 Packstackを使って、1台のサーバでOpenStackが動作する環境を構築する方法を説明しています。

*2)「RDOデモ環境を確実に構築する手順(複数ノード編)
 Packstackを使って、1台のコントローラーノードと複数のコンピュートノードからなる環境を構築する方法を説明しています。

 

++ CTC教育サービスから一言 ++
このコラムでLinuxや周辺技術の技術概要や面白さが理解できたのではないかと思います。興味と面白さを仕事に変えるには、チューニングやトラブルシューティングの方法を実機を使用して多角的に学ぶことが有効であると考えます。CTC教育サービスでは、Linuxに関する実践力を鍛えられるコースを多数提供しています。興味がある方は以下のページもご覧ください。
 CTC教育サービス Linuxのページ
 http://www.school.ctc-g.co.jp/linux/
 

Linux研修トレーニングならCTC教育サービス


 

筆者書籍紹介

Software Design plusシリーズ
「独習Linux専科」サーバ構築/運用/管理
  ――あなたに伝えたい技と知恵と鉄則

本物の基礎を学ぶ!新定番のLinux独習書

中井悦司 著
B5変形判/384ページ
定価3,129円(本体2,980円)
ISBN 978-4-7741-5937-9
詳しくはこちら(出版社WEBサイト)
「独習Linux専科」サーバ構築/運用/管理

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes