Openstack-installerでOpenstackをインストールした後、Landscapeを使用していました。しばらくして、すべてを再起動し、jujuといくつかの苦労をした後( juju-core 1.20.xでの再起動後、Landscapeは実行されません )、LandscapeはOpenstackと同様に再び実行されます。
問題は、Landscapeに報告しているコンピューターがないことです。 5分ごとに「[Landscape Alert] 18台のコンピューターが過去5分間にLandscapeに接続していません」という件名のメールを受信します稼働しています。
Openstackでも深刻な問題に直面しています(新しいインスタンスの起動、バックアップボリュームなど)。問題は関連していると推測します。
元の質問へのコメントを介したデバッグセッションの後、問題が何であるかがわかりました。
自己署名証明書を使用する場合、Apache2チャームには、わずか30日間の有効期間でそのような証明書を生成するというバグがありました。
起こったのは、それが期限切れになったことです。これはチャームの新しいバージョンで修正されたため、これにアップグレードして新しい証明書の生成をトリガーします。
次の手順に従ってチャームをアップグレードし、証明書を再生成してください。
juju ssh Apache2/0 'Sudo rm -f /etc/ssl/certs/Apache2.cert /etc/ssl/private/Apache2.key /etc/ssl/certs/landscape_server_ca.crt'
_を実行します。juju upgrade-charm Apache2
_を実行します。これによりチャームがアップグレードされ、新しいチャームは、証明書がない(最初のステップで削除された)ことがわかると、新しいペアを生成します。juju debug-log
_の出力を監視します。juju ssh Apache2/0 'Sudo service Apache2 restart'
_を実行します(このステップに関するバグを報告します:必要ではないはずですが、今はそうです)次に、この新しい証明書についてクライアントに伝える必要があります。クライアントは、landscape/0ユニットに存在する別のjuju環境で起動しているため、これは少し複雑です。次の手順を実行します:
juju scp Apache2/0:/etc/ssl/certs/Apache2.cert .
_chmod 0644 Apache2.cert
_openssl x509 -in Apache2.cert -noout -enddate
_juju scp Apache2.cert landscape/0:/tmp
_juju ssh landscape/0
_Sudo chsh -s /bin/bash landscape
_Sudo -u landscape -i
_export JUJU_HOME=/var/lib/landscape/juju-homes/$(ls -1t /var/lib/landscape/juju-homes/|head -n 1)
juju status
_。多くのOpenStackサービスが表示されるはずですjuju set landscape-client ssl-public-key="base64:$(cat /tmp/Apache2.cert|base64)"
juju debug-log
_の出力を監視しますjuju run --service landscape-client 'Sudo service landscape-client restart'
_juju run --all 'Sudo service landscape-client restart'
_クライアントにログインし、broker.logファイルをtail -fして、SSLエラーが続くかどうかを確認できます。