レポートでは、OpenStackのオーケストレーションサービスであるHeat※1の最新動向について紹介します。codeを実現するオーケストレーションサービスです。Template)と呼ばれるYAML形式のテンプレートに作成したいリソース(例えばインスタンス)を記述しHeatにリクエストを送ることで記載されたリソース全てを一括で作成・更新・削除することが可能です。Config等、単にリソースをプロビジョニングするだけではなくOpenStackテナント上のリソースのライフサイクルを管理できるサービスです。https://docs.openstack.org/ceilometer/latest/HOTにはリソース間の依存関係も記述できるので、実際のリソースの構築順序の制御も表現することが可能です。「先にネットワークを作成した後、当該ネットワークに接続するインスタンスを作成する」といったことが簡単にできます。1つのテンプレートに記載され実際に作成されたリソース群はスタックという単位でHeatに管理され、各リソースの更新や一部削除、リソース群全体の削除などはこのスタックという単位で行われます。HOTの例HOTにはたくさんの機能があります。詳細は公式のテンプレートガイド※3及びサンプルテンプレートのレポジトリ※4を確認するのがおすすめです。Updateセッションでの主なアップデートを紹介します。Pikeリリースで追加されたリソースタイプのうち主なものを紹介します。Port※5をサポートするものです。networkを接続できます。実行されるコンテナの管理を行うことが可能です。vCPU数、メモリ、イメージ、コンテナ内で実行するコマンドなどを指定してコンテナを作成できます。OS::Mistral::ExternalResource個人的に注目しているのがこのリソースタイプです。OpenStack以外のサービス)をHeatを使って管理するためにはプラグインを自分で書く必要がありました。アクションを定義することでHeatのテンプレート上で簡単に独自リソースを作ることができます。https://docs.openstack.org/mistral/latestまた以下3つのFunctionが追加されました。List_concat_unique引数としてリストを複数取り、要素の重複を排除した上で結合できます。Contains第一引数の値が第二引数のリストに含まれているかをTrue/Falseで判定します。Make_url他のリソースからscheme、host、pathを受けそれらを結合しURLを生成します。Upgradeが公式にサポートされる予定です。これによりダウンタイムを最小限にしてHeatのアップグレードができるようになることが期待されます。Dashboardという名前でリリースされる予定です。Dashboardが追加されました。これはHeatのGUI機能をHorizonのプラグインとして提供するものです。これまでもHeatの機能はHorizonから利用可能でしたが、これをHorizon本体から切り離した上でプラグイン化し新たな機能を追加する意欲的なプロジェクトです。Dashboardのインストールも必要となります。Dashboardで注目すべき機能はドラッグ&ドロップ形式のテンプレート作成機能です。DashboardこれまでHOTの作成はテキストエディタ等を使ってマニュアルで行うのが一般的でしたが、たくさんのリソースを含み、各リソース間の依存関係が複雑な大型のテンプレートの作成をミスなく行うことは非常に困難でした。このテンプレート作成機能を利用すればユーザーはドラッグ&ドロップという直感的な操作でテンプレート作成作業を行うことができます。使い方は簡単で、作成したいリソースを示すアイコンをドラッグ&ドロップでキャンバスに配置します。配置したアイコンをクリックするとプロパティの設定を行うモーダルウィンドウが表示されます。インスタンスのフレーバー等のプロパティについてはプルダウンメニューから選択可能にしており人為的なミスを最小限に出来るよう工夫がされています。リソース間の依存関係についてはアイコンとアイコンの間をコネクタで繋ぐことで表現します。こちらはHOTのFunctionで言うところの「get_resource」に相当します。作成中のテンプレートについてはキャンバス情報の保存及び、保存データの読み込みを行うことが可能です。Dashboardの開発に携わっており、Sydneyサミットで行ったセッションの中でデモを行いましたので是非ご覧ください。DashboardはQueensでのリリースを目指し現在鋭意開発中のステータスですが、公式レポジトリは既に存在しDevStack等の環境で利用することが可能です。Dashboardを有効にする1行を追加の上、stack.shを実行するだけです。バグ報告や機能追加についてはLaunchpadから行えます。皆様からのフィードバックをお待ちしています。https://launchpad.net/heat-dashboardおわりに今回はOpenStackのオーケストレーションサービス「Heat」の最新動向について紹介しました。Dashboardについてはグラフィカルなインターフェースから簡単にHOTが作成出来るようになり、これまでHeatに馴染みがなかったユーザーも気軽にHeatを使えるようになるのではと期待しています。Cloud2.0の開発チームに所属。Heatを使ったオーケストレーションサービスの開発に従事。Dashboard」のコアデベロッパーとして活動中。Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。ITがお届けするポッドキャストです。