Jump to: navigation, search

ReleaseNotes/Juno

Revision as of 01:38, 23 October 2014 by Amotoki (talk | contribs)
Other languages:
English • ‎فارسی • ‎日本語 • ‎한국어 • ‎中文(简体)‎ • ‎中文(台灣)‎

OpenStack 2014.2 (Juno) リリースノート

Contents

全体的なアップグレード時の注意

  • simplejson パッケージはほとんどのプロジェクトで選択可能な依存パッケージですが、そのため全プロジェクトの requirements.txt ファイルには記載されていません。しかし、このパッケージを使用する場合、例えば RHEL 6 上の Python 2.6 で性能向上を図る場合、simplejson のバージョン 2.2.0 以上が必要になります。詳細は https://bugs.launchpad.net/oslo-incubator/+bug/1361230 を参照して下さい。

OpenStack Object Storage (Swift)

主要な新機能

Juno リリースでは、OpenStack Swift の3バージョン(2.0.0, 2.1.0, 2.2.0)が含まれています。これらのリリースの変更履歴は https://github.com/openstack/swift/blob/2.2.0.rc1/CHANGELOG#L1-L173 にあります。リリースの詳細はこちらを参照下さい。

重要な新機能は以下のとおりです。CHANGELOG と関連ドキュメントを一読ください。

  • ストレージポリシー
  • Keystone v3 対応
  • サーバサイドのアカウント間コピー
  • 新サーバ/ゾーン/リージョン追加時のパーティション配置の改善
  • splice() システムコールを使用した、GET 応答のゼロコピー化
  • オブジェクト監査機能の並列処理化


既知の問題

  • 現時点でありません。

アップグレード時の注意

いつも通り、エンドユーザ向けのダウンタイム無しに Swift クラスタをアップグレードすることができます。各リリース前には設定ファイルのサンプルとドキュメントを参照して下さい。

  • 声を大にして言う必要のある、幾つかのログ関連の変更があります。いずれの場合でも、正常に機能するログ処理機構は影響を受けないでしょう。
    • ストレージノード(account, container, object)のログは、行末にその記録をした PID が記載されるようになりました。
    • object デーモンは、ユーザーエージェント文字列にデーモンのフルネームを付けて送信するようになりました。(例:"obj"⇒"object")
  • 一旦、追加のストレージポリシーが有効になった場合、Swift の 2.0.0 より前のバージョンへのダウングレードを行うといずれの追加的なストレージポリシーも利用できなくなります。
  • Swift へのデフォルトポートを IANA の未割当範囲に更新する作業の一環として、bind_port 設定が必須になりました。現在明示的にこのポートを設定している人は影響を受けませんが、現在このポートを設定していない場合、アップグレード作業の一部として、あなたの *_server.con が現在の ring 設定に一致する bind_port 設定がきちんとされるようにして下さい。
  • 注意:ストレージポリシーは新しいデーモン(container-reconciler)を含みます。
  • TempURL のデフォルトで許可されているメソッド設定は、今回新たに POST と DELETE を許可するようになりました。これは、tempurls がこれらの動作用に作成可能なことを意味します。これは既存の tempurls には影響しません。
  • Swift の更新/廃止予定/削除済オプションの一覧は以下で参照できます。 http://docs.openstack.org/trunk/config-reference/content/swift-conf-changes-master.html

OpenStack Compute (Nova)

インスタンスの機能

  • レスキューに使用する旧来のベースイメージの代わりに、ユーザがイメージを指定できるようになりました。 launchpad specification
  • config drive を使用するイメージを指定できるようになりました。 launchpad specification
  • フレーバ経由で、ゲストに提供される仮想 CPU トポロジを、ユーザと管理者が制御できるようになりました。 launchpad specification
  • レスキュー時、全てのローカルディスクがアタッチされるようになりました。 launchpad specification

ネットワーク

  • nova-network のコードが改良され、ネットワーク毎に設定できるようになりました。 launchpad specification
  • インスタンスのネットワーク情報の変更がすぐに通知されるよう、デプロイする人がフックを追加できるようになりました。 launchpad specification
  • Nova のインスタンスが SR-IOV の Neutron ポート付きで起動できるようになりました。 launchpad specification
  • VM が1ネットワークに複数のインターフェースをアタッチできるようになりました。 launchpad specification

スケジューリング

  • 拡張可能なリソース追跡。Nova が追跡可能なリソースセットはハードコーディングされていますが、この変更により拡張可能になりました。これによりスケジューリング用の新しいリソースタイプ追跡用のプラグインが作れるようになります。 launchpad specification
  • VMホストの evacuate 機能で、スケジューラがインスタンスの移動先ホストを選択できるようになりました。 launchpad specification
  • スケジューラフィルタにホストアグリゲート対応を追加しました。 launchpad: disk; instances; IO ops specification

