3.5. Red Hat OpenStack Platform 16.1.4 メンテナーンスリリース (2021 年 3 月 17 日)

本リリースノートには主に、今回リリースされた Red Hat OpenStack Platform のデプロイメント時に考慮すべきテクノロジープレビューの項目、推奨事項、既知の問題、非推奨になった機能について記載します。

3.5.1. アドバイザリーの一覧

本リリースには、以下のアドバイザリーが含まれています。

RHSA-2021:0915
中程度: Red Hat OpenStack Platform 16.1.4 (python-django) に関するセキュリティー更新
RHSA-2021:0916
中程度: Red Hat OpenStack Platform 16.1.4 (etcd) に関するセキュリティー更新
RHBA-2021:0817
Red Hat OpenStack Platform 16.1.4 director のバグ修正アドバイザリー
RHEA-2021:0918
Red Hat OpenStack Platform 16.1.4 director イメージのバグ修正アドバイザリー
RHEA-2021:0919
Red Hat OpenStack Platform 16.1.4 コンテナーのバグ修正アドバイザリー

3.5.2. バグ修正

以下のバグは、Red Hat OpenStack Platform の本リリースで修正されています。

BZ#1728142
今回の更新以前は、cinder service-get-log コマンドで渡される際に --server オプションが無視されていました。これにより、特定ホストだけのログではなくすべてのホストのログが返されていました。今回の更新により、--server オプションを使用することで、指定したホストのログに正しく絞り込まれるようになりました。
BZ#1828889
今回の更新以前は、OVN メカニズムドライバーは、そのエージェント一覧と Networking (neutron) サービスのデータベースに保管された一覧を正しくマージしませんでした。今回の更新により、API が結果を返す前に、OVN および Networking サービスのデータベースからの結果がマージされるようになりました。
BZ#1847907
データベースは all_tenants キーを解析できないため、ボリュームの譲渡要求で渡されるキーは削除されます。このキーを削除すると、ユーザーは譲渡名を使用して特定のボリューム譲渡の詳細を表示することができます。今回の更新以前は、all_tenants キーは管理ユーザーについてのみ削除されていました。つまり、管理者以外のユーザーは譲渡名を使用してボリュームの譲渡を表示することができませんでした。今回の更新により、管理者以外のユーザーについても all_tenants キーが削除され、管理者以外が譲渡名を使用してボリュームの譲渡を表示できるようになりました。
BZ#1874936
今回の更新以前は、事前にプロビジョニングされたノード上での TLS-E が--server cannot be used without providing --domain というメッセージと共に失敗していました。今回の更新により、IDM ドメイン名が DNS で最初に解決する ipa-ca により検出され、続いて取得した IP アドレスで逆引きの DNS ルックアップを実行するようになりました。リバースルックアップに必要な PTR レコードを、手動で追加しなければならない場合があります。
BZ#1881476

今回の更新以前は、ユーザーが標準の tag_from_label: "{version}-{release}"ではなくカスタムのタグ (例:tag: "latest"または tag: "16.1") を使用するように ContainerImagePrepare パラメーターを設定した場合、コンテナーは最新のコンテナーイメージに更新されませんでした。

今回の更新により、ユーザーがデプロイメントアクション (更新を含む) を実行すると、コンテナーイメージが必ずフェッチされるようになりました。イメージ ID を実行中のコンテナーに対して確認し、最新のイメージが使用されるようにコンテナーを再ビルドする必要があるかどうかを判断します。デプロイメントアクション時に必ずコンテナーがリフレッシュされ、更新された場合には再起動されるようになりました。

注記

これは、デプロイメント時に必ずイメージをフェッチするのではなく、イメージが存在することしか確認しなかった以前のバージョンからの変更点です。ユーザーがタグを再使用する場合 (例: latest)、スケーリング等のアクションを実行すると、ノードのコンテナーが更新される場合があります。Satellite サーバーのデプロイメントを使用してコンテナータグを制御していない限り、latest を使用することは推奨されません。

