いまさら聞けないOpenStack〜よく知られた「常識」と知っておくべき「常識」:特集:OpenStack超入門(2)(2/3 ページ)
日本OpenStackユーザ会の全面協力を得て、OpenStackを徹底的に深掘りする本特集。第2回はレッドハット クラウドエバンジェリストの中井悦司氏が「OpenStackでできること」「OpenStackを使う上で必要なこと」を分かりやすく解説する。
ITインフラの三大要素を仮想化して提供するOpenStack
それでは、OpenStackの機能について、その概要を捉えておきましょう。OpenStackは、IaaS(Infrastructure as a Service)タイプのクラウドサービスを提供するのがその使命です。マルチテナントでの利用が前提となっており、OpenStackのエンドユーザーには、それぞれに独立したテナントが与えられます。1つのテナントを複数のユーザーで共同利用することも可能です(図1)。
ユーザーは、自身のテナントの内部で、仮想ネットワーク、仮想マシン、仮想ストレージを自由に構成して、組み合わせていきます。あくまで仮想化された世界ではありますが、「ネットワーク」「サーバー」「ストレージ」という、ITインフラの三大要素が自由に手に入るようになります。物理的な制約を気にすることなく、自席の端末から、GUI/CLI操作での環境構築が可能になります。
ここまでは、IaaSタイプのクラウド一般にいえる話ですが、OpenStackの場合は、次のような操作方法を選択できます。
- Webブラウザーからダッシュボード(GUI)を操作する
- OpenStackのクライアントコマンド(CLI)を利用する
- APIライブラリを用いて、環境を自動操作するプログラムを作成する
- AnsibleやChefなどの構成管理ツールを利用して環境操作を自動化する
1、2は手動操作ですので、まだ、本来の意味における自動化には達していません。しかしながら、従来の世界で必要とされた物理作業がなくなることで、作業効率は格段に向上します。ネットワーク、サーバー、ストレージを用意して、アプリケーションの実行環境を整備するという一日がかりの作業が、数分で完了します。
そして、3、4はOpenStack本来の威力を発揮する自動操作です。詳しくは次回に解説しますが、OpenStackが提供する全ての機能は、REST形式のAPIを通じて利用することが可能です。APIにリクエストを発行するプログラムライブラリが用意されており、「腕に覚えのあるエンジニア」であれば、Pythonなどのプログラム言語で、さまざまな環境操作を自動化することが可能です。
とはいえ、個々のエンジニアが独自に自動化プログラムを作るのも非効率的です。そこで登場するのが、AnsibleやChefなど、既存の構成管理/自動化ツールを利用した手法です。例えば、Ansibleでは、個々の作業手順を「プレイブック」と呼ばれる設定ファイルにまとめていきます。プレイブックを共有することで、チーム全体で自動化の仕組みを共有することが可能になります。
冒頭で紹介した、OSの設定変更作業であれば、「アプリケーションを起動/停止するプレイブック」「アプリケーションの稼働テストを実施するプレイブック」などをアプリケーションチームが事前に用意しておきます。これにより、変更作業そのものには、アプリケーションチームは関わる必要がなくなります。対象サーバーが10台だろうが、100台だろうが、変更作業の手間は変わりません。
この時、自動化の対象が「OSの設定変更」だけであれば、OpenStackの機能は直接には関係しませんが、スケールアウト型のアプリケーションであれば、後からアプリケーションサーバーを追加するような作業も発生します。
Ansibleには、OpenStackのAPIを操作するモジュールも用意されているので、「新規の仮想マシンを起動してストレージを接続した後、アプリケーションを導入してロードバランサーに組み入れる」といった一連の作業を、プレイブックの組み合わせで自動化することが可能になります(図2)。OpenStackで提供するストレージ(ブロックボリューム)には、スナップショットコピーの機能もあるので、データベースのバックアップ作業など、ストレージの機能と連携した自動化も可能です。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- OpenStackが今求められる理由とは何か? エンジニアにとってなぜ重要なのか?
スピーディなビジネス展開が収益向上の鍵となっている今、システム整備にも一層のスピードと柔軟性が求められている。こうした中、なぜOpenStackが企業の注目を集めているのか? 今あらためてOpenStackのエキスパートに聞く。 - OpenStackのコアデベロッパーは何をしているのか
@IT特集「OpenStack超入門」は日本OpenStackユーザ会とのコラボレーション特集。特集記事と同時に、日本OpenStackユーザ会メンバーが持ち回りでコミュニティの取り組みや、超ホットでディープな最新情報を紹介していく。第2回は日本OpenStackユーザ会メンバーで、OpenStack開発コミュニティ コアデベロッパーの元木顕弘氏が語る。 - ますます進化・拡大するOpenStackとOpenStackユーザーたち
@IT特集「OpenStack超入門」は日本OpenStackユーザ会とのコラボレーション特集。特集記事と同時に、ユーザ会メンバーが持ち回りでコミュニティの取り組みや、まだどのメディアも取り上げていない超ホットでディープな最新情報をコラムスタイルで紹介していく。第1回は日本OpenStackユーザ会会長 中島倫明氏が語る。 - 開発環境構築の基礎からレゴ城造り、パートナー交渉術まで〜OpenStack Upstream Trainingの内容とは?
OpenStack Summit Parisでは、数々の先進的な企業事例が登場した一方で、開発コミュニティ参加希望者に向けたオープンなトレーニングプログラムも企画されていた。OSSコミュニティのエコシステムの考え方まで考慮した2日間にわたるプログラムを、参加エンジニアがリポートします。 - OpenStack、結局企業で使えるものになった?
OpenStackを採用することで、企業のITインフラはどう変わるのか、導入のシナリオや注意点は何か。そんな問題意識の下で開催した@IT主催セミナー「OpenStack超解説 〜OpenStackは企業で使えるか〜」ではOpenStackの企業利用の最前線を紹介した。 - OpenStackとレゴタウンとの意外な関係
10月10、11日に東京で実施されたOpenStack Upstream Trainingでは、レゴを使った街づくりのシミュレーションが。レゴはOpenStackプロジェクトとどう関係するのか。 - いまさら聞けない「クラウドの基礎」〜クラウドファースト時代の常識・非常識〜
クラウドの可能性や適用領域を評価する時代は過ぎ去り、クラウド利用を前提に考える「クラウドファースト」時代に突入している。本連載ではクラウドを使ったSIに豊富な知見を持つ、TISのITアーキテクト 松井暢之氏が、クラウド時代のシステムインテグレーションの在り方を基礎から分かりやすく解説する。