Google Compute Engineにて インスタンスのスナップショットをとって、
そのスナップショットを使用して新たなインスタンスを作成した時、そのインスタンスにGoogle Cloud PlatformコンソールからSSH(ブラウザウィンドウから開く)すると、以下の画面になり、接続できない事態が発生しました。
この画面が出ると すごく焦ります。
こんな時は まず、そのインスタンスのシリアルポート接続を有効化にして、
「シリアルコンソールに接続」で インスタンスの起動状況が見れるようにして接続し、状況を確認します。
今回は、zabbix-agentの起動に失敗していて、以下のエラーをひたすら繰り返していたので、
1 2 3 4 5 6 7 8 |
localhost systemd: Starting Zabbix Agent... localhost systemd: PID file /run/zabbix/zabbix_agentd.pid not readable (yet?) after start. localhost systemd: zabbix-agent.service never wrote its PID file. Failing. localhost systemd: Failed to start Zabbix Agent. localhost systemd: Unit zabbix-agent.service entered failed state. localhost systemd: zabbix-agent.service failed. localhost systemd: zabbix-agent.service holdoff time over, scheduling restart. localhost systemd: Starting Zabbix Agent... |
zabbix-agentの起動を停止するように以下起動スクリプト(startup-script)を設定し、
インスタンスを再起動し、無事ログインできるようになりました。
1 2 3 4 |
#!/bin/bash sudo su - systemctl stop zabbix-agent systemctl disable zabbix-agent |
startup-script
起動したままのインスタンスをスナップショットした際に、どうもプロセスのロックファイルか何かで不整合が生じたのが 原因のようです。
「シリアルコンソールに接続」は 覚えておくと、エラー時に役立ちます。