BZ#1884556
今回の更新以前は、RHOSP 15 から RHOSP 16.1 にアップグレードする際、データベースのオンライン更新を実行するのに openstack overcloud external-upgrade run --tags online_upgrade コマンドを使用する必要がありました。今回の更新で、openstack overcloud external-update run --tags online_upgrade コマンドが使用できるようになりました。
BZ#1889228
今回の更新以前は、Key Manager (barbican) サービスと共に Block Storage (cinder) サービスを使用する場合、クローン作成された暗号化ボリュームにアクセスすることができませんでした。今回の更新により、Key Manager サービスと共に Block Storage サービスを使用する場合に、クローン作成された暗号化ボリュームにアクセスできるようになりました。
BZ#1898484
今回の更新以前は、iSCSI/LVM Block Storage バックエンドにより作成される接続データが永続的に保存されませんでした。そのため、リブート後にボリュームにアクセスすることができませんでした。今回の更新により、接続データが永続的に保存され、システムのリブート後にボリュームにアクセスできるようになりました。
BZ#1899761

今回の更新以前は、エッジサイトにデプロイされた Image (glance) サービスは、中央サイトのコントロールプレーンで実行されている Key Manager (barbican) サービスにアクセスするように設定されませんでした。そのため、エッジサイト上で実行中の Image サービスは、Key Manager サービスに保存された暗号鍵にアクセスすることができませんでした。

今回の更新により、エッジサイト上で実行中の Image サービスは、Key Manager サービスに保存された暗号鍵にアクセスするように設定されるようになりました。

BZ#1901157

今回の更新以前は、TLS everywhere 環境での Red Hat OpenStack Platform 13 から 16.1 へのインプレースアップグレードにおいて、novajoin コンテナーに誤った rabbitmq パスワードが使用されていました。これにより、アンダークラウドの novajoin コンテナーが正しく機能せず、すべてのオーバークラウドノードでのアップグレードの実行が以下のエラーと共に失敗していました。

2020-11-24 20:01:31.569 7 ERROR join   File "/usr/lib/python3.6/site-packages/amqp/connection.py", line 639, in _on_close
2020-11-24 20:01:31.569 7 ERROR join     (class_id, method_id), ConnectionError)
2020-11-24 20:01:31.569 7 ERROR join amqp.exceptions.AccessRefused: (0, 0): (403) ACCESS_REFUSED - Login was refused using authentication mechanism AMQPLAIN. For detail see the broker logfile.

今回の更新により、TLS everywhere 環境での RHOSP 13 から 16.1 へのアップグレードで正しい rabbitmq パスワードが使用され、アップグレードのフレームワークを正常に完了できるようになりました。

BZ#1902142
今回の更新以前は、collectd::plugin::virt::hostname_format パラメーターに複数の値を設定した場合、director はそれらの値を二重引用符で囲っていました。これにより、virt プラグインの読み込みに失敗していました。今回の更新により、collectd::plugin::virt::hostname_format を設定する際に、director は複数の値を二重引用符で囲まなくなりました。
BZ#1906698

今回の更新以前は、ローカル一時ストレージを持ち UseTLSTransportForNbd が False に設定された TLS everywhere 環境をアップグレードする場合、ライブマイグレーションに失敗していました。これは、UseTLSTransportForNbd 設定のデフォルト値が RHOSP 13 では False であったのが RHOSP 16.x では True に変更され、これにより QEMU プロセスコンテナーに正しい証明書が含まれなかったためです。

今回の更新により、director は global_config_settings で以前のデプロイメント環境の設定を確認し、それを使用してアップグレードで UseTLSTransportForNbd が以前のデプロイメントと同じ状態を維持するようになりました。設定ファイルに global_config_settings が存在する場合、director は use_tls_for_nbd キーの設定を確認します。global_config_settings が存在しない場合、director は hieradata キー nova::compute::libvirt::qemu::nbd_tls を評価します。アップグレードしたデプロイメントの UseTLSTransportForNbd を以前のデプロイメントと同じ状態に維持することで、ライブマイグレーションが機能するようになりました。

BZ#1909795

今回の更新以前は、OSP 16.1.3 における python-network-runner の 0.1.7 から 0.2.2 へのリベースにより、Ansible を使用する ML2 ネットワークが機能しなくなりました。

今回の更新で、python-networking-ansible が 0.1.7 に戻され、Ansible ネットワークが機能する状態に戻りました。

詳細は、ML2 networking-ansible を参照してください。

BZ#1910854
今回の更新以前は、ボリューム接続を初期化する際に Block Storage (cinder) NEC バックエンドドライバーが無効なデータを返すことがありました。これにより、ライブマイグレーションに失敗する場合がありました。今回の更新で、NEC ドライバーが修正され、確実に有効な接続データを返すようになりました。無効なボリューム接続データによりライブマイグレーションに失敗することがなくなりました。
BZ#1921735

