Jump to: navigation, search

ReleaseNotes/Juno

Revision as of 16:52, 17 October 2014 by Takashige (talk | contribs)

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 Features

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

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

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

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

Glance Features

In Juno, Glance introduced the ability to manage a catalog of metadata definitions where users can register the metadata definitions to be used on various resource types including images, volumes, aggregates, and flavors. Support for viewing and editing the assignment of these metadata tags is included in Horizon.

Cinder Features

In a continued effort to provide fuller API support, several features supported by Cinder are now supported in Horizon in the Juno release. Users can now utilize swift to store volume backups from Horizon as well as restore volumes from these backups.

Other features of the Cinder API not previously supported by Horizon added in Juno include:

  • Enabling resetting the state of a snapshot
  • Enabling resetting the state of a volume
  • Supporting upload-to-image
  • Volume retype
  • QoS (quality of service) support

Trove

Trove supports potentially using numerous different datastores, e.g., mysql, redis, mongodb. Users can now select from the list of datastores supported by the cloud operator when creating their database instances.

Another addition is support for utilizing and restoring from incremental database backups.

To improve support for Neutron based clouds, when creating a database instance, the user can now specify the NIC for the database instance on creation allowing direct access to the instance by the user.

Nova

The new nova instance actions panel provides a list of all actions taken on all instances in the current project allowing users to view resulting errors or actions taken by other users on those instances.

Administrators now have the ability to evacuate hosts off hypervisors which can aid in system maintenance by providing a mechanism to migrate all instances to other hosts.

Improved Plugin Support

The plugin system in Horizon continued to improve in the Juno release. Some of those improvements:

  • Support for adding plugin specific AngularJS modules
  • Support for adding static files, e.g., CSS, JS, images
  • Ability to add exceptions
  • Fixing ordering issues
  • Numerous other bug fixes

Enhanced RBAC support

In an ongoing effort to support richer role based access control (RBAC) in Horizon, the views for several more services were enhanced with RBAC checks to determine user access to actions. The newly supported services are compute, network and orchestration. These changes allow operators to implement finer grained access control than just "member" and "admin".

The identity panels (domains, projects, users, roles, groups) have also been converted to support RBAC at the view level. The identity panels have been moved from the admin dashboard into their own 'Identity' dashboard and accessibility is determined by policies alone. This is the first step toward consolidating the near duplicate content of the project and admin dashboards into single views supporting a wide range of roles.

UX Changes

In Juno, Horizon transitioned to utilizing Bootstrap v3. Horizon had been pinned to an older version of Bootstrap for several releases. This change now allows Horizon to pick up numerous bug fixes and overall improvements in the Bootstrap framework. The look and feel remains mainly consistent with the Havana release.

JavaScript Libraries Extracted

As part of the Horizon team's ongoing efforts to split the repository into more logical pieces, all the 3rd party JavaScript libraries that Horizon depends on have been removed from the Horizon code base and python xstatic packages have been utilized instead. The xstatic format allows for easy consumption by the Django framework Horizon is built on. Now JavaScript libraries are utilized like any other python dependency in Horizon.

Conversion from LESS to SCSS

The supported stylesheets in Horizon have been converted to utilize SCSS rather than LESS. The change was necessary due to a prevalent lack of support for LESS compilers in python. This change also allowed us to upgrade to Bootstrap 3, as parts of the Bootstrap 3 LESS stylesheets were not supported by existing python based LESS compilers.

既知の問題

Rendering issues in extensions

The conversion to utilizing Bootstrap v3 can cause content extensions written on top of Horizon to have rendering issues. Most of these are fixed by a simple CSS class name substitutions. These issues are primarily seen with buttons and panel content widths.

Online Compression

With the move to SCSS, there may be issues with utilizing online compression in non-DEBUG mode in Horizon. Offline compression continues to work as in previous releases.

Neutron L3 HA

The HA property is updateable in the UI, however, the migration itself fails on the agent.

アップグレード時の注意

  • 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を参照)
  • PKIトークンのユーザは、既存のPKIトークンをzlibで圧縮する機能を追加したPKIZプロバイダを利用できるようになりました。
  • PKI認証トークンのハッシングアルゴリズムが設定可能になりました。(デフォルトはこれまでどおりMD5ですが、KeystoneチームではSHA256への移行を推奨します。)
  • ドメインごとの認証ドライバ設定(identity-driver-configuration-per-domain)に、任意のインターネットドメイン名を指定できるようになりました。(任意の階層構造のドメイン名を指定できます。)(例:customer.cloud.example.com)
  • LDAP認証のバックエンドにおいて、ユーザの属性値としてdescriptionを取り扱えるようになりました。
  • Identity API v3において、(RESTの)リクエストがJSONスキーマで検証されるようになりました。
  • 複数の認証バックエンド構成において、任意のリソースIDに対して、格納するバックエンドをそれぞれ任意に選択出来るようになりました。
  • In the case of multiple identity backends, Keystone can now map arbitrary resource IDs to arbitrary backends.
  • keystoneclient.middleware.auth_tokenkeystonemiddleware.auth_tokenリポジトリに移動しました。
  • keystoneclient.middleware.auth_token has been moved into it's own repository, keystonemiddleware.auth_token.
  • Identity API v3がサービスカタログを取得するための、GET /v3/auth/catalogをサポートしました。
  • サイト間認証連携に関するイベント、及び、サイトローカルのロールの割り当て操作を契機にCADF(監査)通知が生成するようになりました。
  • Keystone can now associate a given policy blob with one or more endpoints.
  • ルートAPIエンドポイントで、Accept: application/json-homeヘッダを持つリクエストに対して、JSON形式のホームドキュメントを返すようになりました。
  • OS-EP-FILTERを利用して、より簡単に特定のエンドポイントをサービスカタログ(クライアント向け)から取り除くことが出来るようになりました。\
  • 証明書収集APをがユーザごとにフィルタ指定できるようになりました。(GET /v3/credentials?user_id={user_id})
  • The credentials collection API is now filterable per associated user (GET /v3/credentials?user_id={user_id}).
  • サービスカタログや利用可能なプロジェクトの範囲、利用可能なドメインの範囲などの認証に関係するデータを取得するための、汎用的なAPIエンドポイントが新たに利用できるようになりました。
  • LDAP利用時に、ユーザのenabled属性をLDAPのlockにマッピングするようになりました。(ブール値は反転させて格納しています)
  • CA認証ファイルがLDAPS接続に対して設定できるようになりました。
  • A CA certificate file is now configurable for LDAPS connections.
  • 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にダウングレード

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

アップグレード時の注意

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

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

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

既知の問題

現時点ではありません。

アップグレード時の注意

OpenStack Telemetry (Ceilometer)

主要な新機能

  • Support for partitioning metric collection load across horizontally scaled-out central agents
  • New method of partitioning alarm evaluation load using tooz coordination, as opposed to a hand-crafted protocol
  • Much improved SQLAlchemy storage performance & scalability, so that MySQL or PostgreSQL can be used as the metering store for PoCs or small deployments
  • Support for hardware-oriented monitoring of IPMI sensors via notifications from either Ironic or a new standalone agent
  • More flexible & efficient SNMP monitoring:
    • batching queries for multiple SNMP metrics into a single call to each daemon
    • dynamic discovery of nodes deployed by TripleO for SNMP polling
    • the ability to more easily extend the range of SNMP metrics that ceilometer gathers
    • the ability to derive new metrics from arithmetic transformations applied to multiple primary metrics
  • Metering of Neutron networking services: LBaaS, FWaaS & VPNaaS
  • New XenAPI compute inspector
  • Support for persisting events via the MongoDB & Hbase storage drivers (previously limited to SQLAlchemy)
  • Support for per-device metering of instance disks
  • Use of ceilometer as a collector for os-profiler data
  • New Telemetry section of the Cloud Administrator Guide

既知の問題

  • 1381600 The new ceilometer-agent-ipmi fails to emit any samples when it encounters unparseable data from ipmitool.

アップグレード時の注意

OpenStack Orchestration (Heat)

主要な新機能

  • スタックアップデート中の失敗から回復
  • 進行中のスタックアップデートのキャンセルとロールバックのAPI
  • 新しいリソースタイプの実装
    • OS::Glance::Image
    • OS::Heat::SwiftSignal
      • Provides the option to store Wait Condition (and Software Deployment) data in Swift
    • OS::Heat::StructuredDeployments
      • Groups code for multiple lifecycle events into a single deployment resource
    • OS::Heat::SoftwareDeployments
      • Provides a way of avoiding circular dependencies when deploying an interdependent cluster of servers
    • OS::Heat::SoftwareComponent
    • OS::Nova::ServerGroup
    • OS::Sahara::NodeGroupTemplate
    • OS::Sahara::ClusterTemplate
  • スタックアップデート時に前回使用されたパラメータを利用
  • スケーラビリティの改善
  • ネストされたスタックの階層表示を改善

既知の問題

None yet

アップグレード時の注意

OpenStack Database service (Trove)

