Jump to: navigation, search

ReleaseNotes/Liberty

Revision as of 01:06, 18 October 2015 by Mitsuhiro Tanino (talk | contribs)
Other languages:
Deutsch • ‎English • ‎日本語 • ‎한국어 • ‎中文(简体)‎ • ‎中文(台灣)‎

OpenStack Liberty リリースノート

Contents

OpenStack Object Storage (Swift)

リリースノート全文は https://github.com/openstack/swift/blob/master/CHANGELOG を参照して下さい。

新機能

  • object-server とレプリケーションサーバーの設定ファイルの [DEFAULT] 設定セクション中の servers_per_port 設定値を正の整数にすることで、object-servers-per-disk (ディスク単位のオブジェクトサーバー) を複数にすることができるようになりました。この設定の整数値は、Ring 内の1つのローカルポートに対して、何個の object-server ワーカーがリクエストを処理するかを決定します。このモードでは、親となる swift-object-server プロセスが元々のユーザの実行を継続します (小さいポート番号のバインドが必要な場合はユーザーは root になります)。このプロセスは Ring 内で定義された全てのポートをバインドします。その後、親プロセスはリッスンソケット毎に指定された数のワーカーを fork します。子プロセス (ポート毎のサーバー) は特権を破棄し、object-server ワーカーの通常の動作と同じ動作をしますが、1つ例外があります: Ring はディスク単位に一意なポートを持ち、object-server は1つのディスクに対するリクエストのみ処理します。親プロセスはワーカープロセスが死んだ事を検知し、(適切なリッスンソケットを持つ) ワーカープロセスを再起動します。Ringu ファイルの更新があり、そのサーバーに新しいポートを持つデバイスが見つかった場合、親プロセスは不足しているサーバを新たに実行します。また、Ring にもはや存在しないポートがある場合、それらのポートを持っていた余分のサーバを停止します。最長でも、 object-server 設定ファイル中の ring_check_interval パラメーター (デフォルトは 15秒) で設定された期間内には、 Ring ファイルの内容が反映されます。テストでは、既存の workers 設定に比べ、このデプロイ設定 (値 3) が応答遅延を最も削減し、秒間リクエストを改善し、低速なディスク I/O の影響が分離されます。この機能を使用するには、各デバイスは異なるポートを使用して Ring に追加する必要があります。
  • object server には container_update_timeout 設定 (デフォルトは 1秒) があります。この値は、オブジェクトの PUT 操作の結果を返す前に、 object server が container server による一覧更新を待つ秒数です。従来、object server は container server の応答を最大3秒待っていました。新しい動作では、クラスタ中の container server がビジーの際 (例えば、コンテナが非常に大きい場合)、オブジェクトの PUT 時の遅延を動的に削減します。この値を必要以上に小さく設定すると、クライアントのオブジェクト PUT 時に、そのオブジェクトがすぐに一覧表示に現れないことになります。この値を必要以上に大きく設定すると、container server がビジーの際にクライアントへの遅延が大きくなることになります。
  • Static Large Object (SLO) セグメントの範囲指定ができるようになりました。
  • SLO PUT でセグメント単位の統合チェックをしなくてもよくなりました。従来、マニフェスト中で参照されている各セグメントは、正しい etag とバイト設定を必要としていました。今回、これらのフィールドに「null」を指定して、指定されたセグメントに対する特定のチェックをスキップできるようになりました。
  • Replicator 設定で今回 "rsync_module" という値がサポートされました。この値を指定すると、デバイス単位の rsync モジュールを利用できるようになります。この設定により、運用者は、Swift クラスタ中のレプリケーションを細かく調整し、特定のデバイスに対するレプリケーションのディスク I/O を分離できます。詳細な情報と設定例は、ドキュメントとサンプル設定ファイルを参照して下さい。
  • Ring の変更
    • ポート番号は最早、パーティションの配置に使用されなくなりました。これにより、ドライブ毎に object server を 1 つ動かしている小規模クラスタ中のデータ分散が改善されます。 サーバー単位に object server を 1 つ動かしているクラスタには影響はありません。
    • 一連の Ring 管理操作のテストと確認をより簡単に行うため、ring-builder-analyzer ツールを追加しました。
    • Ring 検証は今回、同じデバイスに対するパーティション配置が複数回行われた場合、警告を出すようになりました。この状態は、Ring 中のデバイスが平準化されていない場合に発生します (例えば、2サーバのうち1台が明らかに大きな容量を持っているなど)。
  • TempURLの修正 (CVE-2015-5223)

    tempurl への PUT で、他のデータへのポインタを作ることができなくなりました。特に、 tempurl への PUT による DLO オブジェクトマニフェストの作成が禁止されました。これにより、DLO オブジェクトマニフェストを作成し、その tempurl への PUT を使ってオブジェクトに対する HEAD を行うといった、tempurl への PUT を使ったプライベートデータに対する発見可能性攻撃が防止できます。

  • SwiftはStatsDのメトリクスをポリシー毎に出力するようになりました。
  • Keystoneを利用した際に、サービストークンがリクエストに含まれていない場合にも、サービスアカウントに対する COPY リクエストが成功する可能性があるという問題を修正しました。
  • Bulk アップロードで、アップロードされたアーカイブ内のファイルのユーザ xattr が、作成されたオブジェクトのメタデータとして保存されるようになりました
  • "handoff_first" か ”handoff_delete”が設定されている場合、 object-replicator で はwarning logが出力されます。
  • swift-recon で object-replicatorの失敗数が有効になりました。
  • ストレージポリシーのサポートが swift-dispersion ツールに追加されました。
  • Keystone v3 のドメインが swift-dispersion ツールでサポートされました。
  • domain_remap ミドルウェアの情報が /info エンドポイントに追加されました。
  • domain_remap ミドルウェアの設定で "default_reseller_prefix" のサポートが追加されました。
  • "rsync_compress" という設定で rsync の圧縮機能が使えるようになりました。これを True に設定すると、別のリージョンのデバイスへの転送時にのみ転送データが圧縮されます。これによりリージョン間のデータ転送が高速化できる可能性があります。
  • swift-recon で時刻同期チェックのオプションが追加されました。(--timeオプション)
  • account-reaper が大きなアカウントに対してより高速に動作するようになりました。
  • これ以外にも多くの小さなバグ修正や改善がありました。

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

  • 依存パッケージの変更
    • sixパッケージが必要になりました。これは現在進められている Python3 対応に向けた変更です。
    • Python 2.6のサポートを終了しました。
  • 設定の変更
    • 直近のバージョンの Python では 1 リクエストあたりの HTTP ヘッダー数を100に制限しています。この数値はカスタムミドルウェアでは小さすぎる場合があります。swift.conf 中の "extra_header_count" という新しい設定値を使って許容するヘッダー数を増やすことができます。
    • "run_pause" 設定は "interval" に名前が変更されました (現在は run_pause のままでも動作します)。将来的にはrun_pause 設定は削除される可能性があります。
  • バージョン付き書き込み (Object Versioning) 機能のリファクタリングが行われ、ミドルウェアとして再実装されました。 proxy の pipeline に明示的にversioned_writes ミドルウェアを追加する必要がありますが、 container サーバーの設定で ”allow_versions” を有効にしている場合にはこの設定を削除したり無効にしたりしてはいけません。既存のcontainer サーバー設定は既存のコンテナーで versioningを有効にするのに必要です。詳しいアップグレード時の注意については http://swift.openstack.org/middleware.html#how-to-enable-object-versioning-in-a-swift-cluster を参照してください。