その他

  • Nova の国際化対応:Oslo i18n の遅延変換サポートを有効にし、制約をNovaに追加する更新によって、変換可能な文字列に追加しました。launchpad specification
  • SQL スレーブサーバーが設定されている場合、定期処理の SQL クエリを SQL スレーブサーバーに向けることができます。launchpad specification
  • 60秒毎に SQL データベースのホスト状態を更新する代わりに、変更がある場合のみ SQL サーバ上のホスト状態を更新します。launchpad specification
  • ハイパーバイザーホストの API 一覧にステータス情報を追加しました。launchpad specification
  • サービス一覧時、API 問合せでフィルタに複数の状態を指定できるようになりました。launchpad specification
  • ユーザーが作成可能なサーバーグループの数やサイズを制限する quota を追加しました。 launchpad specification

ハイパーバイザードライバ別

Hyper-V

Ironic

Libvirt

  • 最近の libvirt 上のインスタンス一覧の性能を向上しました。 launchpad specification
  • ネットワークストレージ上の仮想ディスクのスナップショット作成に対応しました。 launchpad specification
  • Ceilometer のレポート用の QEMU メモリバルーン統計に対応しました。 launchpad specification
  • 未使用のディスクブロックのバックエンドのストレージシステムへの返却に対応しました。launchpad specification
  • 今回インスタンスのメタデータを libvirt のドメイン XML に記録するようになりました。これは、管理者による問題のデバッグ用です。 launchpad specification
  • LXC コンテナーのネームスペースに対応しました。 launchpad specification
  • RBD バックエンドディスクの Copy-on-write クローンに対応しました。 launchpad specification
  • インタラクティブなシリアルコンソールを提供するようになりました。 launchpad specification
  • VM電源OFFの際、ゲストOSのシャットダウンができるようになりました。 launchpad specification
  • ゲストの NUMA ノードへのインテリジェントな配置に対応しました。 launchpad specification

VMware

  • VMware ドライバが oslo.vmware ヘルパーライブラリを使用するようになりました。launchpad specification
  • VMware でネットワークインターフェースのホットプラグに対応しました。 launchpad specification
  • 保守性向上の為、VMware ドライバのVM作成機能をリファクタリングしました。これは内部的な改善ですが、VMware ドライバの保守性を大幅に向上させたので、記載しておきます。 launchpad specification

既知の問題

  • 現時点でありません。

アップグレード時の注意

  • Nova の更新/廃止予定/削除済オプションの一覧は http://docs.openstack.org/trunk/config-reference/content/nova-conf-changes-master.html にあります。
  • nova-manage の flavor サブコマンドは Juno で廃止予定になり、2015.1 (K) リリースで削除される予定です。 https://review.openstack.org/#/c/86122/
  • https://review.openstack.org/#/c/102212/
  • 今回、libvirt バージョンは 0.9.11 以降が必須になりました。 https://review.openstack.org/#/c/58494/
  • 今回、Nova は Cinder V2 API をサポートしました。Cinder V1 API は Juno で廃止予定となり、Nova は L リリースで Cinder V2 をデフォルトにする予定です。
  • 可読性向上の為、python-novaclient のデバッグログ出力が大幅に変更されました。今回、Keystone トークンの代わりにトークンの SHA1 ハッシュが出力されるようになりました。これにより、トークンの不一致ケースの検出が可能な状態を維持しつつ、出力される内容量が大幅に短縮されました。加えて、付加されていたいくつかの余計な改行文字が削除されました。「どのログパーサーも二重に確認して下さい!」
  • nova.conf 中の libvirt.volume ドライバ設定パラメータが廃止予定になり、Lリリースで削除される予定です。概ね、ドライバを開発している少数の開発者にのみ影響するでしょう。あなたにも影響した場合、お勧めの対処方法は、nova のソースコード中であなたの開発を継続することです。

OpenStack Image Service (Glance)

主要な新機能

  • 非同期処理
  • glance.store を独自のライブラリとして分離
  • メタデーター定義カタログ
  • ダウンロードしているイメージ毎の制限ポリシー
  • scrubber サービスが拡張され、ノード間にまたがる複数の glance-api サーバーを1サービスで対応可能に

既知の問題

