Webコンソールサービスの証明書が欠落している問題を修正する
Summary
NoVNCコンソールサービスが/var/lib/nova/certs/server.pemにあるSSL証明書ファイルを見つけられない場合、コンソールタブは開きますが、すぐに「接続が拒否されました」というエラーが発生して失敗します。 novnc_proxy サービスは実行中と表示されていますが、証明書が欠落しているため、仮想マシンのコンソールへのセキュアな接続ができません。
詳細
Issues description
CubeCOSを新規にインストールした場合、コンソールへの接続に問題が生じる可能性があります。 ユーザーが仮想マシンを作成し、Webインターフェースからコンソールを開こうとすると、新しいコンソールタブは開くものの、すぐに接続に失敗してしまいます。
novnc_proxy サービスはアクティブであり、ステータス出力に目立ったエラーは見られず、正常に動作しているようです。 しかし、/var/log/nova-novncproxy.log のサービスログを確認したところ、他の CubeCOS ノードが /var/lib/nova/certs/server.pem にある必要な SSL 証明書ファイルを見つけられないことが判明しました。
INFO nova.console.websocketproxy [-] xxx.xxx.xxx.xxx: SSL connection but '/var/lib/nova/certs/server.pem' not found
この証明書がないと、ユーザーがコンソールにアクセスしようとした際に、novnc_proxy サービスは安全な接続を確立できません。
適用可能なバージョン
CubeCOS 3.0.0+
この記事はCubeCOSバージョン3.0.0を実行している環境に適用されます。
解像度
-
システム証明書をnovncディレクトリにコピーしてください。 次のコマンドを実行してください:
cubectl node exec cp /var/www/certs/server.pem /var/lib/nova/certs/server.pem -
次のコマンドを実行して、コンソールプロキシサービスを再起動してください:
cubectl node exec service openstack-nova-novncproxy restart -
サービスが実行中であることを確認してください。 次のコマンドを実行してください:
cubectl node exec service openstack-nova-novncproxy status出力には
active (running)と表示されるはずです。 -
Webインターフェースからコンソール接続を試行し、機能が正常に動作するか確認してください。
追加情報
なし。