OpenStack Networking (Neutron)

新機能

  • Neutron は IPv6 サブネットに対する CIDR の自動割当において IPv6 プレフィックスデリゲーションに対応しました。この機能の利用、設定に関する詳細な情報は、OpenStack Networking Guide を参照してください。
  • Neutron で QoS API が利用できるようになりました。最初の機能としてポートレベルの帯域幅制限機能が提供されます。この機能の API、CLI、設定、追加情報は [1] にあります。
  • ルータ高可用性(L3 HA/VRRP)が、レイヤー2ポピュレーション(l2pop)が有効の場合にも機能するようになりました。
  • VPNaaS リファレンスドライバーが HA ルータ上で動作するようになりました。
  • HA ルータの VRRP トラフィック用に使用されるネットワークを、特定のセグメントタイプまたは物理ネットワークタグを使用して設定できるようになりました。[2]
  • OVS エージェントをデータプレーンの接続性に影響を与えずに再起動できるようになりました。
  • Neutron は、ネットワークに対してロールベースアクセス制御 (RBAC) が利用できるようになりました。[3]
  • LBaaS V2 リファレンスドライバーが Octavia (事業者品質のスケーラブルで高信頼なロードバランサプラットフォーム) ベースになりました。
  • LBaaS V2 API は今回のリリースで実験的機能 (experimental) でなくなりました。安定版 (stable) となりました。
  • Neutron は、管理者が手動でエージェントをスケジューリングする方法を提供するようになりました。これにより、テナントが利用できるようにする前に、ホストのリソースをテストできるようになりました。[4]
  • プラグイン型の IP アドレス管理 (IPAM) フレームワークが実装されました。これにより、サードパーティー製 IPAM や代替機能を利用可能になります。デフォルトでは、以前からの非プラグイン版の IPAM が有効になります。

廃止予定や廃止されたプラグインとドライバー

  • metaplugin は Liberty リリースで削除されました。
  • IBM SDN-VE 一体型プラグインは Liberty リリースで削除されました。
  • Cisco N1kV 一体型プラグインは Liberty リリースで削除されました(ML2 メカニズムドライバーで置換されました)
  • Embrane プラグインは廃止予定になり、Mitaka リリースで廃止されます。

廃止予定の機能

  • FWaaS API は Liberty では実験的機能(experimental) の扱いです。今後、現在の API が Mitaka で削除され、(Neutron チームが開発中の)新しい FWaaS API で置換される予定です。
  • LBaaS V1 API は廃止予定となり、将来のリリースで削除される予定です。今後は LBaaS V2 API を使用すべきです。
  • L3 エージェントの external_network_bridge オプションは廃止予定となりました。 bridge_mapping の physnet 指定を使用してください。詳細な情報は、ネットワーキングガイドの Network Node の節を参照してください。http://docs.openstack.org/networking-guide/scenario_legacy_ovs.html