アップグレード時の注意点

  • Glance の更新/廃止予定/削除済みオプション一覧は http://docs.openstack.org/trunk/config-reference/content/glance-conf-changes-master.html で参照できます。
  • パブリックイメージがアップロード可能なのは、今回デフォルトで admin のみになりました。以前の挙動と同じにしたい場合は、publicize_image フラグを編集して、ロールの制限を削除して下さい。
  • DBテーブルの UTF-8 対応の要件と確認が必須になりました。DB sync 中に glance-manage コマンドがこの件のエラーを出力する場合、運用者はテーブルと既存のデータの UTF-8 化を手動で行う必要があります。

OpenStack Dashboard (Horizon)

主要な新機能

Sahara

OpenStackのデータプロセッシングのプロジェクト(Sahara)が正式にJunoに取り込まれ、Horizonはデータプロセッシングの管理を幅広くサポートしました。ジョブをトラッキングできるうえ、様々なデータタイプを利用するためのクラスタを記述・ビルドできます。

Neutron

JunoのNeutronには、以下の新しい機能が追加されました。

  • DVR (分散仮想ルータ)
  • L3 HA のサポート
  • IPv6 サブネットモード

Horizonはこれら新しい機能をサポートします。これによりさらに柔軟にSDNを設定できます。

Neutronの既存機能であるMACアドレス学習拡張機能をHorizonでサポートしました。

Glance

Juno で、Glance はメタデータ定義の管理機能を導入しました。これは、イメージ、ボリューム、アグリゲート、フレーバを含む様々なタイプのリソースに使用されるメタデータの定義をユーザが登録できるようにしたものです。Horizon はこれらのメタデータタグの表示・編集に対応しました。

Cinder

Cinder API のサポートをより充実させる努力が引き続き行われ、Cinder が提供するいくつかの機能が Juno リリースの Horizon で新たにサポートされました。Horizon からボリュームのバックアップを Swift に保存できるようになりました。また、作成したボリュームバックアップからボリュームを復元できるようになりました。

これまでサポートされておらず Juno リリースで Horizon によるサポートが追加された、上記以外の Cinder API の機能としては以下があります。

  • スナップショット状態の手動設定機能
  • ボリューム状態の手動設定機能
  • ボリュームをイメージとしてアップロードする機能
  • ボリュームの種別の変更
  • QoS (サービス品質) サポート

Trove

Trove は多くの種類のデータストア (mysql, redis, mongodb など) をサポートすることできます。ユーザーは、データベースインスタンス作成時にクラウドオペレーターがサポートしているデータストアのリストからデータストアを選択できるようになりました。

差分データベースバックアップの利用と差分バックアップからのリストアがサポートされました。

Neutron ベースのクラウド対応を改善する為、今回、ユーザがデータベースインスタンスに直接アクセスできるようにする為に、ユーザがデータベースインスタンス作成時にNICを指定できるようになりました。

Nova

新しいNovaインスタンスのアクションパネルは、現在のプロジェクトのすべてのインスタンスについて、アクション結果のリストを提供します。ユーザーは他のユーザーが操作した結果のエラーやアクションを確認できます。

管理者はホストの退避ができるようになりました。すべてのインスタンスを他のホストにマイグレーションさせる仕組みを提供することでシステムメンテナンスを助けます。

プラグインサポートの改善

Horizonのプラグインシステムについて、Junoリリースで引き続き改善。 改善点のいくつか:

  • 特定AngularJSモジュールのプラグインを追加するためのサポート
  • 静的ファイルを追加するためのサポート。例えばCSS、JS、画像など
  • 例外を追加する機能
  • 順序の問題を修正
  • その他の多数のバグ修正

RBACサポートの強化

Horizonでロールベースのアクセス制御(RBAC)をよりサポートするための継続的な取り組みで、より多くのサービスのビューでユーザーがアクションへアクセスできるかを決定するRBACチェックが強化されました。新たにサポートされたサービスは、Compute、Networking、および Orchestration です。これらの変更により、ただの「member」と「admin」よりも細かい粒度のアクセス制御をオペレーターが実装することができます。

ユーザー管理パネル(ドメイン、プロジェクト、ユーザー、ロール、グループ)も、ビューレベルでRBACをサポートするように変換されています。認証パネルは管理ダッシュボードから独自の「ユーザー管理」のダッシュボードに移動され、単独のポリシーでアクセシビリティが決定されます。これはプロジェクトと管理ダッシュボードで重複に近いコンテンツを単一ビューに集約する第一歩です。単一ビューはロールを広い範囲でサポートします。

UX の変更

Juno では Horizon は Bootstrap v3 を 利用するように移行しました。Horizonは過去いくつかのリリースでは Bootstrap の古いバージョンに固定されたままでした。今回の変更により、現在 Horizon は Bootstrap フレームワークで、多くのバグの修正と全体的な改善を行うことができます。ルックアンドフィールは多くの部分で Havana リリースと一貫性が保たれています。

