ゼロから始めるOpenStack (13) OpenStackを構成するコンポーネント (Horizon編)
ダッシュボードサービス「Horizon」は、OpenStackにおけるWeb GUI を提供する。もちろんOpenStackはAPIやCLIクライアントでの操作も可能だが、ユーザビリティの向上が必要なクラウドサービスを提供する時などは、Webベースで利用できるGUIを提供することは重要な要素だ。今回は、Horizonの概要を紹介しよう。
○Keystoneとの連携が必須
HorizonではOpenStackにおけるダッシュボード機能を提供し、インスタンスの操作やボリューム/ネットワークの作成・削除などをWeb GUI上で可能にする。ただ、独自のプロセスが動作するわけではなく、PythonのWebフレームワークであるDjangoをフロントエンドとして利用している。そのため、実行時にはhttpdのプロセスが動作し、内部ではNovaやNeutronといった各サービスのAPIで連携して、その返り値をGUIで表示している。
また、ダッシュボードを利用する際はOpenStackで作成されたユーザーによる認証が必要となるため、必然的にKeystoneとの連携が必要となる。加えて、Keystoneと連携することで、ポリシーによるGUIのフィルタリングが可能となる。