AWSCLIおよびSSMエージェントの、Linuxサーバへのインストールスクリプトを作成しました。
個人的には、AmazonLinux以外のインスタンスにも標準で設定しておいてほしい...
install.sh
#!/bin/bash
# AWS CLIインストール
echo "awscliv2.zipをダウンロードします..."
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "/tmp/awscliv2.zip"
check_exists_unzip=$(yum list installed | grep unzip)
if [ "$check_exists_unzip" == "" ]; then
echo "解凍パッケージunzipを新規インストールします..."
yum install -y unzip > /dev/null
if [ "$?" == 0 ]; then
echo "unzipのインストールに成功しました..."
else
echo "エラー: unzipのインストールに失敗しました。" >&2
exit 1
fi
fi
echo "awscliv2.zipを解凍します..."
unzip /tmp/awscliv2.zip -d /tmp > /dev/null
echo "awscliv2をインストールします..."
/tmp/aws/install > /dev/null
aws --version
if [ "$?" == 0 ]; then
echo "awscliのインストールに成功しました。"
else
echo "エラー: awscliインストールに失敗しました。処理を中断します。" >&2
exit 1
fi
rm -rf /tmp/awscliv2.zip
rm -rf /tmp/aws
#ユーザーのリージョンで RHEL 9 用のSSMカスタムエージェントインストール
echo "SSMエージェントをインストールします..."
dnf install -y https://s3.ap-northeast-1.amazonaws.com/amazon-ssm-ap-northeast-1/latest/linux_amd64/amazon-ssm-agent.rpm > /dev/null
if [ "$?" == 0 ]; then
echo "SSMエージェントのインストールに成功しました..."
else
echo "エラー: SSMエージェントのインストールに失敗しました。処理を中断します。" >&2
exit 1
fi
echo "SSMエージェントの稼働ステータスを確認します..."
check_status=$(systemctl status amazon-ssm-agent | awk '/Active:/ {print $2}')
if [ "$check_status" == "active" ]; then
echo "SSMエージェントは正常に稼働しています。"
else
echo "エラー: Amazon SSM Agent が正常に動作していません。処理を中断します。"
exit 1
fi
echo "全ての処理が完了しました。"
ということで初めての投稿でした。
投稿を続けられるようコメントは最小限です..