3.10. Red Hat OpenStack Platform 16.1.9 メンテナンスリリース (2022 年 12 月 7 日)

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

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

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

RHEA-2023:2035
Red Hat OpenStack Platform 16.1.9 director イメージ
RHBA-2023:5138
Red Hat OpenStack Platform 16.1.9 のバグ修正および機能拡張アドバイザリー
RHEA-2023:2035
Red Hat OpenStack Platform 16.1.9 director イメージ RPM
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (protobuf) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (numpy) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (puppet) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (python-paramiko) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (python-ujson) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (python-XStatic-Bootstrap-SCSS) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (python-XStatic-Angular) に関するセキュリティー更新
RHSA-2022:1679
低度: Red Hat OpenStack Platform 16.1.9 (rabbitmq-server) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (python-scciclient) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (puppet-firewall) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (openstack-neutron) に関するセキュリティー更新
RHBA-2023:5138
更新された Red Hat OpenStack Platform 16.1.9 コンテナーイメージ
RHSA-2022:1679
Red Hat OpenStack Platform 16.1.9 (python-django20) に関するセキュリティー更新
RHSA-2022:1679
Red Hat OpenStack Platform 16.1.9 (python-oslo-utils) に関するセキュリティー更新
RHSA-2022:8796
中程度: Red Hat OpenStack Platform 16.1.9 (openstack-tripleo-heat-templates) に関するセキュリティー更新
RHSA-2022:1679
中程度: Red Hat OpenStack Platform 16.1.9 (openstack-barbican) に関するセキュリティー更新

3.10.2. バグ修正

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