JavaScriptライブラリの抽出

Horizonチームの継続的な努力の一環として、より論理的なピースにリポジトリを分割しています。Horizonが依存するすべてのサードパーティのJavaScriptライブラリはHorizonのコードベースから削除され、代わりにPython xstaticパッケージが使用されています。xstatic形式はHorizonが構築されているDjangoフレームワークで簡単に使用することができます。現在JavaScriptライブラリは他のPythonの依存ライブラリのように、Horizon内で利用されます。

LESSからSCSSへ変更

HorizonでサポートされているスタイルシートはLESSではなくSCSSを利用するように変換されています。この変更は、pythonでLESSコンパイラのサポートが普及しないために必要でした。Bootstrap 3 LESSスタイルシートの一部は、既存のpythonベースのLESSコンパイラでサポートされてなく、この変更により、私たちはBootstrap 3にアップグレードすることもできました。

既知の問題

エクステンションにおけるレンダリング問題

Bootstrap 3 使用の変更は、Horizon トップ上で書かされたコンテンツのエクステンションでレンダリング問題の原因になりえます。これらのほとんどは単純な CSS クラス名の置き換えで修正されました。これらの問題は、ボタンとパネルコンテント幅において最初に確認されたものです。

オンラインでの圧縮

SCSS への移行において、Horizon がデバッグモード以外の場合にオンラインでの圧縮を使用すると問題が発生することがあります。オフライン圧縮は前のリリース同様に正しく動作します。

Neutron L3 HA

The HA property is updateable in the UI, however, the migration itself fails on the agent. https://bugs.launchpad.net/horizon/+bug/1378525

アップグレードー時の注意

  • FLAVOR_EXTRA_KEYS 設定は廃止予定になりました。この設定を使用していた部分は、 nova と glance の API を直接呼び出すようになりました。
  • FLAVOR_EXTRA_KEYS setting deprecated. The use of this key has been replaced with direct calls to the nova and glance api as appropriate.

OpenStack Identity (Keystone)

主要な新機能

  • Keystoneサイト関認証連携(Keystone-to-Keystone Federation)機能が実験的にサポートされました。1つのKeystoneインスタンスがIdentity Providerに、その他がService Providerとして動作します。(訳注:用語はSAMLを参照)BP
  • PKIトークンのユーザは、既存のPKIトークンをzlibで圧縮する機能を追加したPKIZプロバイダを利用できるようになりました。BP
  • PKI認証トークンのハッシングアルゴリズムが設定可能になりました。(デフォルトはこれまでどおりMD5ですが、KeystoneチームではSHA256への移行を推奨します。)
  • ドメインごとの認証ドライバ設定(identity-driver-configuration-per-domain)に、任意のインターネットドメイン名を指定できるようになりました。(任意の階層構造のドメイン名を指定できます。)(例:customer.cloud.example.com)
  • LDAP認証のバックエンドにおいて、ユーザの属性値としてdescriptionを取り扱えるようになりました。
  • Identity API v3において、(RESTの)リクエストがJSONスキーマで検証されるようになりました。BP
  • 複数の認証バックエンド構成において、任意のリソースID(UUID)から任意のバックエンドへの対応付けが出来るようになりました。BP
  • keystoneclient.middleware.auth_tokenkeystonemiddleware.auth_tokenリポジトリに移動されました。[1]
  • Identity API v3がサービスカタログを取得するための、GET /v3/auth/catalogをサポートしました。BP
  • サイト間認証連携に関するイベント、及び、サイトローカルのロールの割り当て操作を契機にCADF(監査)通知が生成するようになりました。[2]BP
  • 特定のポリシー群(=ポリシーファイル)を1つ以上の特定のエンドポイントに対応付けて割り当てることが出来るようになりました。BP
  • ルートAPIエンドポイントで、Accept: application/json-homeヘッダを持つリクエストに対して、JSON-Homeドキュメントを返すようになりました。BP
  • OS-EP-FILTERを利用して、より簡単に、特定のエンドポイントをサービスカタログ(クライアント向け)から取り除くことが出来るようになりました。BP
  • 認証情報(credential)管理APIが、ユーザごとにフィルタリングできるようになりました。(GET /v3/credentials?user_id={user_id})BP
  • サービスカタログや利用可能なプロジェクトの範囲、利用可能なドメインの範囲などの認証に関係するデータを取得するための、汎用的なAPIエンドポイントが新たに利用できるようになりました。BP
  • LDAP利用時に、ユーザのenabled属性をLDAPのlockにマッピングするようになりました。(ブール値は反転させて格納しています)
  • CA証明書がLDAPS接続に対して設定できるようになりました。
  • Templated catalogバックエンドがIdentity API v3のサービスカタログを生成出来るようになりました。
  • v3のサービスカタログに、サービス名が追加されました。
  • サービスが名前でフィルタリング出来るようになりました。( GET /v3/services?name={service_name})

