目次
メディアタイプのテストでのエラー
メディアタイプにawscliのコマンドを記述したスクリプトを登録して実行した際に、下記のようなエラーとなることがあります。これは、Zabbixユーザーでawscliコマンドが実行できない状態になっていることが原因です。
メディアタイプのテストに失敗しました。
– You must specify a region. You can also configure your region by running “aws configure”.
解決方法
Zabbixユーザーで”aws configure”を実行したいのですが、”nologin”となっているため、ログインしてコマンドを実行することができません。そのため、下記の手順を踏む必要があります。
cat /etc/passwd | grep zabbix
[ec2-user@ip-10-0-0-100 ~]$ cat /etc/passwd | grep zabbix
zabbix:x:xxx:xxx:Zabbix Monitoring System:/var/lib/zabbix:/sbin/nologin
Zabbixユーザー用のディレクトリ作成
Zabbixユーザー用のAWSクレデンシャル情報を格納するディレクトリを作成します。
cd /var/lib/zabbix/
sudo mkdir .aws
sudo chown zabbix:zabbix .aws
作成したディレクトリを確認します。
ls -al
[ec2-user@ip-10-0-0-100 zabbix]$ ls -al .aws
合計 4
drwxr-xr-x 3 root root 18 10月 5 07:01 .
drwxr-xr-x 35 root root 4096 10月 2 20:34 ..
drwxr-xr-x 2 zabbix zabbix 6 10月 5 07:01 .aws
シェルを指定してsuし、awscliを設定
nologinシェルでは無い、別のシェルを指定してsuします。
sudo su -s /bin/bash - zabbix
[ec2-user@ip-10-0-0-100 ~]$ sudo su -s /bin/bash - zabbix
-bash-4.2$
-bash-4.2$ pwd
/var/lib/zabbix
“aws configure”を実施します。
aws configure
-bash-4.2$ aws configure
AWS Access Key ID [None]: XXXXXXXXXXXXXXX
AWS Secret Access Key [None]: XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Default region name [None]: ap-northeast-1
Default output format [None]:
-bash-4.2$
設定を確認します。
aws configure list
-bash-4.2$ aws configure list
Name Value Type Location
----- ---- --------
profile <not set> None None
access_key ****************XXXX shared-credentials-file
secret_key ****************XXXX shared-credentials-file
region ap-northeast-1 config-file ~/.aws/config
メディアタイプのテスト
メディアタイプのテストで、スクリプトが実行可能なことを確認します。
以上で、Zabbixユーザーでawscliコマンドを実施する方法の説明は完了です。