Folsom バージョンのリリースノート¶
リリースの概要¶
Folsom リリースサイクルでは、 Horizon のユーザーエクスペリエンスの大きな改善が行われました。また、 Quantum ネットワークが OpenStack Dashboard の主要機能として再度利用できるようになりました。
ハイライト¶
Networking (Quantum)¶
Quantum が Folsom リリースでコアプロジェクトになるのにあわせて、我々は Quantum チームと緊密に連携し、Horizon にネットワークサポートが復活しました。代表的な変更は 2 つあり、プロジェクトダッシュボードと管理ダッシュボードのネットワークパネルと、インスタンス起動ワークフローのネットワークタブです。 Quantum が成熟し、より多くのユーザーが仮想ネットワーク管理に Quantum を使用するになるにつれて、これらの機能はさらに改善されていくことでしょう。
ユーザーエクスペリエンス¶
ワークフロー¶
Folsom リリースでの最大の UI/UX の変更は、プログラム可能なワークフローの導入です。ワークフローの部品を使うと、開発者は、複数のサービスやリソースにまたがる別々のタスクで構成される、ユーザーが使いやすい簡潔なインターフェースを、お決まりのコードは最小で、作成できます。ワークフロー内では、関連するオブジェクトは動的に作成されるため、ユーザーは、使いたい項目がその時点では利用可能ではなかったとしても、複数のタスクを決まった手順で実現できます。具体例については、インスタンスの起動、 Floating IP の割り当て、プロジェクトの作成/編集のワークフローを参照してください。
リソースブラウザー¶
もう 1 つのかっこいい新規部品は、親リソース配下で階層構造になったリソースを「ブラウズ」するために設計されたインターフェースです。 Object Store (Swift) がこのインターフェースの主な使用例です。「ブラウザー」の左側のペインでコンテナーの最上位層のナビゲーションを提供しつつ、右側のペインではコンテナーやそのサブフォルダーを参照できます。
ユーザーエクスペリエンスの改善¶
タイムゾーンのサポートが有効になりました。ユーザー設定パネルで好みのタイムゾーンを選択できます。
コミュニティー¶
Horizon 上にアプリケーションを作成しようとする third-party 開発者は、新しいダッシュボードとパネルのテンプレートを使うと、これまでよりずっと早く開発を始められます。詳しい情報は creating a dashboard と creating a panel のドキュメントを参照してください。
OpenStack プロジェクトの国際化 (internationalization)、現地語化 (localization)、翻訳を行う方法について、すべて網羅した、開発者向けのドキュメントが作成されました。(参照: thorough set of documentation)
Horizon 内部の変更¶
内部では、 cloudfiles と python-novaclient の代わりに、 python-swiftclient と python-cinderclient ライブラリーが使用されるようになりました。
国際化 (internationalization) が、サーバー側の Python コードに加えて、クライアント側の JavaScript でも可能になりました。
Keystone 認証がプラグイン型の Django 認証バックエンドにより処理されるようになりました。これにより、 Horizon のセキュリティーが、大きく向上し、信頼性のあるものになります。
その他の改良と修正¶
以下のような一般的な改善が行われました。
Glance がイメージをダウンロードする URL を指定して、 Glance へのイメージの追加ができるようになりました。
プロジェクトダッシュボードで、クォータが動的に表示されるようになりました。
OpenStack RC ファイルパネルに API エンドポイントが表示されるようになりました。これにより、エンドユーザーが自分でエンドポイントを確認できるようになります。
データテーブルで、テーブルの最終行にサマリー行が表示できるようになりました。
複数ブラウザーのサポートが改善されました (特に Safari と IE)。
OpenStack エンドポイントに対する API 呼び出し数が削減されました (性能の向上)。
どのアクションをいつ実行できるかの検証が改善されました。
エラー処理とエラーメッセージの改善が行われました。
既知の問題と制限¶
Floating IP と Quantum¶
Quantum に Floating IP サポートが追加されたのがリリース間際であったため、 Nova との連携は未実装です。そのため、 ネットワークスタックとして Quantum を使用している OpenStack デプロイメントでは Nova への Floating IP 関連の API 呼び出しは失敗します。Horizon は内部ではこれらの API を使用しているため、 Floating IP の「確保」や「関連付け」などの Horizon のアクションも動作しません。
ページ繰り¶
多くの「一覧」ページでは API ページ繰り (pagination) 対応は不完全で、これらのページでは API で返された最初のデータを表示するだけになっています。 API で返されるデータ量は多くの場合 1000 ですが (novaclient の場合も同じです) 、違う場合もあります。
大量のリソースの同時削除¶
「全選択」チェックボックスを使って大量のリソースを API 経由で削除した場合、ネットワークタイムアウトが発生することがあります (設定に依存します)。 API 自身は bulk delete (一括削除) に対応しておらず、その結果 Horizon がリソース単位に削除要求を送信しているからです。
後方互換性¶
Folsom リリースの Horizon は、他の OpenStack コアプロジェクト (Nova, Swift など) の Folsom と Essex バージョンの両方と完全な互換性があるはずです。背後で使用するサービスでのバグ修正などがあるため、機能によってはすべて Folsom バージョンの構成の方がかなり良く動作するものもあるでしょうが、機能が動作するかどうかという観点では制限事項はありません。(注: Quantum は Essex では OpenStack コアプロジェクトではなかったため、ネットワーク管理機能については上記はあてはまりません。)
Horizon を拡張するための API としては、後方互換性のない変更がいくつか行われました。
テンプレートフィルター
can_haz
とcan_haz_list
は、それそれhas_permissions
とhas_permissions_on_list
に改名されました。ダッシュボード固有の
base.html
テンプレート (nova/base.html
やsyspanel/base.html
など) は削除されました。 単一のbase.html
テンプレートを使用してください。直前の項目と関連しますが、ダッシュボード固有のテンプレートブロック (
nova_main
やsyspanel_main
など) は削除されました。単一のmain
テンプレートブロックを使用してください。
全体としては、多くの努力の結果、これまでに Horizon を利用したアプリケーションを作成している third-party 開発者に対する互換性が維持されています。