今回の更新以前は、ボリュームがイメージ、スナップショット、または他のボリューム等の別のソースから作成された場合でも、Block Storage (cinder) サービスは、新たに規作したボリュームに必ずデフォルトのボリューム種別を割り当てていました。これにより、別のソースから作成されたボリュームのボリューム種別が、ソースのボリューム種別と異なっていました。

今回の更新により、デフォルトのボリューム種別を割り当てるべきかどうかをソースのボリューム種別に基づいて判別した後にのみ、デフォルトのボリューム種別が割り当てられるようになりました。別のソースから作成されたボリュームのボリューム種別が、ソースのボリューム種別と一致するようになりました。

BZ#1929275
今回の更新以前は、PowerFlex、VxFlex、および ScaleIO ボリュームが接続された RHOSP 13 環境で作成されたインスタンスは、RHOSP 16.x へのアップグレード後に再起動に失敗していました。これは、RHOSP 16.x Compute サービスでは、接続されたボリュームにアクセスするのに新しい PowerFlex ドライバーの接続属性が使用され、この属性が RHOSP 13 環境で実行中のインスタンスに接続されたボリュームの接続属性に存在しないためです。今回の更新により、この接続属性がない場合にエラーが投げられなくなり、RHOSP 13 環境で作成された PowerFlex ボリュームが接続されたインスタンスは、RHOSP 16.x へのアップグレード後も正常に機能を続けます。

3.5.3. 機能拡張

Red Hat OpenStack Platform の今回のリリースでは、以下の機能拡張が提供されています。

BZ#1459187
Red Hat OpenStack Platform (RHOSP) 16.1 では、IPv6 プロビジョニングネットワークへのオーバークラウドのデプロイがサポートされるようになりました。詳細は、ベアメタルプロビジョニングカスタムの IPv6 プロビジョニングネットワークの設定 を参照してください。RHOSP 16.1.2 では、この機能はテクノロジープレビューからフルサポートに移行しました。
BZ#1474394
¥Red Hat OpenStack Platform (RHOSP) 16.1 では、BMaaS (Bare Metal as-a-Service) テナント向けに、IPv6 プロビジョニングネットワークを通じたベアメタルのプロビジョニングがサポートされています。RHOSP 16.1.2 では、この機能はテクノロジープレビューからフルサポートに移行しています。
BZ#1575512
今回の機能拡張により、外部ネットワークを通じてマルチキャストを制御し、内部ネットワークだけではなく外部ネットワークを通じたクラスターの自動生成を避けることができるようになりました。
BZ#1640742

今回の機能拡張により、インスタンスに永続メモリーを提供するように NVDIMM コンピュートノードを設定できるようになりました。この機能を使用して、NVDIMM ハードウェアを持つコンピュートノードで PMEM 名前空間を作成および設定することで、インスタンスは PMEM を仮想 PMEM (vPMEM) として利用することができます。これにより、インスタンスのシャットダウン後にコンテンツを維持する必要がある場合、クラウドユーザーは vPMEM を要求するインスタンスを作成することができます。

注記: daxio パッケージは x86_64 アーキテクチャーでのみ利用可能であるため、この機能は x86_64 コンピュートノードでのみサポートされます。

BZ#1793595
今回の機能拡張により、分散コンピュートノード (DCN) アーキテクチャーのエッジサイトに Red Hat Ceph Storage (RHCS) Dashboard をデプロイできるようになりました。
BZ#1834185

今回の機能拡張により、新たな 2 つのパラメーター NovaPMEMMappings および NovaPMEMNamespaces を使用して、vPMEMEM を管理できるようになりました。

  • NovaPMEMMappings を使用して、vPMEM と物理 PMEM 名前空間の間のマッピングを反映する nova 設定オプション pmem_namespaces を定義します。
  • NovaPMEMNamespaces を使用して、vPMEM のバックエンドとして使用する物理 PMEM 名前空間を作成および管理します。
BZ#1844615

今回の機能拡張により、新規デプロイメントにおいて Network Functions Virtualization infrastructure (NFVi) での Open Virtual Network (OVN) の使用がサポートされるようになりました。これには、以下の機能のサポートが含まれます。

  • OVN と OVS-DPDK の組み合わせ
  • OVN と SR-IOV の組み合わせ
  • OVN と OVS TC Flower オフロードの組み合わせ

注記: NFV のデプロイメントでは、ML2/OVS から ML2/OVN への移行はまだサポートされていません。

BZ#1846019

今回の機能拡張により、ML2/OVN メカニズムドライバーと vlan および geneve ネットワークタイプドライバーの組み合わせにおいて、vlan の透過性がサポートされるようになりました。

vlan の透過性により、Networking (neutron) サービスのネットワーク上のインスタンスを使用して vlan タグを管理することができます。他のネットワークに影響を与えずに、インスタンスに vlan インターフェイスを作成し、任意の vlan タグを使用することができます。Networking サービスは、これらの vlan タグを認識しません。

備考:

  • vlan 種別のネットワークで vlan の透過性を使用する場合、パケットの内部および外部 ethertype は 802.1Q (0x8100) になります。
  • フラットプロバイダーネットワークでは、ML2/OVN メカニズムドライバーは vlan の透過性をサポートしません。
BZ#1878191
今回の機能拡張により、ExtraConfig のパラメーター collectd::plugin::virt::plugin_instance_format を使用して、collectd virt プラグインのプラグインインスタンスの形式を設定できるようになりました。これにより、インスタンスが実行されているホストなど、仮想マシンインスタンスのメトリックラベルでより細かな粒度でメタデータを公開することができます。
BZ#1882058
今回の機能拡張により、エッジサイトでの異なるストレージ設定がサポートされるようになりました。オペレーターは、同じ DCN デプロイメント内にストレージが設定されたエッジサイトと設定されないエッジサイトをデプロイすることができます。
BZ#1891828
Block Storage のバックアップサービスは、ホスト上のファイルにアクセスしなければならない場合がありますが、そのファイルがサービスを実行するコンテナーで利用できないことがあります。今回の機能拡張により、CinderBackupOptVolumes パラメーターが追加されました。これを使用して、Block Storage のバックアップサービス用に追加のコンテナーボリュームマウントを指定することができます。

3.5.4. リリースノート

本項では、Red Hat OpenStack Platform の注目すべき変更点や推奨プラクティスなど、今回のリリースに関する重要な情報を記載しています。お使いのデプロイメントに最大限の効果をもたらすために、以下の情報を考慮する必要があります。

BZ#1870199

virt-admin ツールが利用できるようになり、これを使用して RHOSP のバグを報告するログを取得することができます。ログにはコンピュートノード上の libvirt と QEMU 間の通信が記録されるので、このツールは、libvirt および QEMU に関するすべての問題のトラブルシューティングに役立ちます。virt-admin を使用すると、libvirt および QEMU のデバッグ用ログフィルターを動的に設定することができます。この場合、nova_libvirt コンテナーを再起動する必要はありません。

コンピュートノードで libvirt および QEMU のログフィルターを有効にするには、以下の手順を実施します。

  1. コンピュートノードの nova_libvirt コンテナーにログインします。

    $ sudo podman exec -it nova_libvirt /bin/bash
  2. virt-admin の出力を送信するログファイルの名前および場所を指定します。

    $ virt-admin daemon-log-outputs "1:file:/var/log/libvirt/libvirtd.log"
  3. ログを収集するフィルターを設定します。

    $ virt-admin daemon-log-filters \
     "1:libvirt 1:qemu 1:conf 1:security 3:event 3:json 3:file 3:object 1:util"
    注記

    ライブマイグレーションの問題をデバッグする場合、これらのフィルターをすべての移行元および移行先コンピュートノードで設定する必要があります。

  4. テストを繰り返します。デバッグが完了したら、libvirtd.log をバグにアップロードします。
  5. コンピュートノードで libvirt および QEMU のログフィルターを無効にします。

    $ virt-admin daemon-log-filters ""
  6. フィルターが削除されたことを確認するには、以下のコマンドを入力します。

    $ virt-admin daemon-log-filters

    フィルターが正常に削除されている場合、このコマンドは空のリストを返します。

3.5.5. 既知の問題

現時点における Red Hat OpenStack Platform の既知の問題は以下のとおりです。

BZ#1866479

現在、サブスクライブした環境に正しい DNF モジュールストリームが設定されるようにするメカニズムに既知の問題があります。Advanced Virtualization リポジトリーは、Ceph ノードが使用するサブスクリプションで常に利用可能な訳ではありません。そのため、virt:8.2 を有効にしようとすると、Ceph ノードのアップグレードまたは更新に失敗します。この既知の問題に関する詳細は、Bug 1923887 を参照してください。

