Userdata Stop/Start시 실행하기

기본적으로 리눅스는 rc.local 에 스크립트를 설치하면 부팅 시에 실행된다. 하지만 AWS 에서는 Userdata라는 기능을 통해 OS 에 접근하지 않더라도 초기부팅[initial Launch] 시에 실행하게 해준다.

EC2 콘솔에서 인스턴스를 STOP할 때, 혹은 Launch 할 때, 아래와 같이 클릭하면 Userdata를 입력/수정 할 수 있다.

EC2 Management Console 2018-09-04 13-27-35

하지만 Userdata는 initial Launch에만 실행되는게 디폴트이기 때문에, 아래와 같은 형식으로 스크립트를 입력해야 Start 될 때마다 실행된다. 해보니 잘 된다.

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
--//
출처 : https://aws.amazon.com/premiumsupport/knowledge-center/execute-user-data-ec2/
Advertisements

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중