既知の問題

LDAP検索結果のページ単位表示(LDAP paged search results)はpython-ldap 2.4では動作しません

python-ldap 2.4を利用した環境で、LDAP認証バックエンドにおいて検索結果のページ単位表示を有効にした場合、AttributeErrorになります。これはpython-ldapのAPIが後方非互換であることが原因です。この問題を解決するためには次のような方法があります。

  • keystone.confの"[ldap]"セクションの"page_size"を0にして、ページ単位の結果表示機能を無効化
  • python-ldapを2.3.xにダウングレード

LDAP検索結果のページ単位表示(LDAP paged search results)はpython-ldap 2.4では動作しません

python-ldap 2.4を利用した環境で、LDAP認証バックエンドにおいて検索結果のページ単位表示を有効にした場合、AttributeErrorになります。これはpython-ldapのAPIが後方非互換であることが原因です。この問題を解決するためには次のような方法があります。

  • keystone.confの"[ldap]"セクションの"page_size"を0にして、ページ単位の結果表示機能を無効化
  • python-ldapを2.3.xにダウングレード

この問題へ対応する修正案は既に提案されており、Junoのアップデート版で利用可能になる見込みです。詳細は https://bugs.launchpad.net/keystone/+bug/1381768 を参照してください。

アップグレード時の注意

  • 簡単にKeystoneの機能を試用できるように、デフォルトのトークンプロバイダはPKIではなくUUIDとなっています。BP
  • Havanaより前のリリースからのデータベース移行は廃止されました。JunoへのアップグレードはHavanaもしくはIcehouseの環境から行う必要があります。BP
  • 更新、削除予定、削除となった Keystone のオプションの全リストは http://docs.openstack.org/trunk/config-reference/content/keystone-conf-changes-master.html にあります。
    • token_apiメソッドはすべて非推奨(deprecated)になりました。BP
    • 以前に非推奨とされたtenantという用語を含むLDAP設定オプションはprojectという用語を含むオプションに置き換えられました。
    • Identityバックエンドから、assignmentバックエンドに対してプロキシされていたメソッドはすべて削除されました。(IdentityバックエンドからAssignmentバックエンドが分離された際の暫定的措置が削除されました)。影響を受けるのは公式ソースコードツリーに含まれないAPI extensionに限られます。BP
    • keystone.confにおいて、クラス名のみを指定した認証プラグインのロードは非推奨(deprecated)になりました。替わりにcustom-method-name = custom_package.CustomClassの記載にてプラグインをロードし、 methods = custom-method-name, passwordの形式で記載されたリストとして認証方式のシーケンスを定義する方式を推奨します。BP
    • ソースコードに含まれるトークンドライバ(keystone.token.backends)はkeystone.token.persistence.backendsに移されました。互換性維持のためにProxyオブジェクトが実装されています。 keystone.conf[token]セクションにあるdriver オプションにデフォルトでなくなったロケーションが指定された場合は、移動後のロケーションに更新するように勧告されます。
  • token以外でのKVSバックエンドドライバ利用は非推奨(deprecated)になりました。BP
  • LDAP/AD設定: "tenant"という単語を含んでいる設定オプションはすべて非推奨(deprecated)になりました。替わりに"project"という単語に置き換えた名前の設定オプションが推奨されます。(例: tenant_id_attributeproject_id_attributeに置き換えられます)

OpenStack Network Service (Neutron)

主要な新機能

  • DB マイグレーションのリファクタリングと新しいタイムライン
  • 分散仮想ルーター (DVR) のサポート
  • テナントネットワークでの全面的な IPv6 サポート
  • L3 agent の高可用性機能
  • iptables に代替となるセキュリティグループでの ipset のサポート (オプションで設定可能)
  • L3 agent の性能改善
  • RPC 通信の oslo.messaging ライブラリへの移行
  • デバイスのセキュリティグループルール取得の RPC 呼び出しのリファクタリング (大幅な性能改善)
  • Juno では以下のプラグインが追加されました
    • A10 Networks LBaaS ドライバー (LBaaS V1 API 向け)
    • Arista L3 ルーティングプラグイン
    • Big Switch L3 ルーティングプラグイン
    • Brocade L3 ルーティングプラグイン
    • Cisco APIC ML2 ドライバー (L3 ルーティングプラグインも含む).
    • Cisco CSR L3 ルーティングプラグイン
    • Freescale SDN ML2 メカニズムドライバー
    • Nuage Networks ML2 メカニズムドライバー
    • SR-IOV 対応 NIC ML2 メカニズムドライバー