性能に関する留意事項

  • Trusty Tahr に含まれるカーネル (3.13) は、ネームスペース数の増加に伴い「ip netns exec」の実行時の性能が線形に劣化します。スケーラビリティーが重要な場合、より後のバージョンのカーネル (例えば 3.19) を使うべきです。【3.13 のどのバージョンでこの問題が発生するかを明記する必要がある。ほとんどのバージョンではこの問題は既に修正済みである】


[注意] この問題は Trusty Thar の 3.13.0-36.63 以降のカーネルバージョンで修正済みです。詳細は次の URL を参照して下さい。 https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1328088

  • Octavia ドライバー使用時には、ハードウェア仮想化のない環境での Neutron-LBaaS ロードバランサの作成が遅くなる可能性があります。これは、ハードウェア仮想化なしの環境では QEMU が KVM アクセラレータではなく TCG アクセラレータを使用するためです。Octavia ドライバーを仮想環境内で使用する場合、コンピュートノード上でハードウェア仮想化を有効にするか、nested virtualization (訳注:仮想化環境上の仮想化支援機構) を有効にすることをお勧めします。KVM 内で実行される DevStack で nested virtualization をセットアップする詳細な方法は、次のリンクを参照してください。http://docs.openstack.org/developer/devstack/guides/devstack-with-nested-kvm.html

OpenStack Compute (Nova)

新機能

API

スケジューラー

scheduler の構造革新は継続中で、これに伴い重要なバグ修正が行われました。

Cells v2

Cells v2 は現在使用可能な状態にありませんが、Cells v2 を支えるインフラの幾つかが追加されました。

Compute ドライバの機能

