Novaの動作と仕組み~複数のノード・仮想化方式でも効率的にインスタンス管理
マイクロサービスアーキテクチャが支えるOpenStackの動作と仕組み 第2回
前回は、機能・アーキテクチャの両面でOpenStackの中核と呼ぶべきサービス「Keystone」を紹介しました。Keystoneはエンドポイント情報の共有や認証認可といったOpenStackの中核的機能を担っているほか、サービスの増減やバージョンアップを容易するアーキテクチャをOpenStackに提供しています。今回は、2つ目のOpenStackのコアサービスとして「Nova」を取り上げます。Novaは仮想サーバーの作成と管理を司るサービスです。Keystoneと並んで、OpenStackの中核を担うサービスでもあります。
おさらい:OpenStackの構造
OpenStackの構造は前回紹介しましたが、ここで再度簡単に説明します。
OpenStackはクラウドコンピューティングサービス基盤を構築するためのソフトウェア群です。 1つ1つのソフトウェアをサービスと呼びます。 OpenStackでクラウドコンピューティングサービス基盤を構築する際には、サービスのうち、必要なものだけを組み合わせて構築します。
また、サービスの中でも主要なものを、特にコアサービスと呼びます。 今回取り上げるNovaもコアサービスの1つです。コアサービスにはNovaのほか、Neutron、Swift、Glance、Cinderと前回取り上げたKeystoneまで合計6つあります。
OpenStackのノード
OpenStackで作るクラウドコンピューティングサービスは、複数のノードから構成されます。ノードにはいろんな種類があります。主なものは次表のとおりです。
| コントローラノード | クラウドコンピューティングサービスを統括するノード。プライベートクラウドを利用する際、このノードに対してエンドユーザーはリクエストを送ることになる |
|---|---|
| コンピュートノード | 仮想サーバーが動作するノード |
| ネットワークノード | プライベートクラウドのネットワークを管理するノード |
| ストレージノード | 仮想サーバーのための追加ディスクを提供するノード |
| オブジェクトストレージノード | バックアップなどを行うためのファイル保管用ノード |
1台のサーバー機の上に複数のノードを構築することも可能ですが、多くの場合、1台のサーバー機に構築するのは1つのノードだけとします。 また、同じ種類のノードのサーバー機を複数台設置することもよくあります。特に、コンピュータノードにしたサーバー機は複数台設置するケースがほとんどです。
Novaとは
では、今回のメインテーマであるNovaの説明を始めましょう。 Novaは、OpenStackのコンピュートノードに仮想サーバーを作成し管理するサービスです。 Novaが作成した仮想サーバーのことをインスタンスと呼びます。
実際にNovaが行うことは次のとおりです。
- 既存のインスタンスの操作
- 新しいインスタンスの作成
- コンピュートノードの管理
Novaの構造
Keystoneは1つのサーバー機にインストールするだけで動作しました。 一方、Novaは複数のコンポーネントで構成されます。 各コンポーネントを適切なサーバー機にインストールすることによって、Novaは動作します。
Novaを構成する主なコンポーネントとその機能は次表のとおりです。どのコンポーネントがどの種類のノードにインストールされるかにも注目してください。
| コンポーネント | 機能 | 配置されるノード |
|---|---|---|
| nova-compute | 各インスタンスを直接扱うコンポーネント | コンピュートノード |
| nova-api | エンドユーザーからのリクエストを受け付けるためのコンポーネント。ここがエンドポイントとなるほか、認可もここで実施する | コントローラノード |
| nova-scheduler | インスタンスを作成するコンピュートノードを決定するコンポーネント | コントローラノード |
| nova-conductor | コンピュートノードに配置されたnova-computeの情報をデータベースに集約し、他のコンポーネントへ提供するコンポーネント | コントローラノード |
これらのコンポーネントは次図のように配置されます。
次ページから、先ほど挙げたNovaが行う3つのことの機能を順に説明していきます。
この記事は参考になりましたか?
- マイクロサービスアーキテクチャが支えるOpenStackの動作と仕組み連載記事一覧
-
- Glanceの動作と仕組み~Novaのインスタンスイメージを柔軟に管理
- Novaの動作と仕組み~複数のノード・仮想化方式でも効率的にインスタンス管理
- Keystoneの動作と仕組み~エンドポイントと認証認可
- この記事の著者
-
大嶋 俊祐(株式会社ワークスアプリケーションズ)(オオシマ シュンスケ)
株式会社ワークスアプリケーションズ所属。 社内では技術研修を担当しながら、OpenStackを使ってプライベートクラウドを作っています。 自分が運営する研修を自分が作ったプライベートクラウドを使って運営するのがマイブーム。 あだ名はひよこ。TRPGが趣味なのでどなたかお誘いください。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