既知の問題

  • DVR と HA L3 はこのリリースで追加された機能です。 Neutron チームは Kilo リリースではこれらの機能を production ready (製品品質) だと宣言したいと思っています。これらの機能を致命的な問題にはならない環境でテストし、問題は何でも報告してください。
  • FWaaS は依然として実験的機能扱いです。一つのテナントに複数のファイアウォールを作成できないからです。

アップグレード時の注意

  • 更新、削除予定、削除となった Neutron のオプションの全リストは http://docs.openstack.org/trunk/config-reference/content/neutron-conf-changes-master.html にあります。
  • リソース依存の属性単位のポリシーは適用されなくなりました。したがって、Icehouse で存在したいくつかの古いポリシーは必要なくなりました (例えば "get_port:binding:vnic_type": "rule:admin_or_owner")。
  • 以下のプラグインが Juno で廃止予定になりました。
    • Cisco Nexus Sub-Plugin (なお Nexus 1000V Sub-Plugin は Juno でも継続してサポートされます)
    • Mellanox プラグイン
    • Ryu プラグイン
  • API での XML サポートは廃止予定になりました。ユーザーはできるだけ早く API 通信で JSON を使うように変更してください。 XML サポートは Kilo (2015.1) リリースで削除される予定です。

OpenStack Block Storage (Cinder)

主要な新機能

  • ボリュームの複製のサポート
  • Consistency Groups および Consistency Groups のスナップショットのサポート
  • ボリュームプールのサポート
  • 国際化対応の完了
  • イメージアップロード時の Glance の保護属性の指定
  • ボリュームコピー操作での使用帯域の制限機能
  • ボリューム数に基づくスケジューリングの追加

新規のドライバー、プラグイン

  • Datera
  • Fujitsu Eternus
  • Fusion IO
  • Hitachi HBSD
  • Huawei
  • Nimble
  • Prophetstor
  • Pure
  • XtremIO
  • Oracle ZFS

既知の問題

現時点ではありません。

アップグレード時の注意

OpenStack Telemetry (Ceilometer)

主要な新機能

  • 水平スケールアウトされた複数のcentral agentへのメトリック収集処理のパーティショニングのサポート
  • アラーム検出処理のパーティショニングを、直に実装されていたプロトコルによる方式からtoozと連携した新方式に変更
  • SQLAlchemyバックエンドの性能,スケーラビリティの向上により、PoCや小規模環境でMySQLもしくはPostgreSQLがメータリングに使用できるようになりました。
  • Ironic、もしくはその他のエージェントからの通知を経由して、IPMIからのハードウェア指向な監視機能を追加
  • より柔軟で効率的なSNMP監視:
    • 複数のNSMPメトリックをドメインごとにまとめて1回のバッチ的なクエリで取得
    • SNMPポーリングで、TripleOがデプロイしたノードを動的に検出
    • Ceilometerが収集するSNMPメトリックの取得範囲を容易に拡張可能になりました
    • 複数の主要なメトリックからの代数的な変換により新規のメトリックを算出できるようになりました
  • アラームを別のデータベースに分割して保存するオプションが追加されました
  • RPCメータリングメッセージの替わりに、通知を利用するオプションが追加されました
  • NeutronのLBaaS、FWaaS、VPNaaSサービスのメータリング
  • 新しいXenAPI computeのインスペクタ
  • MongoDBとHbaseストレージドライバへのイベント保存機能を追加(これまではSQLAlchemyに限定)
  • ディスクインスタンスのデバイスごとのメータリング機能を追加
  • os-profilerデータ収集にCeilometerを利用
  • クラウド管理者ガイドへ新規にTelemetryの章を追加

既知の問題

  • 1381600 新しいceilometer-agent-ipmiは、ipmitoolから字句解析できない文字を受信するとサンプルデータの送信に失敗します。

アップグレード時の注意

OpenStack Orchestration (Heat)

主要な新機能

  • スタックアップデート中の失敗から回復
  • 進行中のスタックアップデートのキャンセルとロールバックのAPI
  • 新しいリソースタイプの実装
    • OS::Glance::Image
    • OS::Heat::SwiftSignal
      • SwiftにWait Condition(およびSoftware Deployment)データを保存するオプションを提供
    • OS::Heat::StructuredDeployments
      • 複数のライフサイクルイベントのためのグループコードを単一のデプロイメントリソースへ
    • OS::Heat::SoftwareDeployments
      • 相互依存のサーバクラスタをデプロイする際の循環依存を回避する方法を提供
    • OS::Heat::SoftwareComponent
    • OS::Nova::ServerGroup
    • OS::Sahara::NodeGroupTemplate
    • OS::Sahara::ClusterTemplate
  • スタックアップデート時に前回使用されたパラメータを利用
  • スケーラビリティの改善
  • ネストされたスタックの階層表示を改善

