1 sudo cat <<'EOF' > /usr/local/bin/update-metadata.sh #!/bin/bash # 메타데이터 서버가 준비될 때까지 최대 30초 대기 for i in {1..30}; do TOKEN=$(curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600" -s) if [ ! -z "$TOKEN" ]; then break; fi sleep 1 done # 최신 IMDSv2 토큰으로 정보 추출 INSTANCE_ID=$(curl -H "X-aws-ec2-metadata-token: $TOKEN" -s http://169.254.169.254/latest/meta-data/instance-id) PRIVATE_IP=$(curl -H "X-aws-ec2-metadata-token: $TOKEN" -s http://169.254.169.254/latest/meta-data/local-ipv4) # 웹 페이지 갱신 cat < /var/www/html/index.html

Managed by Auto-Update Service

Current Private IP: ${PRIVATE_IP}

Instance ID: ${INSTANCE_ID}

Last Boot: $(date)

EOT # 실행 권한 부여 chmod +x /usr/local/bin/update-metadata.sh EOF # 파일에 실행 권한 적용 (확인용) sudo chmod +x /usr/local/bin/update-metadata.sh 2 sudo cat < /etc/systemd/system/update-metadata.service [Unit] Description=Update EC2 Metadata on Boot After=network-online.target Wants=network-online.target Before=httpd.service [Service] Type=oneshot ExecStart=/usr/local/bin/update-metadata.sh RemainAfterExit=yes [Install] WantedBy=multi-user.target EOF 3 # 서비스 활성화 sudo systemctl daemon-reload sudo systemctl enable update-metadata.service # Apache 설치 및 활성화 sudo yum install -y httpd sudo systemctl enable httpd