回避策:

アップグレードまたは更新用環境ファイルの DnfStreams パラメーターをオーバーライドし、Ceph のアップグレードが失敗するのを回避します。

parameter_defaults:
  ...
  DnfStreams: [{'module':'container-tools', 'stream':'2.0'}]
注記

この回避策を使用する場合、Advanced Virtualization DNF ストリームは適用されません。

BZ#1925078

OSP13 で UEFI ブートおよび UEFI ブートローダーを使用するシステムは、UEFI の問題が発生し以下のような状況に陥る可能性があります。

  • /etc/fstab が更新されない
  • EFI システムで grub-install が誤って使用される

システムで UEFI が使用されている場合は、Red Hat Technical Support にお問い合わせください。詳細は、Red Hat ナレッジベースのソリューション FFU 13 to 16.1: Leapp fails to update the kernel on UEFI based systems and /etc/fstab does not contain the EFI partition を参照してください。

BZ#1933268

現在、[workarounds]/disable_native_luksv1 および [workarounds]/rbd_volume_local_attach 設定オプションに関する既知の問題が存在します。これらのオプションは、libgcrypt および librdb の既知のパフォーマンスリグレッションに対する一時的な回避策としてのみ提供されます。RHOSP で使用されるベースの RHEL リリースでリグレッションが解決されたら、これらの回避策用オプションは削除されます。

これらの回避策用オプションのいずれかを使用する際には、注意が必要です。これらの注意に従わない場合、RDB 暗号化ボリュームで問題が発生する可能性があります。注意事項は以下のとおりです。

  • お使いの環境でこれらの回避策用オプションを有効にする前に、CEE からサポート例外を付与される必要があります。Red Hat が回避策の使用を追跡できるようにし、将来これらの回避策用オプションが無効になった時に削除できるようにするには、サポート例外が必要です。
  • 特定の環境またはホストアグリゲートに属するすべてのコンピュートノードで、回避策用オプションを有効にする必要があります。
  • これらの回避策が有効なコンピュートノードと有効ではないノード間での移動操作はサポートされません。
  • これらの回避策を有効にする前に、回避策を有効にするコンピュートノード上の既存インスタンスをすべて停止するか、ノード外に移行する必要があります。回避策を有効にして Compute サービスを再起動したら、インスタンスを再起動することができます。
BZ#1939419

Red Hat Ceph Storage のサブスクリプションを使用し、Red Hat Ceph Storage ノード用に overcloud-minimal イメージを使用するように director を設定している場合、Leapp の制限により Red Hat Ceph Storage ノードのオペレーティングシステムのアップグレードに失敗する可能性があります。

この問題を回避するには、system_upgrade の実行ステップの後に、Red Hat Ceph Storage ノードにログインして RHEL のマイナーリリースバージョンの設定を解除し、利用可能な最新の RHEL マイナーリリースバージョンに更新し、ノードをリブートする必要があります。

Leapp アップグレード用の RPM コンテンツをホストするのに Red Hat Satellite Server を使用している場合、使用するコンテンツビューに以下の 8.2 リポジトリーを追加する必要があります。

  • Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)

    rhel-8-for-x86_64-appstream-rpms
    x86_64 8.2
  • Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)

    rhel-8-for-x86_64-baseos-rpms
    x86_64 8.2

詳細は、BZ#1936419 を参照してください。

BZ#1942199

現在、ceph-ansible には、外部の非管理 Ceph クラスターを使用するように設定された Ceph Ganesha コンテナーのデプロイまたは更新に使用された場合、Ansible Playbook が正常に完了しないという既知の問題があります。

この問題により、Shared File Systems サービス (manila) と共に Ceph Ganesha を使用し、外部の Ceph クラスターを使用するように設定されたオーバークラウドのデプロイメント、マイナー更新、またはメジャーアップグレードに失敗します。

回避策:

環境が Shared File Systems サービスと共に Ceph Ganesha を使用し、外部の Ceph クラスターを使用するように設定されている場合、オーバークラウドのアップグレードまたはマイナー更新を行う際に、ceph-ansible バージョン 4.0.49.1 以降を使用してください。これらの条件下では、アンダークラウドにインストールされた 4.0.49.1 よりも前のバージョンの ceph-ansible でアップグレードを試みないでください。