(BZ#2098594)
今回の更新の前に、現存するバックアップ ID のバックアップレコードをインポートすると、インポート操作は正しく失敗しましたが、既存のバックアップレコードが誤って削除されていました。今回の更新により、このシナリオで既存のバックアップレコードが削除されなくなりました。
(BZ#2098594)
今回の更新の前に、関連するボリュームが移動されると、NetApp ONTAP Block Storage (cinder) ドライバーの QoS ポリシーグループが削除されていました。今回の更新により、QoS ポリシーグループは、ボリュームを表す LUN またはファイルに永続的に関連付けられます。
BZ#1961162
今回の更新の前に、存在しないゲートウェイアドレスが負荷分散管理ネットワークで設定されていました。これにより、負荷分散管理ネットワークで過剰なアドレス解決プロトコル (ARP) 要求が発生しました。
BZ#1968228
今回の更新の前は、Shared File Systems サービス (manila) NetApp ONTAP All Flash Fabric-Attached (AFF) ストレージシステムでのストレージのプロビジョニング使用する API が原因で Shared File Systems サービス共有がシンプロビジョニングされていました。Shared File Systems サービスの共有タイプを使用して要求された場合でも、この API は領域を強制的に確保しませんでした。今回の更新により、ドライバーは NetApp ONTAP 9 API が AFF ストレージおよび従来の FAS ストレージシステムと連携するように適切なパラメーターを設定します。API は、Shared File Systems サービスの共有タイプを通じて、NetApp ONTAP ストレージに領域を確保するようになりました。
BZ#1977322
今回の更新の前は、Compute サービス (nova) が Block Storage サービス (cinder) にボリュームのデタッチを要求し、ボリュームを削除する外部要求があったときに競合状態が発生していました。競合状態により、ボリュームのデタッチに失敗し、ボリュームが削除され、Compute サービスは存在しないボリュームを削除できませんでした。今回の更新で、競合状態が解決されました。
BZ#1996088
この更新の前は、ユーザーが 1,000 を超えるロードバランサーを使用している場合に、python-octaviaclient はロードバランサーの完全なリストを表示しませんでした。今回の更新により、OpenStack Load-balancing サービス (Octavia) はすべてのロードバランサーを表示します。
BZ#1996756
今回の更新の前に、ロードバランサーの設定変更中に、ERROR 動作状態のメンバーが一時的に ONLINE に更新されていました。今回の更新により、問題が修正されました。
BZ#2026029
今回の更新の前には、Key Manager サービス (barbican) の secret:delete ポリシーでは、Creator ロールが割り当てられたユーザーで、シークレットを作成したユーザーと同じである場合にだけ、シークレットを削除できました。この制限は、ポリシーの不一致が原因で、暗号化されたワークフローに影響がありました。たとえば、Block Storage サービス (cinder) では、プロジェクトでロールが割り当てられたユーザーが暗号化されたボリュームを削除できます。ただし、すべてのユーザーがシークレットの削除を許可されているわけではないため、Key Manager サービスは承認エラーで応答しました。今回の更新で、Key Manager サービスの secret:delete ポリシーが変更され、Creator ロールを持つユーザーが、作成したものだけでなく、プロジェクトに属するすべてのシークレットを削除できるようになりました。Block Storage サービスで暗号化されたボリュームの削除を許可されているすべてのユーザーは、関連するシークレットも削除できます。
BZ#2027544
今回の更新の前に、セッション認証が使用されたときに、ironic-conductor サービスと Redfish ハードウェアタイプを使用するリモートベースボード管理コントローラー (BMC) の間に一時的な接続の問題が繰り返し発生した場合に、接続が断続的に切断されるタイミングと、メモリー内の認証情報の有効期限が切れて認証が再試行されるタイミングが重なることがありました。このタイミングが重なると、openstack-ironic-conductor サービスに組み込まれた内部セッションキャッシュが原因で、全体的な接続が失われました。今回の更新により、このエラーの場合の検出と再ネゴシエーションのサポートが、Python DMTF Redfish ライブラリー、sushy、および openstack-ironic サービスに追加されました。セッション認証情報の再認証と断続的な接続切断のタイミングが重なっても、openstack-ironic-conductor サービスが再起動されるまで、BMC との通信機能が完全に失われることはなくなりました。
BZ#2033953
この更新の前に、machine-config-operator は、Compute サービス (nova) メタデータサービスを介して渡されたユーザーデータに基づいてホスト名を設定する新しいマシンに afterburn systemd ユニットを渡しました。場合によっては、ベアメタルなど、インスタンスが Compute サービスメタデータに接続されませんでした。今回の更新により、afterburn systemd ユニットは最初に configdrive からデータをフェッチしようとし、次に Compute サービスのメタデータサービスにフォールバックします。インスタンスのホスト名は、Compute サービスのメタデータサービスの到達可能性に関係なく設定されます。
BZ#2034095
今回の更新の前は、デプロイメント中に NTP 検証が行われませんでした。一部のユーザーから、ノード間で時間が同期されていないために無効なトークンでクラウド認証が失敗するという問題が報告されました。今回の更新により、デプロイメント中の NTP 同期検証が再度有効になりました。ホストは、定義された NTP サーバーリストに接続できる必要があります。以前に無効または到達不能な NTP サーバーを使用してデプロイメントを実行した場合に、更新した後に NTP の検証を行うとデプロイメントが失敗することがあります。更新する前に、有効で到達可能な NTP サーバーがあることを確認してください。
BZ#2040697
今回の更新の前は、エラーが発生したときにロードバランサーのプロビジョニングステータスが ERROR に設定されるのが早すぎたため、これらのリソースのタスクの実行が完了する前にロードバランサーが変更可能になりました。今回の更新により、問題が修正されました。
BZ#2057604
今回の更新の前に、ロードバランシングサービス (octavia) は、デプロイまたは更新中に何度も再起動されていました。今回の更新により、必要な場合にのみサービスが再起動され、コントロールプレーンで発生する可能性のある中断を阻止します。
BZ#2063031
今回の更新の前に、systemd はシャットダウン中に負荷分散サービス (octavia) を停止してリソースを PENDING_UPDATE ステータスのままにしていました。今回の更新により、負荷分散サービスの正常なシャットダウンの期間が延長され、systemd によってサービスが停止されなくなりました。
BZ#2064709
仮想 IP (VIP) およびメンバー含まれるテナントネットワークにロードバランサーが作成され、そのテナントネットワークがプロバイダーネットワークに接続されたルーターに接続されている場合には、Open Virtual Network (OVN) ロードバランサーが OVN 論理ルーターと関連付けられます。nat-addresses に router オプションが使用された場合、ovn-controller はプロバイダーネットワーク上のその VIP に GARP パケットを送信していました。OpenStack のさまざまなテナントで、番号が同じ Classless Inter-Domain Routing (CIDR) や、同じ VIP のロードバランサーが作成されないようにできないので、ovn-controller がプロバイダーネットワークで、IP が同じ GARP パケット (各テナントに所属する論理ルーターポートの MAC を使用) を複数生成する可能性があります。このセットアップは、物理ネットワークインフラストラクチャーで問題になる可能性があります。今回の更新で、新しいオプション (exclude-lb-vips-from-garp) がルーターゲートウェイポートの OVN1 に追加されました。このフラグは、ロードバランサー VIP に対して GARP パケットが送信されないようにします。
BZ#2078377
今回の更新の前は、active-standby モードで UDP のみのロードバランサーの仮想 IP (VIP) アドレスに到達できませんでした。今回の更新により、問題が修正されました。
BZ#2089382
今回の更新の前は、宛先ホストの libvirt ドライバーによるブロックデバイスマッピングの更新は、ライブマイグレーション中に保持されませんでした。n[workarounds]/rbd_volume_local_attach=True 設定オプションを使用する場合など、特定のストレージバックエンドまたは設定では、ライブマイグレーション後のボリュームのアタッチに対する特定の操作 (デタッチなど) が機能しませんでした。今回の更新により、Compute サービス (nova) は、宛先ホストで libvirt ドライバーによって行われたすべてのブロックデバイスマッピングが永続的に正しく更新されます。デタッチなどの影響を受けるボリュームでの操作は、ライブマイグレーション後に成功します。
BZ#2096387
今回の更新の前は、負荷分散サービス (octavia) の amphora ドライバーで ICMP モニターを使用しているときに、SELinux の問題が原因でエラーが発生していました。今回の更新で、SELinux の問題が修正されました。
(BZ#2098594)
今回の更新の前は、memcached バックエンドに対して、dead_retry および socket_timeout の dogpile.cache サポートが実装されていませんでした。oslo.cache メカニズムでは引数ディクショナリーに dead_retry と socket_timeout の値が入力されましたが、dogpile.cache はその値を無視したため、dead_retry には 30 秒、socket_timeout には 3 秒のデフォルトが使用されました。Identity サービス (keystone) のキャッシュバックエンドとして dogpile.cache.memcached を使用し、memcached インスタンスの 1 つを削除すると、memcache サーバーオブジェクトは、deaduntil 値を 30 秒先に設定します。2 つの memcached サーバーが設定された API サーバーにリクエストが送信され、そのうちの 1 つがルーティング不能であった場合に、作成した各スレッドでこれらのサーバーをそれぞれ試行し、ダウンしている物がある場合には毎回、ソケットのタイムアウト制限 (3 秒) に達するまでに約 15 秒かかりました。ユーザーが別のリクエストを発行するまでに、deaduntil 値に達し、この全サイクルが繰り返されました。今回の更新で、dogpile.cache は oslo.cache によって渡された dead_retry および socket_timeout 引数を使用するようになりました。
BZ#2103971
今回の更新の前は、ceilometer-agent-compute コンテナーの /var/run/libvirt に誤ったボリュームがマウントされており、ceilometer-agent-compute コンテナーは /var/run/libvirt ディレクトリーを読み取ることができず、コンピュートノードで CPU のメトリックのポーリングができませんでした。今回の更新により、適切なグローバル権限が/var/run/libvirt ディレクトリーに適用され、コンピュートノードの ceilometer-agent-compute コンテナーを使用して CPU テレメトリーをポーリングできるようになりました。CPU telemetry データは、Compute サービス (nova) を通じて利用できます。
BZ#2122925
今回の更新の前は、所属するサブネットを指定せずにメンバーを追加することができましたが、サブネットが仮想 IP (VIP) ポートと同じである必要があります。メンバーのサブネットが VIP サブネットと異なる場合、メンバーは作成されますが、メンバーへの接続がないため、設定が正しくありません。今回の更新により、サブネットのないメンバーは、メンバーの IP が VIP サブネットの Classless Inter-Domain Routing (CIDR) 番号に属している場合にのみ受け入れられます。これは、サブネットのないメンバーのサブネット取得に使用される、ロードバランサーに関連付けられたサブネットであるためです。IP が VIP サブネット CIDR に属していない場合には、サブネットのないメンバーの作成は拒否されます。
BZ#2123225
今回の更新の前に、Conntrack は Amphora VM であらゆるタイプのパケットに対して有効化されていましたが、これはユーザーデータグラムプロトコル (UDP) とストリームコントロールトランスミッションプロトコル (SCTP) に対してのみ必要です。今回の更新により、Conntrack が Transmission Control Protocol (TCP) フローに対して無効になり、ユーザーが Conntrack テーブルを満たす多数の接続を生成した場合に発生するパフォーマンスの問題を回避できるようになりました。
BZ#2125824

RHOSP 16.1.9 の今回の更新では、RHOSP 16.1.8 への更新後に Networking サービス (neutron) の開始に失敗し、RHOSP 16.1.8 への更新後に OVN データベースが不安定になるバグが修正されています。

RHOSP 16.1.8 に更新する代わりに、RHOSP 16.1.9 に直接更新します。

BZ#2129310

今回の更新の前は、do_sync_check 操作中に一時的でないスナップショットの削除のチェックが行われなかったため、do_sync_check 操作によってボリュームから一時的でないスナップショットが誤って削除される可能性がありました。今回の更新では、スナップショットを削除する必要があるかどうかを判断するチェックがあります。do_sync_check 操作では、必要なくても、一時的ではないスナップショットの削除は行われません。

今回の更新の前は、ストレージグループが親ストレージグループの子であるかどうかを確認する際に、条件として大文字と小文字が区別されていました。 ストレージグループの変更中に、親ストレージグループにすでに子ストレージグループが含まれているというエラーが表示されました。今回の更新により、条件で使用されるパターンで大文字と小文字が区別されなくなり、ストレージグループを正常に変更できるようになりました。

BZ#2130078
今回の更新の前は、ceilometer-agent-compute サービスの後に libvirt サービスが開始され、ceilometer-agent-compute サービスが libvirt と通信しなかったため、libvirt メトリクスが失われていました。今回の更新では、ceilometer-agent-compute サービスは libvirt サービスの後に開始され、"Permission denied" エラーなしで libvirt メトリクスをポーリングできます。
BZ#2130849

今回の更新の前は、Telemetry サービス (ceilometer) ユーザーには、Object Storage サービス (swift) からオブジェクトをポーリングするための十分な権限がありませんでした。Object Storage サービスクライアントでは、Telemetry サービスユーザーがオブジェクトの詳細をフェッチできませんでした。今回の更新により、Telemetry サービスユーザーは ResellerAdmin ロールに関連付けられます。

この問題を手動で回避するには、次のコマンドを実行します。

$ openstack role add --user ceilometer --project service ResellerAdmin

関連する Telemetry サービスユーザーは、Object Storage サービスオブジェクトメトリックを正常にポーリングできます。

(BZ#2098594)
RHSA-2022:6969 では、アンダークラウドの /var/lib/mistral ディレクトリー内のファイルをクリーンアップするプロセスが導入されましたが、Load-balancing サービス (octavia) または Red Hat Ceph Storage が有効になっていると、これらのサービスはクリーンアッププロセスが適切に削除できない追加のディレクトリーを作成するため、このプロセスが常に失敗しました。Load-balancing サービスまたは Ceph Storage が有効になっている場合、スケールアウトなどの一部のデプロイメントアクションが常に失敗していました。この更新により、Mistral はクリーンアップを実行しなくなりました。/var/lib/mistral ディレクトリー内のファイルのパーミッションを減らしたい場合、ユーザーはファイルを手動で削除する必要があります。パーミッションエラーが原因でデプロイアクションが失敗することがなくなりました。

3.10.3. 機能強化

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

BZ#1917356

今回の更新により、director は、Shared File Systems サービス (manila) で CephFS-NFS バックエンドを使用する場合に、NVSv4 ID マッピングのオーバーライドの指定をサポートします。Shared File Systems サービスを使用する Ceph-NFS では、NFSv4.1+ を介したクライアントアクセスのみが許可されます。NFSv4.1 では、ユーザー名とグループ名が回線経由で送信され、サーバーとクライアントの両方で変換されます。デプロイ担当者は、ドメイン設定をカスタマイズして、複数のクライアントから共有ファイルシステムサービス共有にアクセスできる組織ユーザーをより適切に表すことができます。Director は、次のパラメーターによる NFS ID マッピング設定のカスタマイズをサポートしています。

  • ManilaCephFSNFSIdmapOverrides: NFS サービスによって使用されるデフォルトの idmapd.conf ファイルで上書きする設定オブジェクトを指定できます。
  • ManilaCephFSNFSIdmapConf: NFS サービスのカスタム idmapd.conf ファイルを指定できるようにします
BZ#1945334
今回の更新により、Rsyslog 環境設定は一連の Elasticsearch ターゲットをサポートします。以前のリリースでは、1 つのターゲットしか指定できませんでした。ログを送信するエンドポイントのリストとして、複数の Elasticsearch ターゲットを指定できるようになりました。
BZ#1982268
今回の更新により、負荷分散サービス (octavia) 管理ネットワークの port_security パラメーターが有効になりました。
BZ#2022040
この更新により、iptables_hybrid ファイアウォールドライバーを使用した ML2/OVS デプロイメントを ML2/OVN に移行できるようになりました。
BZ#2070629
今回の更新で、uplink_status_propagation 拡張機能が有効になっている場合、拡張機能を有効にする前に作成されたすべての single root I/O virtualization (SR-IOV) ポートは、virtual function (VF) リンク状態を自動に設定します。今回の更新の前は、SR-IOV ポートがリンク状態を有効または無効に設定していました。

3.10.4. 既知の問題

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

BZ#1574431
現時点で、クォータコマンドは Block Storage サービス (cinder) では予想通りに機能しません。Block Storage CLI は、指定したプロジェクト ID が有効かどうかを確認しません。したがって、Block Storage CLI を使用して、無効なプロジェクト ID を持つクォータエントリーを作成できます。これらのクォータエントリーは、無効なデータを含むダミーレコードです。この問題が修正されるまで、CLI ユーザーであれば、クォータエントリーの作成時に有効なプロジェクト ID を指定し、Block Storage にダミーレコードがないか監視する必要があります。
BZ#2001012

ロールベースのアクセス制御 (RBAC) を使用して、プロジェクト間でセキュリティーグループを共有できます。ただし、インスタンスの起動時に --security-group 引数を使用して RBAC 共有セキュリティーグループを割り当てることはできません。openstack server create コマンドで --security-group 引数 を使用して RBAC 共有セキュリティーグループを割り当てようとすると、Compute サービス (nova) はセキュリティーグループを見つけられず、インスタンスの作成に失敗します。これは、Compute サービスが RBAC を介して共有されているセキュリティーグループをチェックしないためです。--security-group 引数で指定されたセキュリティーグループが、インスタンスを作成したプロジェクトに存在するかどうかのみを確認します。

回避策: ポートを作成し、セキュリティーグループをポートに割り当てます。ポートを指定するには、openstack server create コマンドで --nic 引数を使用します。Compute サービスは Networking サービス (neutron) でポートを作成しようとしないため、セキュリティーグループをチェックしません。

以下に例を示します。

   $ openstack port create --network net1 \
     --security-group \
     5ba835b7-22b0-4be6-bdbe-e0722d1b5f24 shared-sg-port

   $ openstack server create \
     --image cirros-0.5.1-x86_64-disk  \
     --flavor m1.tiny \
     --port shared-sg-port vm-with-shared-sg
BZ#2076884

現在のバージョンでは、移行先ホストの CPU と互換性のない CPU を使用してインスタンスをライブマイグレーションする場合に既知の問題があります。libvirt (QEMU >= 2.9 および libvirt >= 4.4.0) は、ライブマイグレーション中に宛先ホストの CPU 互換性チェックを正しく処理するため、回避策として、インスタンスを移行する前に宛先ホストで Compute サービスの CPU 比較チェックをスキップできます。

回避策: インスタンスのライブマイグレーションを実行する前に、影響を受ける各コンピュートノードの nova.conf ファイルに次の設定を追加します。

[workarounds]
skip_cpu_compare_on_dest = True

3.10.5. 削除された機能

BZ#2101949
Red Hat OpenStack Platform (RHOSP) 16.1.9 では、collectd プロセスプラグインがプラグインのデフォルトリストから削除されました。プラグインをロードすると、フラット化の問題が発生する可能性があり、予期されるシステムプロセスではなく、collectd および sensubility プロセスのみが認識されるので、コンテナー環境で実行する場合は意味がありません。バグ修正とサポートは 16.1.9 ライフサイクルの終わりまで提供されますが、新しい機能拡張は行われません。