リリースの
サーバーに 1 台ずつ SSH して、リリースを取得し、サービスを再起動して、ヘルスチェックを curl している。
いまのやり方
ssh web-1。
リリースの
Kitewell に一度だけ伝える
Web サーバーグループに向けた chain の ワークフローを 作ってください。 /srv/app を git で 取得し、 私の 承認を 待ち、 app サービスを 再起動して、 各マシンで http://127.0.0.1:8080/healthz を 確かめてから 次の マシンに 進みます。
準備は
あとは、ひとりでに動く
ロールアウト · web グループこの
- リリースを
取得する マシン上で fast-forward の pull を 行います。 完了 - あなたの OK を
待つ 再起動は、マシンごとに あなたの 承認を 待ちます。 あなたを 待つ - サービスを
再起動する 承認後に 実行されます。 完了 - 応答を
確かめる 5 秒間隔で 6 回。 応答しない マシンが あれば、 ロールアウトが 止まります。 完了
代わりに届くもの
ロールアウト · web グループ
web-3 が
- web-1正常
- web-2正常
- web-3/healthz が
応答なし - web-4未着手
知っておくこと
- グループは
最初の 失敗で 止まるので、 確認に 失敗した マシンが あれば、 残りに 手を 付けずに ロールアウトが 止まります。 - ホスト鍵は
プロジェクトで 承認済みで、 パスワードは シークレットから 来るので、 ワークフローは どちらも 持ちません。
必要なもの
- グループと
して 登録した サーバー (1 台ずつ、 失敗したら 停止)