Libvirt
  • Libvirt ボリュームドライバは os-brick ライブラリを使うようになりました。これにより、Nova と CInder の間でボリュームの検出と削除ロジックを共用できるようになりました。(http://specs.openstack.org/openstack/nova-specs/specs/liberty/implemented/use-os-brick-library.html)
  • live_migration_completion_timeout と live_migration_progress_timeout 設定パラメータが追加されました。これらは、ライブマイグレーションの実行時間に上限を設け、特に処理が中断された場合に効果を発揮します。(https://launchpad.net/bugs/1429220)
  • ライブマイグレーションの間、最大ダウンタイム設定を管理・計測する機能が追加されました。これにより、

大きなサイズのゲストのライブマイグレーションが無事終わる可能性を向上します (https://launchpad.net/bugs/1429220)

VMware
Hyper-V
Ironic

その他の機能

アップグレード時の注意

  • If you are coming from Kilo stable, please make sure you have fully upgraded to the latest release of that lineage before deploying Liberty. Due to bug https://bugs.launchpad.net/nova/+bug/1474074 versions of Kilo from before the fix will be problematic when talking to Liberty nodes.
  • Allocation ratios for RAM and CPU are now defined within the nova-compute service (so per compute node). Ratios also need to be provided for the scheduler service. Depending on whether a compute node is running Kilo or Liberty, the allocation ratios will behave differently : if the compute node is running Kilo then the CPU and RAM allocation ratios for that compute node will be the ones defaulted in the controller's nova.conf file.Or, if the compute node is Liberty then you'll be able to set a per-compute allocation ratio for both CPU and RAM. In order to leave the operator providing the allocation ratios to all the compute nodes, the default allocation ratio will be set in nova.conf to 0.0 (even for the controller). That doesn't mean that allocation ratios will actually be 0.0, just that the operator needs to provide those before the next release (ie. Mitaka). To be clear, the default allocation ratios are still 16.0 for cpu_allocation_ratio and 1.5 for ram_allocation_ratio.
  • nova-compute should be upgraded to Liberty code before upgrading Neutron services per the new "network-vif-deleted" event: https://review.openstack.org/#/c/187871/
  • Rootwrap filters must be updated after release to add the 'touch' command.
    • There is a race condition between imagebackend and imagecache mentioned in the Launchpad Bug 1256838.
    • In this case if base image is deleted by ImageCacheManager while imagebackend is copying the image to instance path, then the instance goes in to error state.
    • In order to resolve this issue, there is a need to add 'touch' command in compute.filters along with the change https://review.openstack.org/#/c/217579/.
    • In case of a race condition, when libvirt has changed the base file ownership to libvirt-qemu while imagebackend is copying the image, then we get permission denied error on updating the file access time using os.utime. To resolve this error we need to update the base file access time with root user privileges using 'touch' command.
  • The DiskFilter is now part of the scheduler_default_filters in Liberty per https://review.openstack.org/#/c/207942/ .
  • Per https://review.openstack.org/#/c/103916/ you can now only map one vCenter cluster to a single nova-compute node.
  • The Libvirt driver parallels has been renamed to virtuozzo
  • Orphaned tables - iscsi_targets, volumes - have been removed.
  • The default paste.ini has been updated to use the new v2.1 API for all endpoints, and the v3 endpoint has been removed. A compatibility mode middlewear is used to relax the v2.1 validation for the /v2 and /v1.1 endpoints.
  • The code for DB schema downgrades has now been removed: https://blueprints.launchpad.net/nova/+spec/nova-no-downward-sql-migration
  • The default DB driver we test against is now pymysql rather than Python-MySQL
  • The "powervm" hv_type shim has been removed. This only affects users of the PowerVC driver on stackforge which are using older images with hv_type=powervm in the image metadata.
  • The minimum required version of libvirt in the Mitaka release will be 0.10.2. Support for libvirt < 0.10.2 is deprecated in Liberty: https://review.openstack.org/#/c/183220/
  • The libvirt.remove_unused_kernels config option is deprecated for removal and now defaults to True: https://review.openstack.org/#/c/182315/

非推奨の機能

  • The ability to disable in tree API extensions has been deprecated (https://blueprints.launchpad.net/nova/+spec/nova-api-deprecate-extensions)
  • The novaclient.v1_1 module has been deprecated [[5]][[6]] since 2.21.0 and we are going to remove it in the first python-novaclient release in Mitaka.
  • Method `novaclient.client.get_client_class` is deprecated [[7]] since 2.29.0. The method will be removed in Mitaka.
  • The mute_weight_value option on weighers has been deprecated, including for use with Cells.
  • The remove_unused_kernels configuration option for the Libvirt driver is now deprecated.
  • The minimum recommended version of vCenter for use with the vcenter driver is now 5.1.0. In Liberty this is logged as a warning, in Mitaka support for versions lower than 5.1.0 will be removed.
  • API v3 specific components have all been deprecated and removed from the default paste.ini

OpenStack Telemetry (Ceilometer)

Key New Features

  • Creation of Aodh to handle alarming service.
  • Metadata caching - reduced load of nova API polling.
  • Declarative meters
    • Ability to generate meters by defining meter definition template.
    • Ability to define specific SNMP meters to poll.
  • Support for data publishing from Ceilometer to Gnocchi.
  • Mandatory limit - limit restricted querying is enforced. The limit must be explicitly provided on queries, otherwise the result set is restricted to a default limit.
  • Distributed, coordinated notification agents - support for workload partitioning across multiple notification agents.
  • Events RBAC support.
  • PowerVM hypervisor support.
  • Improved MongoDB query support - performance improvement to statistic calculations.
  • Additional meter support:
    • Magnum meters
    • DBaaS meters
    • DNSaaS meters

Gnocchi Features

  • Initial influxdb driver implemented.

Aodh Features

  • Event alarms - ability to trigger an action when an event is received.
  • Trust support in alarms link.

Upgrade Notes

  • The name of some middleware used by ceilometer changed in a backward incompatible way. Before upgrading, edit the paste.ini file for ceilometer to change oslo.middleware to oslo_middleware. For example, using sed -ri 's/oslo\.middleware/oslo_middleware/' api_paste.ini
  • The notification agent is a core service to collecting data in Ceilometer. It now handles all transformations and publishing. Polling agents now defer all processing to notification agents, and must be deployed in tandem.
  • A mandatory limit is applied to each request. If no limit is given, it will be restricted to a default limit.

Deprecated Features

  • Ceilometer Alarms is deprecated in favour or Aodh.
  • RPC publisher and collector is deprecated in favour of a topic based notifier publisher.
  • Non-metric meters are still deprecated, and are to be removed in a future release.

OpenStack Identity (Keystone)

新機能

  • Experimental: Domain specific configuration options can be stored in SQL instead of configuration files, using the new REST APIs.
  • Experimental: Keystone now supports tokenless authorization with X.509 SSL client certificate.
  • Configuring per-Identity Provider WebSSO is now supported.
  • openstack_user_domain and openstack_project_domain attributes were added to SAML assertion in order to map user and project domains, respectively.
  • The credentials list call can now have its results filtered by credential type.
  • Support was improved for out-of-tree drivers by defining stable Driver Interfaces.
  • Several features were hardened, including Fernet tokens, Federation, domain specific configurations from database and role assignments.
  • Certain variables in keystone.conf now have options, which determine if the user's setting is valid.

アップグレード時の注意

  • The EC2 token middleware, deprecated in Juno, is no longer available in keystone. It has been moved to the keystonemiddleware package.
  • The compute_port configuration option, deprecated in Juno, is no longer available.
  • The XML middleware stub has been removed, so references to it must be removed from the keystone-paste.ini configuration file.
  • stats_monitoring and stats_reporting paste filters have been removed, so references to it must be removed from the keystone-paste.ini configuration file.
  • The external authentication plugins ExternalDefault, ExternalDomain, LegacyDefaultDomain, and LegacyDomain, deprecated in Icehouse, are no longer available.
  • keystone.conf now references entrypoint names for drivers. For example, the drivers are now specified as "sql", "ldap", "uuid", rather than the full module path. See the sample configuration file for other examples.
  • We now expose entrypoints for the keystone-manage command instead of a file.
  • Schema downgrades via keystone-manage db_sync are no longer supported. Only upgrades are supported.
  • Features that were "extensions" in previous releases (OAuth delegation, Federated Identity support, Endpoint Policy, etc) are now enabled by default.
  • A new secure_proxy_ssl_header configuration option is available when running keystone behind a proxy.
  • Several configuration options have been deprecated, renamed, or moved to new sections in the keystone.conf file.
  • Domain name information can now be used in policy rules with the attribute domain_name.

非推奨の機能

  • Running Keystone in Eventlet remains deprecated and will be removed in the Mitaka release.
  • Using LDAP as the resource backend, i.e for projects and domains, is now deprecated and will be removed in the Mitaka release.
  • Using the full path to the driver class is deprecated in favor of using the entrypoint. In the Mitaka release, the entrypoint must be used.
  • In the [resource] and [role] sections of the keystone.conf file, not specifying the driver and using the assignment driver is deprecated. In the Mitaka release, the resource and role drivers will default to the SQL driver.
  • In keystone-paste.ini, using paste.filter_factory is deprecated in favor of the "use" directive, specifying an entrypoint.
  • Not specifying a domain during a create user, group or project call, which relied on falling back to the default domain, is now deprecated and will be removed in the N release.
  • Certain deprecated methods from the assignment manager were removed in favor of the same methods in the [resource] and [role] manager.

OpenStack Block Storage (Cinder)

新機能

  • Generic image caching 機能がサポートされました。これにより、良く利用されるVM用イメージはキャッシュされコピーオンライトによって高速に新規ボリュームが作成可能です。 Read docs for more info
  • 無停止バックアップ機能のサポート Read docs for more info.
  • ボリュームの Consistency Groups のクローン機能のサポート Read docs for more info.
  • バックエンドストレージの機能リストの取得サポート (extra-specs に対応する機能一覧の取得) [8]
  • 階層化 quota のサポート
  • Thin provisioned LVM が利用可能な場合、LVMバックエンドのデフォルトとして利用します
  • ドライバの初期化失敗時に、訂正した cinder service-list を表示することが出来ます
  • ボリュームマイグレーション管理機能の改善
    • 以前のボリュームマイグレーション実行結果を確認できます
    • 管理者は、 cinder list コマンドでボリュームマイグレーションの状態を監視できます
    • マイグレーション中に他ボリューム操作を防止するために、新しいボリュームの状態 "maintenance" が追加されました
    • マイグレーション完了後のバックエンドでのボリューム名・ボリュームIDの一貫性が改善されました

アップグレード時の注意

  • Kilo またはそれ以前のc-volまたはc-apiのサービスと、Libertyの各サービスの同時実行を防止するために、RPC APIへのパラメータの変更とObjectへの変換が導入されました

非推奨の機能

  • シンプル・チャンススケジューラが削除されました
  • HDS HUS iSCSI ドライバが廃止されました
  • Coraid ドライバが廃止されました
  • Solaris iSCSI ドライバが廃止されました
  • アタッチ中のボリュームに対するイメージアップロード機能で、 --force オプションが削除されました
  • v1 APIが廃止予定になりました

OpenStack Orchestration (Heat)

新機能

Convergence

convergence は新しいオーケストレーションエンジンで、heat ツリーの中で開発が進められています。Liberty では、convergence エンジンを使用する利点として以下のような点があります。

  • リソース処理の並列度の改善 (大規模テンプレートのスケーラビリティーの改善)
  • すでに更新が処理中のものに対して stack-update が実行可能
  • heat-engine 障害に対する処理の改善 (開発中)

convergence エンジンを有効にするには、/etc/heat/heat/conf ファイルの [DEFAULT] セクションに convergence_engine=true を設定して、heat-engine を再起動します。一度有効にすると、その後作成されるスタックは convergence エンジンを使用するようになりますが、既存のスタックに対する処理ではそれまでのエンジンを引き続き使用されます。

Convergence has not been production tested and thus should be considered beta quality - use with caution. For the Liberty release, we recommend enabling convergence for the purposes of evaluation and scale testing. We will be considering making convergence the default engine in the Mitaka cycle. Convergence specific bugs are tracked in launchpad with the convergence-bugs tag.

Conditional resource exposure

Only resources actually installed in the cloud services are made available to users. Operators can further control resources available to users with standard policy rules in policy.json on per-resource type basis.

heat_template_version: 2015-10-15

2015-10-15 indicates that the YAML document is a HOT template and it may contain features added and/or removed up until the Liberty release.

  • Removes the Fn::Select function (path based get_attr/get_param references should be used instead).
  • If no <attribute name> is specified for calls to get_attr, a dict of all attributes is returned, e.g. { get_attr: [<resource name>]}.
  • Adds new str_split intrinsic function
  • Adds support for passing multiple lists to the existing list_join function.
  • Adds support for parsing map/list data to str_replace and list_join (they will be json serialized automatically)

REST API/heatclient additions

  • Stacks can now be assigned with a set of tags, and stack-list can filter and sort through those tags
  • "heat stack-preview ..." will return a preview of changes for a proposed stack-update
  • "heat template-validate --show-nested ..." will also validate all template resources and return nested data useful for building user interfaces
  • "heat resource-type-template --template-type hot ..." generates a template in HOT format
  • "heat resource-type-list" only shows types available to the user, and can filter results by name, version and support_status
  • "heat template-version-list" lists available template versions
  • "heat template-function-list ..." lists available functions for a template version

Enhancements to existing resources

新規リソース

以下のリソースがこの Heat リソースで追加されました。

[1] These existed Kilo as contrib resources as they were for non-integrated projects. These resources are now distributed with Heat as Big Tent projects.

[2] These existed Kilo as contrib resources as they require a user with an admin role. They are now distributed with Heat. Operators now have ability to hide them from under-privileged users by modifyig policy.json (for reference, OS::Nova::Flavor is hidden from non-admin users in default policy file supplied).

[3] These existed in Kilo as contrib resources as they used an approach not endorsed by the Heat project. They are now distributed with heat and documented as UNSUPPORTED.

[4] These resources are for projects which are not yet OpenStack Big Tent projects, so are documented as UNSUPPORTED

With the new OS::Keystone::* resources it is now be possible for cloud operators to use heat templates to manage Keystone service catalog entries and users.

非推奨のリソースプロパティー

すでに多くのリソースプロパティーが DEPRECATED (削除予定) としてドキュメントに記載されていました。 これらのうち 15 個が今回 HIDDEN (隠し状態) 扱いになりました。これらは、ドキュメントからは削除される予定ですが、作成済みのスタックやテンプレートは Heat のアップグレード後も引き続き動作します。どのリソースプロパティーと属性が利用可能かを確認するには、 リソースタイプレファレンスを参照してください。

アップグレード時の注意

設定の変更

/etc/heat/heat.conf [DEFAULT] セクションの注目すべき変更点

  • hidden_stack_tags が追加され、指定したタグ名が含まれるスタックは stack-list の結果に表示されません (デフォルトでは、sahara-create スタックを非表示にする data-processing-cluster リストされています)。
  • instance_user は非推奨になり、完全に削除されました。OS::Nova::Server リソースを使用して作成された Nova サーバーは、クラウドイメージのデフォルトのユーザー設定の構成でブートされるようになりました。 AWS::EC2::Instance は、以前として "ec2-user" を作成します。
  • max_resources_per_stack を -1 に設定して強制を無効にすることができるようになりました。
  • enable_cloud_watch_lite は、この REST API が非推奨となったため、デフォルトで false に設定されるようになりました。
  • default_software_config_transport に ZAQAR_MESSAGE のオプションが追加されました。
  • default_deployment_signal_transport に ZAQAR_SIGNAL のオプションが追加されました。
  • auth_encryption_key は正確に 32 文字で設定する必要がある旨が記載されるようになりました。
  • list_notifier_drivers は非推奨となり、削除されました。
  • ポリシーオプションが [oslo_policy] セクションに移動しました。
  • use_syslog_rfc_format が非推奨となり、デフォルト値は true となりました。

heat.conf のその他のセクションの注目すべき変更点:

  • バージョン指定なしの keystone url を指定するための [clients_keystone] auth_uri が追加されました。
  • [heat_api] ワーカーはデフォルトで 4 に設定されるようになりました (以前は 0 で、ホスト CPU 1 つあたりで作成されるワーカー数は 1 でした)。

ポリシーファイル /etc/heat/policy.json が per-resource-type のアクセスポリシーで設定できるようになりました。例:

   "resource_types:OS::Nova::Flavor": "rule:context_is_admin"

Upgrading from Kilo to Liberty

Progress has been made on supporting live sql migrations, however it is still recommended to bring down the heat service for the duration of the upgrade. Downward SQL schema migrations are no longer supported. A rollback to Kilo will require restoring a snapshot of the pre-upgrade database.

OpenStack Data Processing (Sahara)

新機能

  • New plugins and versions:
    • Ambari plugin with supports HDP 2.2 / 2.3
    • Apache Hadoop 2.7.1 was added, Apache Hadoop 2.6.0 was deprecated
    • CDH 5.4.0 was added with HA support for NameNode and ResourceManager
    • MapR 5.0.0 was added
    • Spark 1.3.1 was added, Spark 1.0.0 was deprecated
    • HDP 1.3.2 and Apache Hadoop 1.2.1 was removed
  • Added support for using Swift with Spark EDP jobs
  • Added support for Spark EDP jobs in CDH and Ambari plugins
  • Added support for public and protected resources
  • Started integration with OpenStack client
  • Added support for editing all Sahara resources
  • Added automatic Hadoop configuration for clusters
  • Direct engine is deprecated and will be removed in Mitaka release
  • Added OpenStack manila NFS shares as a storage backend option for job binaries and data sources
  • Added support for definition and use of configuration interfaces for EDP job templates

非推奨の機能

  • Direct provisioning engine
  • Apache Hadoop 2.6.0
  • Spark 1.0.0
  • All Hadoop 1.X removed

OpenStack Search (Searchlight)

今回が Searchlight の最初のリリースです。Searchlight は、ユーザーの検索要求をオフロードすることで、様々な OpenStack サービスの検索機能と検索性能を劇的に改善することを目的としています。Searchlight は、Keystone の RBAC ベースの、OpenStack サービスにまたがる検索を提供します。OpenStack サービスのデータを ElasticSearch に登録し、要求された検索クエリーに対するセキュリティーレイヤーを提供しています。ElasticSearch は Lucene を使った検索エンジンです。分散でスケーラブルな、リアルタイムに近い、多面的な、マルチテナントに対応した、全文検索エンジンで 、RESTful なウェブインタフェースを持っています。

Key New Features

インデックスが作成された新たなリソースタイプ

アップグレード時の注意

なし

非推奨の機能

なし

OpenStack DNS (Designate)

新機能

  • 実験的機能: Hook Point API
  • Horizon プラグインは別レポジトリーになりました
  • 削除済みドメインを除去 (purge) 機能
  • ドメイン単位の Ceilometer "exists" 定期イベント
  • 非同期アクション
    • Import
    • Export
  • designate-pool-manager の定期タスクでの active/passive フェールオーバー
  • OpenStack クライアント対応

追加された DNS Server バックエンド

  • InfoBlox
  • Designate

アップグレード時の注意

  • 新しいサービス designate-zone-manager
    • tooz が対応しているバックエンドを使用することを推奨します。
    • ZooKeeper が推奨ですが、 tooz が対応しているものであればどれも使用できます。
    • tooz バックエンドを使用しない場合は、すべての zone-manager がすべてのゾーンの所有権を持っているとみなします。その結果、1 時間あたり 'n' 個の "exists" メッセージが送られます。 'n' は zone-manager のプロセス数です。
  • designate-pool-manager は定期タスクでの active/passive フェールオーバーを行います。
    • tooz が対応しているバックエンドを使用することを推奨します。
    • tooz バックエンドを使用しない場合、すべての pool-manager がすべてのゾーンの所有権を持っているとみなします。その結果、定期タスクが複数回実行され、予期しない結果になる可能性があります。

非推奨の機能

  • V1 API
    • 将来的に削除予定です。 V1 に対して通信する Designate CLI インタフェースが必要な操作がまだあります。 Horizon パネルは V1 のみを使用しています。

OpenStack Messaging Service (Zaqar)

Key New Features

  • Pre-signed URL - A new REST API endpoint to support pre-signed URL, which provides enough control over the resource being shared, without compromising security.
  • Email Notification - A new task driver for notification service, which can take a Zaqar subscriber's email address. When there is a new message posted to the queue, the subscriber will receive the message by email.
  • Policy Support - Support fine-grained permission control with the policy.json file like most of the other OpenStack components.
  • Persistent Transport - Added support for websocket as a persistent transport alternative for Zaqar. Now users will be able to establish long-lived connections between their applications and Zaqar to interchange large amounts of data without the connection setup adding overhead.

OpenStack Dashboard (Horizon)

新機能

  • Plugin improvements – Horizon auto discovers JavaScript files for inclusion, and now has mechanisms for pluggable SCSS and Django template overrides.

アップグレード時の注意

OpenStack Trove (DBaaS)

新機能

  • Redis
    • Redis の設定グループ
    • クラスター対応
  • MongoDB
    • 1つのインスタンスのバックアップとリストア
    • ユーザー管理とデータベース管理
    • 設定グループ (Configuration Groups)
  • Percona XtraDB クラスターサーバー
    • クラスター対応
  • オペレーターによる、特定のデータストアに対してインスタンスフレーバーの関連付けをサポート
  • Horizon でのデータベースクラスターのサポート
  • データストアとバージョンの管理 API
  • Trove インスタンスを 1 つの管理テナントに作成できるようになりました。これにより、Nova インスタンスがユーザーに見えなくなります。

OpenStack Bare metal (Ironic)

Ironic はリリースモデルを変更し、開発サイクルの途中でもリリースを行うモデルになりました。 Liberty ではバージョン 4.0 がリリースされ、その後 2 回マイナーアップデートがありました。バージョン 4.2 が OpenStack 全体の Liberty リリースの1つとして扱われ、安定版の更新の対象となります。

詳細なリリースノートはこちらを参照してください: http://docs.openstack.org/developer/ironic/releasenotes/index.html

新機能

  • ハードウェア状態として "ENROLL" が追加されました。この状態は、新しく作成されたノードのデフォルトの状態となります。
  • "abort" 操作 (verb) が追加されました。これにより、ユーザーは特定の操作を進行中であっても中断できるようになります。
  • REST API で問い合わせとフィルタリングのサポートが改善されました。
  • CORS ミドルウェアのサポートが追加されました。

ハードウェアドライバー

  • ハードウェアドライバーに新しく BootInterface が追加されました。これは DeployInterface から機能を分離したものです。
  • iLO 仮想メディアドライバーが Swift なしで動作するようになりました。
  • Cisco IMC ドライバーが追加されました。
  • OCS ドライバーが追加されました。
  • UCS ドライバーが追加されました。
  • Wake-On-Lan Power ドライバーが追加されました。
  • ipmitool ドライバーが IPMI v1.5 に対応しました。
  • “APC MasterSwitchPlus” シリーズの PDU 向けの SNMP ドライバーがサポートされました。
  • pxe_ilo ドライバーが UEFI Secure Boot をサポートしました (iLO ドライバーの以前のリリースでは agent_ilo と iscsi_ilo だけが UEFI Secure Boot をサポートしていました)。
  • iRMC ドライバーに仮想メディアサポートが追加されました。
  • DRAC ドライバーに BIOS 設定が追加されました。
  • PXE ドライバーで GRUB2 がサポートされました。

非推奨の機能

  • DriverInterface のメソッド "vendor_passthru" と "driver_vendor_passthru" は削除されました。これらは Kilo で削除予定になっており、 @passthru デコレーターに置き換えられました。
  • Nova "baremetal" のデプロイメントからデータをインポートするマイグレーションツールは削除されました。
  • 定期タスク (periodic task) デコレーターの "parellel" オプションが削除予定になりました。
  • 削除予定であった 'admin_api' ポリシールールが削除されました。
  • 元々の "bash" デプロイ RAM ディスクのサポートが削除予定になり、 2 サイクル以内に削除されます。すべてのデプロイドライバーは ironic-python-agent プロジェクトを使用すべきです。

アップグレード時の注意

  • 新しく作成されたノードは、新しく追加された ENROLL 状態になります。以前は、ノードの初期状態は AVAILABLE でした。 AVAILABLE の場合、ハードウェアが準備ができる前に Nova に公開されてしまう可能性があります。
  • Kilo で API バージョンヘッダーが追加されました。そのため、Liberty API と通信しようとするクライアントは適切なバージョン文字列を各 HTTP リクエストで渡さなければいけません。現在の API バージョンは 1.14 です。

OpenStack Key Manager (Barbican)

新機能

  • Added the ability for project administrators to create certificate authorities per project. Also, project administrators are able to define and manage a set of preferred certificate authorities (CAs) per project. This allows projects to achieve project specific security domains.
  • Barbican now has per project quota support for limiting number of Barbican resources that can be created under a project. By default the quota is set to unlimited and can be overridden in Barbican configuration.
  • Support for a rotating master key which is used for wrapping project level keys. In this lightweight approach, only the project level key (KEK) is re-wrapped with new master key (MKEK). This is currently applicable only for the PKCS11 plug-in. (http://specs.openstack.org/openstack/barbican-specs/specs/liberty/add-crypto-mkek-rotation-support-lightweight.html)
  • Updated Barbican's root resource to return version information matching Keystone, Nova and Manila format. This is used by keystoneclient's versioned endpoint discovery feature.
  • Removed administrator endpoint as all operations are available on a regular endpoint. No separate endpoint is needed as access restrictions are enforced via Oslo policy.
  • Added configuration for enabling sqlalchemy pool for the management of SQL connections.
  • Added ability to list secrets which are accessible via ACL using GET /v1/secrets?acl-only=true request.
  • Improved functional test coverage around Barbican APIs related to ACL operations, RBAC policy and secrets.
  • Fixed issues around creation of SnakeOil CA plug-in instance.
  • Barbican client CLI can now take a Keystone token for authentication. Earlier only username and password based authentication was supported.
  • Barbican client now has ability to create and list certificate orders.

アップグレード時の注意

OpenStack Image Service (Glance)

Updated project guide that includes some details on operating, installing, configuring, developing to and using the service: http://docs.openstack.org/developer/glance/

新機能

アップグレード時の注意

  • python-glanceclient now defaults to using Glance API v2 and if v2 is unavailable, it will fallback to v1.
  • Dependencies for backend stores are now optionally installed corresponding to each store specified.
  • Some stores like swift, s3, vmware now have python 3 support.
  • Some new as well as updated default metadata definitions ship with the source code.
  • More python 3 support added to Glance API, and now continuous support is extended by the means of tests to ensure compatibility.
  • utf-8 is now the default charset for the backend MySQL DB.
  • Migration scripts have been updated to perform a sanity check for the table charset.
  • 'ram_disk' and 'kernel' properties can now be null in the schema and 'id' is now read only attribute for v2 API.
  • A configuration option client_socket_timeout has been added to take advantage of the recent eventlet socket timeout behaviour.
  • A configuration option scrub_pool_size has been added to set the number of parallel threads that a scrubber should run and defaults to 1.
  • An important bug that allowed to change the image status using the Glance v1 API has now been fixed.

非推奨の機能

  • The experimental Catalog Index Service has been removed and now is a separate project called Searchlight.
  • The configuration options scrubber_datadir, cleanup_scrubber and cleanup_scrubber_time have been removed following the removal of the file backed queuing for scrubber.

OpenStack Shared File System (Manila)

新機能

  • Enabled support for availability zones.
  • Added administrator API components to share instances.
  • Added pool weigher which allows Manila scheduler to place new shares on pools with existing share servers.
  • Support for share migration from one hostpool to another hostpool (experimental).
  • Added shared extend capability in the generic driver.
  • Support for adding consistency groups, which allow snapshots for multiple filesystem shares to created at the same point in time (experimental).
  • Support for consistency groups in the NetApp cDOT driver and generic driver.
  • Support for oversubscription in thin provisioning.
  • New Windows SMB driver:
    • Support for handling Windows service instances and exporting SMB shares.
  • Added new osapi_share_workers configuration option to improve the total throughput of the Manila API service.
  • Added share hooks feature, which allows actions to be performed before and after share drive methods calls, call additional periodic hook for each 'N' tick, and update the results of a driver's action.
  • Improvements to the NetApp cDOT driver:
    • Added variables netapp:dedup, and netapp:compression when creating the flexvol that backs up a new manila share.
    • Added manage/unmanage support and shrink_share support.
    • Support for extended_share API component.
    • Support for netapp-lib PyPI project to communicate with storage arrays.
  • Improvements to the HP 3PAR driver:
    • Added reporting of dedupe, thin provisioning and hp3par_flash_cache capabilities. This allows share types and the CapabilitiesFilter to place shares on hosts with the requested capabilities.
    • Added share server support.
  • Improvements to the Huawei Manila driver:
    • Added support for storage pools, extend_share, manage_existing, shrink_share, read-only share, smartcache and smartpartition.
    • Added reporting of dedupe, thin provisioning and compression capabilities.
  • Added access-level support to the VNX Manila driver.
  • Added support for the Manila HDS HNAS driver.
  • Added GlusterFS native driver.
    • GlusterFS drivers can now specify the list of compatible share layouts.
  • Added microversion support (v2 API).

非推奨の機能

  • The share_reset_status API component is deprecated and replaced by share_instance_reset_status.