##はじめに
勉強用の検証環境で、Kopsでクラスターをセットアップした後に、(kopsコマンド実行時に作成された)bastionのSSHポート番号を変更しようとしたところ、少しはまってしまいました。対応した内容をメモで残します。(検証したのは今年の3月ごろ。)
あくまで個人の作業メモです。ご自分てプロジェクト等の環境で対応される場合には、公式のドキュメント等も確認の上、事前に検証して手順を確立してから対応されることをおすすめします。
状況
何も考えずに対応してSSHがつながらなくなり、困惑した経緯。(恥をさらすところではありますが、、)
- kopsでクラスターを作成後、bastionのポート番号を変更したいから変えなくちゃ!、とPC(Win)のTeratermを起動
- 2つTerminalを起動し、/etc/ssh/sshd_config を書き換え、sudo sshd -tとsudo service sshd restart を実行
- Teminalが2つとも落ちる!(当然だ!)
状況把握のログ
- 端末から、ELBのポート接続を確認すると、変更前のポートでは接続でき、変更後のポートでは接続できないことを確認(
telnet://<ELB-URL>:<port-number>
) - ELBのポート構成に新しいポート番号を追加するが、新しいポートでは接続できない状態
- AWS管理コンソールからロードバランサーの状況をみると、ELBからbastionが見えない状態になっていた
- bastionのEC2は起動している
- ロードバランサーのヘルスチェックのポート変更が必要(pingプロトコル、pingポート)
- ELBからbastionを見るとin serviceになった
-ロードバランサーへのインバウンドのセキュリティーグループのポート番号を追加 - しかし、端末から、ELBのポート接続を確認すると、まだNG(以前のポートでは接続可能)
- bastion側のインバウンドのセキュリティーグループのポート番号も追加
- つながった!!(旧ポート番号をセキュリティーグループのインバウンド指定から削除)
##変更が必要な個所のまとめ
後から変更する場合には以下の編集が必要
- ロードバランサーのリスナーの編集
- ロードバランサーのヘルスチェックのポートの編集
- ロードバランサーへのインバウンドのセキュリティーグループの編集
- bastion側のインバウンドのセキュリティーグループの編集
以上。