Amazon ec2 사용자 데이터, 어떻게 작동합니까?
우리는 인스턴스를 시작하고 우리가 배치 한 사용자 데이터에 액세스합니다. 그러나 아무도 (아마존 측에서)이 작업의 내부를 이해합니까? 사용자 데이터를 전달할 때 데이터가 VM으로 전송되는 시점 (Xen 기능)은 어디이며 어디에 저장됩니까?
처음에는 USER_DATA 환경 변수로 설정되었다고 생각했지만 파일로 전달할 수도 있습니다. 그 파일은 어디에 저장됩니까? 모든 인스턴스에 일반적입니까, 아니면 AMI에 따라 다릅니 까?
이것은 그 자체로 문제가 아니며 Amazon이 어떻게 수행하는지 알고 싶었습니다.
사용자 데이터 스크린 샷 : http://d.pr/GZlY
사용자 데이터는 다음 URL에서 간단한 HTTP 요청을 통해 인스턴스에서 사용할 수 있습니다.
http://169.254.169.254/latest/user-data
Amazon EC2는이 사용자 데이터를 인스턴스에 직접 저장하지 않지만, 많은 AMI에는 인스턴스가 사용자 데이터를 자동으로 다운로드하고 처리하도록 지시하는 코드가 있습니다.
또한보십시오:
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html
모든 사람이 쉽게 이해할 수있는 예 : /tmp/testfile.txt
머신이 시작될 때 파일을 생성하려면 이 두 줄을 User data
필드 에 추가하면 됩니다.
#!/bin/bash
touch /tmp/testfile.txt
#!/bin/bash
명령 앞에를 맨 위에 두는 것을 잊지 마십시오.
인스턴스 (Linux AMI)를 실행하면 다음 위치에서 User data
필드 내용을 볼 수 있습니다./var/lib/cloud/instance/user-data.txt
이러한 오래된 질문에 게시하게되어 죄송합니다.이 추가 정보를 입력하기에 가장 좋은 장소 인 것 같습니다.
대부분의 모든 AWS 문서는 사용자 데이터를 인스턴스 수명주기 시작 스크립팅을 넣을 속성, 즉 인스턴스가 처음 시작될 때만 실행하려는 항목으로 설명합니다.
이것은 대개의 경우이지만, 다시 시작할 때 다른 스크립팅을 수행하기를 원하는 나 외에 적어도 한 명의 다른 사람이 있습니다. 그리고 추측 해보세요 ... 사용자 데이터를 사용하여 할 수 있습니다.
Content-Type: multipart/mixed; boundary="//"
MIME-Version: 1.0
--//
Content-Type: text/cloud-config; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="cloud-config.txt"
#cloud-config
cloud_final_modules:
- [scripts-user, always]
--//
Content-Type: text/x-shellscript; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="userdata.txt"
#!/bin/bash
/bin/echo "Hello World." >> /tmp/sdksdfjsdlf
--//
이를 가능하게하는 사용자 데이터 형식에 대한 문서를 찾을 수 없습니다. 나는 그것을 시도했고 작동합니다. 나는 모든 시작에서 실행되는지 확인하려고 노력했으며 실제로 실행됩니다.
So, if you think you need to do this, I recommend that you backup. Make sure you have a copy of the original User Data, and use the code provided modified to suite, and remove the code upon the next time you stop the instance (to avoid multiple runs of the script).
AWS userdata is the set of commands/data you can provide to a instance at launch time. For example if you are launching an ec2 instance and want to have docker installed on the newly launched ec2, than you can provide set of bash commands in the userdata field of aws ec2 config page.
Usecase
Automated deployments
Orchestrating newly launched instance
AWS Autoscaling
Here is a well explained example of AWS userdata with video tutorial
#!/bin/bash
yum update -y
yum install httpd -y
echo "<html><h1>webpage 1(whatever you want, give the page name here)</h1></html>"
/var/www/html/index.html
service httpd start
chkconfig httpd on
참고URL : https://stackoverflow.com/questions/9764145/amazon-ec2-user-data-how-does-it-work
'IT Share you' 카테고리의 다른 글
doctype이 필요한 이유는 무엇입니까? (0) | 2020.12.12 |
---|---|
gc ()와 rm ()의 차이점은 무엇입니까? (0) | 2020.12.12 |
Composer로 jQuery를 설치하는 방법은 무엇입니까? (0) | 2020.12.12 |
localStorage가 가득 차면 어떻게됩니까? (0) | 2020.12.12 |
파이썬에서 subprocess.check_output ()을 어떻게 사용합니까? (0) | 2020.12.12 |