第6章 バグ修正
本セクションでは、今回リリースされた Red Hat Ceph Storage で修正されたユーザーに大きな影響を及ぼすバグを説明します。また、セクションでは、以前のバージョンで見つかり修正された既知の問題を説明します。
6.1. Ceph Ansible ユーティリティー
Alertmanager は、自己署名または信頼できない証明書が使用される場合にエラーをログに記録しません。
以前のバージョンでは、信頼できない CA 証明書を使用する場合、Alertmanager はログに多くのエラーを生成していました。
今回のリリースで、ceph-ansible
は、自己署名または信頼できない証明書を使用する場合に group_vars/all.yml
ファイルに alertmanager_dashboard_api_no_ssl_verify: true
を設定して、alertmanager.yml
ファイルで insecure_skip_verify
パラメーターを true
に設定することができ、Alertmanager はこれらのエラーをログに記録せず、予想通りに機能するようになりました。
マルチサイト設定で HTTPS が有効になっている場合は、完全修飾ドメイン名 (FQDN) を使用します。
以前のリリースでは、マルチサイトの Ceph 設定では、ceph-ansible
は HTTP と HTTPS を区別せず、HTTPS が有効な場合にホスト名ではなく IP アドレスでゾーンエンドポイントを設定していました。
今回のリリースで、ceph-ansible は、HTTPS が有効で、ゾーンエンドポイントが FQDN で設定され、TLS 証明書 CN と一致する場合に、IP アドレスではなく完全修飾ドメイン名 (FQDN) を使用するようになりました。
--pid-limits
パラメーターを、podman の場合は -1
、systemd ファイルの docker の場合は 0
にして追加し、コンテナーを起動します。
以前のバージョンでは、コンテナー内で実行できるプロセスの数が、podman では 2048、docker では 4096 となっていましたが、これらの制限値よりも多くのプロセスを起動する必要がある一部のコンテナーを起動するには十分ではありませんでした。
今回のリリースで、--pid-limits
パラメーターを、podman の場合は -1
、systemd ユニットファイルの docker の場合は 0
にして追加することで、開始可能な最大プロセスの上限を削除できるようになりました。その結果、デフォルトの制限よりも多くのプロセスを実行する必要があるかもしれない内部プロセスをカスタマイズしても、コンテナーは起動します。
ceph-ansible
は、プロキシーの背後にある専用のタスクでモニタリングするコンテナーイメージをプルします。
以前のバージョンでは、ceph-ansible
は Alertmanager、Prometheus、node-exporter、Grafana などのモニタリングコンテナーイメージを専用のタスクにプルせず、systemd サービスの起動時にイメージをプルしました。
今回のリリースで、ceph-ansible
はプロキシーの背後でモニタリングするコンテナーのイメージのプルをサポートするようになりました。
ceph-ansible
Playbook は radosgw システムユーザーを作成し、予想通りに機能します。
以前のリリースでは、ceph-ansible
Playbook は radosgw システムユーザーの作成に失敗し、マルチサイトデプロイメントの host_vars
または group_vars
レベルで rgw_instances
が設定されている場合に Dashboard のデプロイに失敗しました。この変数は Ceph Monitor ノードで設定されず、タスクを委譲すると失敗します。
今回のリリースで、ceph-ansible
は定義されているすべての Ceph Object Gateway インスタンスを確認し、少なくとも 1 つのインスタンスで rgw_zonemaster
が True に設定されているかどうかを確認するブール値のファクトを設定できるようになりました。radosgw システムユーザーが作成され、Playbook が期待どおりに機能します。
--limit
オプションを使用しても Ansible Playbook が失敗しなくなりました。
以前は、--limit
オプションを使用して Ansible Playbook を実行すると dashboard_server_addr
パラメーターが設定されず、コロケーションされていないシナリオでプレイターゲットが Ceph Manager ホストと一致しない場合、Playbook が失敗していました。
このリリースでは、Ceph Manager ノードで dumpboard_server_addr
パラメーターを設定する必要があり、Playbook は期待どおりに機能します。