Docsの書き方が不親切で、
そのままだとSystems ManagerからCloudWatch Agentがインストールできなかった。
原因を解消できたので備忘のため記載する。
前提条件
OSはRHEL8.6を使用
必要なネットワーク設定やIAMロールは設定済み
Run Command「AmazonCloudWatch-ManageAgent」でインストール失敗
【エラーメッセージ】
なんのことなのかよく分からない。
2022/08/31 06:42:32 Reading json config file path: /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.d/ssm_AmazonCloudWatch-linux.tmp ...
2022/08/31 06:42:32 I! Valid Json input schema.
failed to run commands: exit status 1
【原因】
サーバの統計情報を収集するためのcollectDが、
デフォルトではRHEL8.xには存在しないにもかかわらず、
collectDを監視すると設定していた。
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard
Do you want to monitor metrics from CollectD? WARNING: CollectD must be installed or the Agent will fail to start
1. yes
2. no
default choice: [1]:
【対処法1】
collectDをインストールする
- collectDのEPELパッケージのインストール
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y
- CodeReady Builderリポジトリの有効化
sudo /usr/bin/crb enable
- collectDのインストール
sudo yum install -y collectd
- 自動起動
sudo systemctl enable collectd.service
- 起動
sudo systemctl start collectd.service
sudo systemctl status collectd.service
【対処法2】
そもそもcollectDを使わないようにする。
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard
コマンド実行時に聞かれる質問のうち、
Do you want to monitor metrics from CollectD? WARNING: CollectD must be installed or the Agent will fail to start
1. yes
2. no
default choice: [1]:
で2. noを選択する。
その後Run CommandでAmazonCloudWatch-ManageAgentを実施する。
所感
設問のdefault choiceがyesなのであれば、
AgentにcollectDもパッケージしておいて欲しい。