如何修复AWS EC2的启动脚本,以显示世界,其他来自169.254.169.254

时间:2019-07-07 17:38:08

标签: linux amazon-web-services amazon-ec2 metadata startupscript

我正在设置新的EC2实例,并且希望能够看到问候世界,显示的AZ和IP地址。它仅显示apache起始页面。

我已经在EC2的用户启动部分,高级详细信息,用户数据中预载了下面列出的代码,并单击并选择了“作为文本添加”。

我从udemy的培训视频中复制了此文本,该视频由Stephane Maarek撰写的Ultimate AWS Certified Solutions Architect Associate 2019,第60课,rt53 EC2设置约为1:11。

#!/bin/bash
  yum update -y
  yum install -y httpd
  systemctl start httpd.service
  systemctl enable httpd.service
  EC2_AVAIL_ZONE=$(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone)
  echo "<h1>Hello World From Rokkitt at $(hostname -f) in AZ $EC2_AVAIL_ZONE </h1> > /var/www/html/index.html

我只是获得apache的起始页面,而不是hello world和用户元数据信息。谢谢,我才刚开始,所以对任何错误我深表歉意。

2 个答案:

答案 0 :(得分:0)

将html回显到index.html中时,您不会用双引号引起来。请尝试以下。

#!/bin/bash
  yum update -y
  yum install -y httpd
  systemctl start httpd.service
  systemctl enable httpd.service
  EC2_AVAIL_ZONE=$(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone)
  echo "<h1>Hello World From Rokkitt at at $(hostname -f) in AZ $EC2_AVAIL_ZONE </h1>” > /var/www/html/index.html

答案 1 :(得分:0)

好的,谢谢...

仔细查看后,我错过了如上所述的结尾报价。谢谢!另外,我花了一些时间确保cat命令中包含字符串/var/www/html/index.html的index.html文件存在,并且它向我显示了该文件的内容。再次感谢你!

此外,我设置了nacl和安全组以及Internet网关IGW以允许icmp通信,因此也可以ping通该实例。

谢谢!

1082