既知の問題

現時点ではありません。

アップグレード時の注意

  • 更新、削除予定、削除となった Heat のオプションの全リストは

http://docs.openstack.org/trunk/config-reference/content/heat-conf-changes-master.html にあります。

OpenStack Database service (Trove)

主要な新機能

  • 作成された MySQL インスタンス間の非同期レプリケーション(マスタースレーブレプリカ)対応
  • MongoDB クラスタに最初に対応した、新しいクラスタリングAPIの導入
  • ネットワーク機能に Neutron を使用した OpenStack ソリューション上への Trove のデプロイ対応。以前は nova-network のみ対応していました。
  • PostgreSQL データストアインスタンスのプロビジョニング対応
  • Couchbase のバックアップ/リストア対応
  • オプションとして、Trove ボリュームに使用する Cinder バックエンドの限定に対応
  • Trove データベースにおける datastore 設定パラメータ定義のカスタマイズ対応
  • 全データストアのタイプとバージョン一覧を単一リクエストで取得可能に

他の追加的な改善

  • Trove コンポーネントの随所で、ログレベルを改善する為のログの監査
  • stevedore の追加サポートによる、拡張のロードメカニズムの改善
  • データ用ボリューム対応は、今回データストア単位ベースに
  • グループ一覧と詳細の設定で、タイムスタンプとインスタンスカウントの作成・更新を追加

既知の問題

  • 1333852: Trove はフレーバの UUID に対応していません。Icehouse 版 Trove の API 応答と整合性を持たせるため、Trove のフレーバ API は数字IDを持つフレーバを要求します。

1333852: Trove はフレーバの UUID に対応していません。Icehouse 版 Trove の API 応答と整合性を持たせるため、Trove のフレーバ API は数字IDを持つフレーバを要求します。

アップグレード時の注意

現時点ではありません

None yet

OpenStack Data Processing (Sahara)

主要な新機能

主要な新機能

  • データ処理の UIで は OpenStack Dashboard (horizon) に完全に統合されました。
  • CDH 5.x のサポートが追加されました。
  • Apache Spark のサポートが追加されました。サポートされるバージョンは 0.9.1 と 1.0.0 です。Elastic data processing (EDP) エンジンは大幅にリファクタリングされ、 Oozie 以外のワークフローエンジンがサポートされました。
  • これまでの 1.2.1 と 2.3.0 に加え、Apache Hadoop 2.4.1 のサポートが追加されました。バージョン 2.3.0 は Juno では廃止予定扱いになりました。
  • マルチリージョンでのデプロイがサポートされました。
  • Hadoop の Swift 認証がkeystone トラストを使うようになりました。設定ファイルに認証情報を記載せずに Hadoop は Swift のデータにアクセスできるようになりました。
  • Ceilometer 連携が追加されました。Sahara はすべてのクラスターの状態変化を Ceilometer に追加するようになりました。
  • クラスターのプロビジョニング時のエラー処理が改善されました。スケーリング中にエラーが発生した場合、クラスターは元の状態にロールバックされます。
  • ノードグループへのセキュリティグループの指定が追加されました。必要なポートをオープンした際に Sahara がセキュリティグループを自動で作成することもできます。
  • Sahara で 分散モードが実装され、sahara-all プロセスが sahara-all と sahara-engine に分離されました。sahara-api と sahara-engine のインスタンスを複数異なるホスト上で実行できます。この機能はアルファリリースである点には留意してください。

既知の問題

  • Bug 1271349: 名前空間経由で VM にアクセスする際に Sahara がルート権限を必要とする

アップグレード時の注意

メインのバイナリ名の sahara-all への変更

Sahara の全サービスをまとめて開始するには `sahara-api` ではなく `sahara-all` を使用してください。

sahara.conf のアップグレード

独自の auth_token ミドルウェア設定オプションから共通の設定オプションに移行しました。設定ファイルをアップグレードするには、以下の以前の設定オプションを新しいものに置き換えてください。

  • "os_auth_protocol", "os_auth_host", "os_auth_port" -> "[keystone_authtoken]/auth_uri" と "[keystone_authtoken]/identity_uri"
  • "os_admin_username" -> "[keystone_authtoken]/admin_user"
  • "os_admin_password" -> "[keystone_authtoken]/admin_password"
  • "os_admin_tenant_name" -> "[keystone_authtoken]/admin_tenant_name"

