22B. EC2 ์ธ์คํด์ค๋ฅผ ์์ฑํ๋ CloudFormation ํ ํ๋ฆฟ
22B. EC2 ์ธ์คํด์ค๋ฅผ ์์ฑํ๋ CloudFormation ํ ํ๋ฆฟ ๊ด๋ จ
์ด์ EC2 ์ธ์คํด์ค๋ฅผ ์์ฑํ๋ ํ ํ๋ฆฟ์ ์์๋ณด๊ฒ ์ต๋๋ค.
Parameters
โKeyPair
: EC2 ์ธ์คํด์ค ์ ์์ ์ฌ์ฉํ ํค ์ ์ด๋ฆ์ ์ ๋ ฅ ๋ฐ์ต๋๋ค. ์ ๋ ฅ ๋ฐ๋ ํ์์ ๋ฌธ์์ด(String)์ด๋ฉฐ Default๋ก ๊ธฐ๋ณธ๊ฐ์ ์ ํ ์ ์์ต๋๋ค.Resources
:Ec2Instance
: ํ ํ๋ฆฟ์์ AWS ๋ฆฌ์์ค๋ฅผ ๊ตฌ๋ถํ ๋ฆฌ์์ค ID์ ๋๋ค. MyInstance, ExampleInstance๋ฑ๊ณผ ๊ฐ์ด ์ฌ์ฉํ ์ ์์ต๋๋ค.Type
: AWS ๋ฆฌ์์ค ์ข ๋ฅ๋ฅผ ์ค์ ํฉ๋๋ค. EC2 ์ธ์คํด์ค๋ AWS::EC2::Instance์ ๋๋ค.Properties
: AWS ๋ฆฌ์์ค๋ฅผ ์์ฑํ ๋ ํ์ํ ์ต์ ์ ๋๋ค. KeyName์ Ref๋ฅผ ์ง์ ํ๋ฉด Parameters์ ์ง์ ํ ๋๋ก ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๊ฐ์ ์ฌ์ฉํ๊ณ , "KeyName" : "awskeypair"์ฒ๋ผ ๊ฐ์ ๋ฐ๋ก ์ง์ ํ ์ ์์ต๋๋ค. ImageId์๋ AMI ์ด๋ฏธ์ง ID๋ฅผ ์ค์ ํ๊ณ , InstanceType์๋ ์ธ์คํด์ค ์ ํ์ ์ค์ ํฉ๋๋ค.
EC2 ์ธ์คํด์ค๋ฅผ ์์ฑํ๋ CloudFormation ํ ํ๋ฆฟ(
createec2instance.template
)
{
"Description" : "Create an EC2 instance running the Amazon Linux 64 bit AMI.",
"Parameters" : {
"KeyPair" : {
"Description" : "The EC2 Key Pair to allow SSH access to the instance",
"Type" : "String",
"Default" : "awskeypair"
}
},
"Resources" : {
"Ec2Instance" : {
"Type" : "AWS::EC2::Instance",
"Properties" : {
"KeyName" : { "Ref" : "KeyPair" },
"ImageId" : "ami-c9562fc8",
"InstanceType" : "t1.micro"
}
}
},
"Outputs" : {
"InstanceId" : {
"Description" : "The InstanceId of the newly created EC2 instance",
"Value" : {
"Ref" : "Ec2Instance"
}
}
},
"AWSTemplateFormatVersion" : "2010-09-09"
}
ImageId์ ์ค์ ํ ami-c9562fc8๋ Tokyo ๋ฆฌ์ ์์ amzn-ami-pv-2014.03.1.x86_64-ebs์ AMI ์ด๋ฏธ์ง ID์ ๋๋ค. ํ์ง๋ง Oregon ๋ฆฌ์ ์์๋ ami-043a5034์ ๋๋ค. ๊ฐ์ AMI๋ผ๋ ๋ฆฌ์ ์ ๋ฐ๋ผ์ ์ด๋ฏธ์ง ID๊ฐ ๋ค๋ฆ ๋๋ค. ๋ฐ๋ผ์ ํ ํ๋ฆฟ์ ์์ฑํ ๋ ์ด๋ฏธ์ง ID์ ๋ฆฌ์ ์ด ๋ง๋์ง ๋ฐ๋์ ํ์ธํฉ๋๋ค.
AWS Resource Types Reference
AWS ๋ฆฌ์์ค ์ข ๋ฅ์ ๋ํ ์์ธํ ๋ด์ฉ์ ๋ค์ ๋งํฌ๋ฅผ ์ฐธ์กฐํ๊ธฐ ๋ฐ๋๋๋ค.
CloudFormation ํ ํ๋ฆฟ ํ์ผ์๋ ํ๊ธ์ ์ฌ์ฉํ ์ ์์ต๋๋ค(UTF-8๋ก ์ ์ฅํด๋ ํ๊ธ์ด ํ์๋์ง ์์ต๋๋ค).
UTF-8๊ณผ BOM
CloudFormation ํ ํ๋ฆฟ ํ์ผ์ UTF-8 ์ธ์ฝ๋ฉ์ผ๋ก ์ ์ฅํด์ผ ํ๋ฉฐ BOM(Byte Order Mark)์ด ์์ด์ผ ํฉ๋๋ค(UTF-8 without BOM). Vim์์ BOM์ ์ง์ฐ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ ์ ๋ ฅํ๋ฉด ๋ฉ๋๋ค.
:set nobomb
:wq
์์ธํ ๋ด์ฉ์ ๋ค์ ๋งํฌ๋ฅผ ์ฐธ์กฐํ๊ธฐ ๋ฐ๋๋๋ค.