Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
패커로 AMI 빌드하고, 베이그런트로 이미지 검증하기
Search
nacyot
July 28, 2018
Programming
370
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
패커로 AMI 빌드하고, 베이그런트로 이미지 검증하기
nacyot
July 28, 2018
More Decks by nacyot
See All by nacyot
코딩 에이전트 체크리스트: Claude Code ver.
nacyot
0
1.3k
AI 코딩 에이전트 더 똑똑하게 쓰기
nacyot
0
990
기술 블로그 생존 전략 - 구글 시대의 글쓰기
nacyot
7
2.9k
연말정산이란 무엇인가
nacyot
1
12k
테라폼 도입기: 클라우드 인프라스트럭처 코드로 재정의하기
nacyot
5
1.4k
Write the Docs Seoul Meetup #1: Explorable Explanations
nacyot
1
1k
Write the Docs Seoul Meetup #1: Welcome
nacyot
0
180
주피터: 파이썬 노트북, 파이썬을 넘어
nacyot
5
2.8k
ConfConf 2016 - Act Festival by 김대권
nacyot
0
700
Other Decks in Programming
See All in Programming
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
100
XP祭りでしか伝わらないフリップネタ #xpjug
murabayashi
0
120
Intent as Code
shoppingjaws
6
720
AWS DevOps Agentで インシデント対応をAIに任せたい
honmarkhunt
7
2.7k
スマート反転とウェブアクセシビリティ
camiha
0
180
20260828_品質と開発生産性を両立させる、AI時代のE2Eテストの考え方
magicpod
0
180
型解析で実現する Go の言語内 DSL / Conference に Go! タイムテーブルの歩き方 for Gophers
mazrean
0
140
ALB ログから Trace を気合で繋げる技術
fohte
7
880
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
6
1.7k
[DroidKaigi 2026] Bring your own phones to Gradle Managed Devices
f2lk
0
110
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
140
Press start. Python's next generation.
willingc
PRO
3
330
Featured
See All Featured
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
660
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Navigating Team Friction
lara
192
16k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
210
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Building Applications with DynamoDB
mza
96
7.2k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
290
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
600
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Transcript
ಁழPacker۽ AMI ࠽٘ೞҊ Hashicorp Korea User Group 1st Meetup @nacyo_t
߬Ӓ۠Vagrant۽ Ѩૐೞӝ
Ӕ݃
44bits.io
• Part 1. ಁழ • hashicorp/packer • Part 2. ߬Ӓ۠
• hashicorp/vagrant য়ט ઁ Hashicorp
• Part 1. ಁழ • ಁழ ࣗѐ ߂ AMI ࠽٘ೞӝ
• Part 2. ߬Ӓ۠ • ࢿ য়ט ઁ Hashicorp
ಁழ: ߧਊ ழझథ ࠽٘ بҳ Part 1
• ఋѶ গܻா࣌ زೞח Ӑഋ ࢚క • ۽࠺ դ ࢚కܳ
۽ ழझథ ࠽٘?
“ ۽࠺ۆ ࢲߡ ١ ਃࣗܳ ࢎਊೡ ࣻ ח ࢚క ۽
݅٘ח ରܳ ݈ೠ. ৈӝীח ೧ ਃࣗী ਗਸ ೡೞҊ, ੋझఢझചೞҊ, ҳࢿਸ ೠ റ, хदա DNS ৬ э ੋۄ ࢲ࠺झী ١۾ೞח ରо ನೣػ. ۽࠺ ରо ৮ܐغݶ ೧ ਃࣗח ࢎਊೡ ળ࠺о ػ Ѫ. ٘۽ ੋۄ ҙܻೞӝ 6, Kief Morris
• և • ೞ٘ਝয৬ ֎ਕ ਗਸ ನೣ • hashicorp/terraform
• ગ • ઁ ਤীࢲ গܻா࣌ਸ प೯ оמೠ ࢚క • hashicorp/packer ۽࠺
• և • ೞ٘ਝয৬ ֎ਕ ਗਸ ನೣ • hashicorp/terraform
• ગ • ઁ ਤীࢲ গܻா࣌ਸ प೯ оמೠ ࢚క • hashicorp/packer ۽࠺
• গܻா࣌ زೞח ੋझఢझܳ Ӓ۽ • ࢲߡҙܻо ࢲߡܳ
ࣻ • ߸҃ ࢎ೦ ਵݶ ࢚కܳ द Ӓ۽ • ࢲߡ ࢚కܳ ഝਊ оמೠ ഄनੋ ߑߨ! ӝઓ ࠽٘
ӝઓ ࠽٘ AMI A AMI A' AMI A'' AMI
A''' EC2 A EC2 A' EC2 A'' EC2 A'''
• গܻா࣌ زೞח ੋझఢझܳ Ӓ۽ • ࢲߡҙܻо ࢲߡܳ
ࣻ • ߸҃ ࢎ೦ ਵݶ ࢚కܳ द Ӓ۽ • ࢲߡ ࢚కܳ ഝਊ оמೠ ഄनੋ ߑߨ! • ҙܻо য۵Ҋ അ ࠛоמ New! ӝઓ ࠽٘
• ࠽٘ җਸ ഛ അ ࠛо • زചо য۵Ҋ
࠽٘/ઁܳ ࣚࣻ ೧ঠೣ • جইоҊ ח ࢲߡܳ ୭ೠ ߑೞѱ غח ࠗਊ • ઁ ਃೡ ݽܰ۽ ب ઁ ࠛо • ח ҅ࣘ ऺӝ݅ ೣ ӝઓ ࠽٘ ޙઁ
brew install packer
• ಁழ ࠽٘ח ࠽؊৬ ۽࠺ց ઑ • ࠽؊: ౠ ۖಬ
ܳ ݅٘ח ۞Ӓੋ • ۽࠺ց: ۽࠺ਸ ࣻ೯ೞח ۞Ӓੋ ಁழ ҳࢿ ਃࣗ ࠽؊ / ۽࠺ց
Builder Image Provisioner Image
Builder: docker Docker Image Provisioner shell Docker Image
Builder: virtualbox-ovf VirtualBox VM Provisioner chef-solo OVF
Builder: amazon-ebs AMI Provisioner ansible-local AMI
{ "builders": [ ... ], "provisioners": [ ... ] }
ಁழ ࢸ ੌ
"builders": [ { "type": "amazon-ebs", "region": "ap-northeast-2", "availability_zone": "ap-northeast-2c", "source_ami":
"ami-9d6fd8f3", "instance_type": "t2.small", "ssh_username": "ubuntu", "ami_name": "image {{isotime \"2006-01-02 1504\" | clean_ami_name}}", "security_group_ids": [ "sg-b8ad09d1", "sg-5594bc3f" ], "subnet_id": "subnet-abcacae1", "ssh_interface": "public_ip", "associate_public_ip_address": true } ], ࠽؊: amazon-ebs
"provisioners": [ { "type": "ansible", "playbook_file": "./provisioner/server.yml", "host_alias": "server", "extra_arguments":
[ "--extra-vars", "ansible_python_interpreter=/usr/bin/python3" ] } ] ۽࠺ց: ansible
• ಁழ ۽ં • ۽࠺ց৬ ೣԋ ٘۽ ҙܻ • ߸҃
ਸ ٸ݃ ݒߣ ܳ ࢜۽ ࠽٘ • ߸҃ ࢎ೦ ݽف غ۽ അ оמ೧ • ٘ച۽ ҙܻغ۽ زചо оמ೧ ಁழ ࠽٘ ౠ
Packer Build Builder: amazon-ebs AMI Provisioner ansible-local AMI
Packer Build Repo 8b819 AMI A Repo 2ce54 AMI B
Repo 099c3 AMI C Repo 934b6 AMI D commit
AMI A AMI A' AMI A'' AMI A''' EC2 A
EC2 A' EC2 A'' EC2 A''' Packer Build Repo 8b819 AMI A Repo 2ce54 AMI B Repo 099c3 AMI C Repo 934b6 AMI D commit ੋझఢझ ӝ߈ ࠽٘ ಁழܳ ࢎਊೠ ࠽٘
1. ੋझఢझ ߂ द ܻࣗझ ࢤࢿ 2. ੋझఢझী ܻ ળ࠺ೠ
۽࠺ց۽ ۽࠺ 3. ۽࠺ աݶ ࢚కܳ ۽ 4. ੋझఢझ ߂ द ܻࣗझ ઁѢ ಁழ۽ ࠽٘ җ
• nacyot/packer_and_vagrant ؘݽ 01 ಁழ۽ AMI ࠽٘
• ݽٚ җ ױ ೠ ߑী ܖয • ࠽٘
दр ӡ • ਗਵ۽ ࠽٘ җী ѐੑೡ ࣻ হ • ۽࠺ীࢲ ޙઁо ࢤӝݶ ࠗఠ द ಁழ ױ
߬Ӓ۠۽ ࢿ Part 2
brew cask install vagrant
ठۄ٘ ࢚
• ߬Ӓ۠ ߅झח ۽߄؊৬ ۽࠺ց ઑ • ۽߄؊: ౠ ۖಬ
VMਸ ݅٘ח ۞Ӓੋ • ۽࠺ց: ۽࠺ਸ ࣻ೯ೞח ۞Ӓੋ ߬Ӓ۠ ҳࢿਃࣗ ۽߄؊ / ۽࠺ց
• ۽߄؊ vs. ࠽؊ • ಁழ ࠽؊ח ߬Ӓ۠ ۽߄؊ী
• ۽߄؊: Ѿҗޛ۽ VMਸ ݅ٝ • ࠽٘: Ѿҗޛ۽ ܳ ݅ٝ • ۽࠺ց = ۽࠺ց ߬Ӓ۠৬ ಁழ ࠺Ү (1)
• ಁழ ࠽٘ • ܻࣗझ ࢤࢿ, ࠽٘, ܻࣗझ
ઁѢо ೠߣী • ߬Ӓ۠ VM ળ࠺ җ • upਸ ೞݶ VMਸ ࢤࢿೞҊ ۽࠺ ೯ؽ • ۽࠺ցо ߸҃غݶ ୶о۽ provision оמ • VM ਗೞח दী destroy оמ ߬Ӓ۠৬ ಁழ ࠺Ү (2)
Packer Build Repo 8b819 AMI A Repo 2ce54 AMI B
Repo 099c3 AMI C Repo 934b6 AMI D commit
ग܉٬Ѣ ಁழ ࠽٘ ࠽٘ܳ प೯ೞӝ өח ࠽٘ ࢿҕ ৈࠗܳ ঌ
ࣻ হ ۽࠺ց ٘ সؘ
Packer Build Repo 8b819 AMI A Repo 2ce54 Error! Repo
099c3 Error! Repo 934b6 AMI D commit
Repo a3e89 Packer build Repo 32ab21 AMI VM vagrant up
VM' VM'' vagrant provision vagrant provision error! update provisioner code
о࢚ ݠन? о࢚ ݠनҗ ಁழ ࠽٘ ജ҃ ܰ
• VM न AWS ੋझఢझо प೯ • ಁழо पઁ۽ ࠽٘ೞח
ജ҃ਸ Ӓ۽ ࢎਊ оמ • AMI ܳ ࢎਊ оמ • ই݃ઓ ֿܻझ ജ҃ب ࢎਊ оמ • ݄݃ ழ 2016֙... vagrant-aws ߬Ӓ۠ AWS ۽߄؊
• nacyot/packer_and_vagrant ؘݽ 02 vagrant-aws ۽࠺
• destroyܳ ೞ ঋਵݶ ੋझఢझо ҅ࣘ թই • زਵ۽ ઙܐೞب۾
ҳࢿೞח ѱ ߬झ • ޑೞѱ ಁழ ࠽٘ ജ҃җ ܳ ࣻ • оמೞݶ ݽٚ ২࣌ਸ ಁழ ജ҃җ زੌೞѱ • ۽࠺ਸ ৈ۞ߣ ೞࠁݶ ࢚కо ׳ۄ • ಁழ ࠽٘ ীח destroy റ द up೧ࢲ Ѩૐ ߬Ӓ۠ ೣ
• ಁழܳ ࢎਊ೧ ࠽٘ܳ زച • ߬Ӓ۠ܳ ࢎਊ೧
࠽٘ җਸ ܻ Ѩૐ • Ӕ݃ীࢲ पઁ۽ ࢎਊೞҊ ח ߑߨ • Үള: әೡࣻ۾ جইо Ѿۿ
None
Thank you @nacyo_t