sahara.openstack.common.db の oslo コードを使用していましたが、oslo.db ライブラリを使用するようになりました。

また、sqlite データベースはサポートされなくなりました。Sahara のデータベースバックエンドとしては MySQL か PostgreSQL を使用してください。sqlite のサポートがなくなったのは、バージョン間でのデータベースマイグレーションで必要な ALTER COLUMN と DROP COLUMN コマンドが sqlite ではサポートされていない (今後のサポート予定もなし、http://www.sqlite.org/omitted.html 参照) ためです。

設定ファイルの詳しい情報は Sahara レポジトリのファイル "etc/sahara/sahara.conf.sample" を参照してください。

Sahara Dashboard の OpenStack Dashboard への統合

Sahara Dashboard は Juno リリースでリリースされません。この機能は OpenStack Dashboard で提供され、設定なしで使えるようになっています。 Sahara UI は OpenStack Dashboard の「プロジェクト」→「データ処理」タブにあります。

Dashboard で Sahara UI を有効にするには Keystone に Sahara を適切に登録する必要がある点には注意してください。

HEAT インフラストラクチャーエンジン使用時の VM ユーザー名の変更

HEAT インフラストラクチャーエンジン ("infrastructure_engine=heat") が変更され、インスタンスのユーザー名のルールが direct エンジンの場合と同じになりました。変更前は HEAT エンジンを使って Sahara が作成した VM のユーザー名は常に 'ec2-user' でした。変更後は、ドキュメントの説明通りにイメージレジストリからユーザー名が取得されるようになっています。

この変更は、変更前に HEAT インフラストラクチャーエンジンを使って作成されたクラスターに対して後方互換性がない点に注意してください。クラスターはそのまま動作し続けますが、これらのクラスターに対してスケーリング操作を実行するのは推奨しません。

anti affinity 機能の実装の変更

Juno リリースからは、anti affinity 機能は server groups を使って実装されています。ユーザーから見ると Sahara の動作に違いはありませんが、内部に変更がありました。

  • server group オブジェクトは anti affinity 機能が有効になっている場合に作成されます。
  • 新しい実装では、同じプロセスでない場合でも、anti affinity の影響をうけるインスタンスは同じホスト上に配置することができません。つまり、anti affinity を 'datanode' プロセスと 'tasktracker' プロセスで有効にした場合、以前の実装では 'datenode' プロセスのインスタンスと 'tasktracker' プロセスの別のインスタンスを 1 つのホストに配置されることを認めていましたが、新しい実装ではこれらのインスタンスは別のホストになることが保証されます。

注意点として、新しい実装は新しいクラスターについてのみ適用されます。 Icehouse で作成されたクラスターのスケーリングを行う場合は、以前の実装が適用されます。


OpenStack Documentation (ドキュメント)

  • このリリースでは、新しく OpenStack Architecture Design Guide (OpenStack アーキテクチャー設計ガイド) を執筆するために、OpenStack Foundation が 5 日間のブックスプリントを開催しました。このドキュメントは、汎用、コンピュート中心、ストレージ中心、ネットワーク中心、複数サイト、ハイブリッド、大規模スケーラブル、特定用途のクラウドに向いたアーキテクチャーを説明しています。
  • インストールガイドは、数多くのクリーンアップと標準化を全体的に実施しました。一般的なメッセージキュー (RabbitMQ) を使用しました。より良い学習の機会と一貫性のため、openstack-config (crudini) コマンドを設定ファイルの編集に置き換えました。MariaDB や MySQL を置き換えられるよう、汎用的な SQL データベースを参照しました。auth_port と auth_protocol を identity_uri で置き換えました。auth_host を auth_uri で置き換えました。インストールガイドは、ディストリビューションごとに全体を通してテストされ、公式なリリースパッケージが一般公開されるまで継続的に発行されました。
  • High Availability Guide (高可用性ガイド) は、独立したレビューチームを持ち、独自のリポジトリーに移動されました。
  • Security Guide (セキュリティガイド) は、専門的なレビューチームを持ち、独自のリポジトリーに移動されました。
  • 長い API リファレンスドキュメントは、API Complete Reference (API 完全リファレンス) に集約するために、目的を見直されました。
  • ユーザーガイドは、OpenStack Database の情報を追加しました。
  • コマンドラインリファレンスは、新バージョンのクライアントで更新されました。また、OpenStack 共通クライアント、trove-manage クライアント、Data processing (sahara) クライアントに関する章を追加しました。
  • OpenStack Cloud Administrator Guide (OpenStack クラウド管理者ガイド) は、Telemetry (ceilometer) に関する情報を追加しました。