繁体   English   中英

如何使用 AWS CLI 在 EC2 中执行 linux 命令

[英]How can I execute linux command inside EC2 using AWS CLI

我有一些在 AWS 上运行的 EC2 实例。 我可以使用 AWS CLI 命令获取实例详细信息并启动和停止实例。 我正在寻找一种使用 CLI 在 AWS EC2 实例中执行一些 Linux 命令的方法。

实际上,我正在创建一个 Jenkins 管道,它使用 AWS CLI 停止和启动 EC2 实例。 但是我还需要在 EC2 启动后执行一些命令。

我尝试使用aws ssm send-command ,但似乎该命令对我不起作用。 我尝试了下面的示例命令并得到了错误。

aws ssm send-command \
    --instance-ids "instance-ID" \
    --document-name "AWS-RunShellScript" \
    --comment "IP config" \
    --parameters commands=ifconfig \
    --output text

错误:

An error occurred (InvalidInstanceId) when calling the SendCommand operation: Instances [[i-xxxx]] not in a valid state for account XXXXXXXX

是否有任何替代方法可以使用 AWS CLI 执行命令?

您的 EC2 实例是否可以在 Systems Manager 中查看? 如果您的 EC2 实例无法与 Systems Manager 对话,您将无法使用aws ssm send-command

确保您的 EC2 实例具有以下角色:

  • AmazonSSMManagedInstanceCore`

确保您的 EC2 可以访问以下 Internet 域(或 VPC 终端节点):

  • ssm.[地区].amazonaws.com
  • ec2messages.[区域].amazonaws.com
  • ssmmessages.[地区].amazonaws.com

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM