メインコンテンツにスキップ

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 証明書ファイルを見つけられないことが判明しました。

Error presentation in nova-novncproxy.log
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を実行している環境に適用されます。

解像度

  1. システム証明書をnovncディレクトリにコピーしてください。 次のコマンドを実行してください:

    cubectl node exec cp /var/www/certs/server.pem /var/lib/nova/certs/server.pem
  2. 次のコマンドを実行して、コンソールプロキシサービスを再起動してください:

    cubectl node exec service openstack-nova-novncproxy restart
  3. サービスが実行中であることを確認してください。 次のコマンドを実行してください:

    cubectl node exec service openstack-nova-novncproxy status

    出力には active (running) と表示されるはずです。

  4. Webインターフェースからコンソール接続を試行し、機能が正常に動作するか確認してください。

追加情報

なし。