主要な新機能

  • Support for Asynchronous Replication (master-slave replicas) between provisioned mysql instances.
  • Introduction of a new Clustering API with initial support for MongoDB clusters.
  • Support for deploying Trove on an OpenStack solution that is using Neutron for networking. Prior to this, only nova-network was supported.
  • Support for provisioning PostgreSQL datastore instances.
  • Backup and Restore support for Couchbase.
  • Support to optionally restrict the Cinder backend used for Trove volumes.
  • Support for defining custom datastore configuration parameters in the Trove database (using mgmt API).
  • The ability to list all datastore types and versions in a single call

Other Incremental Improvements

  • Logging audit to improve log levels throughout the trove components.
  • The extensions loading mechanism was improved by adding support for stevedore.
  • The ability to support volumes for data is now on a per datastore bases.
  • Created and updated timestamps and instance count were added to configuration groups list and details calls.

既知の問題

  • 1333852: Trove does not support flavor UUIDs -- the Trove flavors API requires flavors with a numerical ID in order to be consistent with the API response for icehouse Trove.

アップグレード時の注意

None yet

OpenStack Data Processing (Sahara)

New Key Features

  • Data processing UI was fully merged into OpenStack Dashboard (horizon).
  • Support of CDH 5.x was added.
  • Support of Apache Spark was added. Supported versions are 0.9.1 and 1.0.0. Elastic data processing (EDP) engine was refactored a lot to support non-Oozie workflow engines.
  • Support of Apache Hadoop 2.4.1 was added in addition to existing 1.2.1 and 2.3.0. Version 2.3.0 is deprecated in Juno.
  • Support of multi region deployments.
  • Hadoop Swift authentication using keystone trust mechanism. Now Hadoop can access data in Swift without storing credentials in config files.
  • Ceilometer integration was added. Now Sahara notifies Ceilometer about all cluster state changes.
  • Cluster provisioning error handling was improved. If something goes wrong during scaling, cluster will rollback to original state.
  • Added ability to specify security groups for a node group. Also Sahara could automatically create security group with only required ports open.
  • Implemented distributed mode for Sahara: sahara-all process is decoupled into sahara-api and sahara-engine. You can run several instances of sahara-api and sahara-engine on different hosts. Note that the feature implementation is considered to be in alpha-state.

既知の問題

  • Bug 1271349: Sahara requires root privileges to access VMs via namespaces.

アップグレード時の注意

Main binary renamed to sahara-all

Please, note that you should use `sahara-all` instead of `sahara-api` to start the All-In-One Sahara.

sahara.conf upgrade

We've migrated from custom auth_token middleware config options to the common config options. To update your config file you should replace the following old config opts with the new ones.

  • "os_auth_protocol", "os_auth_host", "os_auth_port" -> "[keystone_authtoken]/auth_uri" and "[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"

We've replaced oslo code from sahara.openstack.common.db by usage of oslo.db library.

Also sqlite database is not supported anymore. Please use MySQL or PostgreSQL db backends for Sahara. Sqlite support was dropped because it doesn't support (and not going to support, see http://www.sqlite.org/omitted.html) ALTER COLUMN and DROP COLUMN commands required for DB migrations between versions.

You can find more info about config file options in Sahara repository in file "etc/sahara/sahara.conf.sample".

Sahara Dashboard was merged into OpenStack Dashboard

The Sahara Dashboard is not available in Juno release. Instead it's functionality is provided by OpenStack Dashboard out of the box. The Sahara UI is available in OpenStack Dashboard in "Project" -> "Data Processing" tab.

Note that you have to properly register Sahara in Keystone in order for Sahara UI in the Dashboard to work.

VM user name changed for HEAT infrastructure engine

We've updated HEAT infrastructure engine ("infrastructure_engine=heat") to use the same rules for instance user name as in direct engine. Before the change user name for VMs created by Sahara using HEAT engine was always 'ec2-user'. Now user name is taken from the image registry as it is described in the documentation.

Note, this change breaks Sahara backward compatibility for clusters created using HEAT infrastructure engine before the change. Clusters will continue to operate, but it is not recommended to perform scale operation over them.

Anti affinity implementation changed

Starting with Juno release anti affinity feature is implemented using server groups. There should not be much difference in Sahara behavior from user perspective, but there are internal changes:

  • Server group object will be created if anti affinity feature is enabled.
  • New implementation doesn't allow several affected instances on the same host even if they don't have common processes. So, if anti affinity enabled for 'datanode' and 'tasktracker' processes, previous implementation allowed to have instance with 'datanode' process and other instance with 'tasktracker' process on one host. New implementation guarantees that instances will be on different hosts.

Note, new implementation will be applied for new clusters only. Old implementation will be applied if user scales cluster created in 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) に関する情報を追加しました。