処理の実行
EC2インスタンスIDを取得します。
コマンド:
EC2_INSTANCE_ID=$( \
aws ec2 describe-instances \
--filters Name=tag-key,Values=Name \
Name=tag-value,Values=${EC2_INSTANCE_TAG_NAME} \
Name=instance-state-name,Values=running \
--query Reservations[].Instances[].InstanceId \
--output text \
) \
&& echo ${EC2_INSTANCE_ID}
結果(例):
SSHログイン
EC2インスタンスにSSHログインします。
コマンド:
注釈
以下が表示された場合は、'yes'と入力して、エンターキーを押します。
The authenticity of host 'i-xxxxxxxxxxxxxxxxx(<no hostip for proxy command>)' can't be established.
ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
ECDSA key fingerprint is MD5:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)?
結果(例):
Warning: Permanently added 'i-xxxxxxxxxxxxxxxxx' (ECDSA) to the list of known hosts.
__| __|_ )
_| ( / Amazon Linux 2 AMI
___|___|___|
https://aws.amazon.com/amazon-linux-2/
ログアウトします。
コマンド(EC2インスタンス):
結果(例):
logout
Connection to |EC2_INSTANCE_ID| closed.
scpを利用したファイル転送
転送するファイルを作成します。
SSH経由でEC2インスタンスにファイルを転送します。
コマンド:
scp foo.txt ${EC2_INSTANCE_ID}:~/
結果(例):
foo.txt 100% 0 0.0KB/s 00:00
ファイルが転送されていることをリモートコマンドで確認します。
コマンド:
ssh ${EC2_INSTANCE_ID} ls
結果(例):
転送ファイルを削除します。
3. 後処理
完了条件の確認
「EC2インスタンスタグ名"handson-cli-ssm-session-manager-public-keypair-instance"のEC2インスタンスへのSSHアクセスが成功している。」ことを確認します。