【以下的问题经过翻译处理】 你们好,
我使用CDK创建了一个ec2实例并在其中添加了用户数据:
const userData = readFileSync("lib/my-script.sh", "utf8");
instance.addUserData(userData);
instance.applyRemovalPolicy(RemovalPolicy.DESTROY);
my-script.sh :
#! /bin/bash
sudo su
yum -y update
# 将MYSQL客户端添加到连接到RDS(MYSQL)实例中。
sudo yum install mysql
但是,当我通过会话管理器选项卡连接到我的ec2实例并运行MySQL命令时,出现以下错误:
sh: mysql: command not found
看起来用户数据脚本未运行。
有什么做错的吗?如何知道用户数据脚本是否成功在ec2实例上运行?
在/var/log/cloud-init-output.log
中找到以下内容:
Sep 15 00:17:50 cloud-init[xxxx]: util.py[WARNING]: Failed running /var/lib/cloud/instance/scripts/part-001 [1]
Sep 15 00:17:50 cloud-init[xxxx]: cc_scripts_user.py[WARNING]: Failed to run module scripts-user (scripts in /var/lib/cloud/instance/scripts)
Sep 15 00:17:50 cloud-init[xxxx]: util.py[WARNING]: Running module scripts-user (<module 'cloudinit.config.cc_scripts_user' from '/usr/lib/python2.7/site-packages/cloudinit/config/cc_scripts_user.pyc'>) failed
ci-info: no authorized ssh keys fingerprints found for user ec2-user.
谢谢!