Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DevOps + AWS #jawsug
Search
Naoya Ito
August 02, 2013
Technology
37
7.7k
DevOps + AWS #jawsug
Naoya Ito
August 02, 2013
Tweet
Share
More Decks by Naoya Ito
See All by Naoya Ito
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
20
6.4k
Functional TypeScript
naoya
15
6.4k
TypeScript 関数型スタイルでバックエンド開発のリアル
naoya
72
35k
シェルの履歴とイクンリメンタル検索を使う
naoya
16
6.3k
20230227-engineer-type-talk.pdf
naoya
90
78k
関数型プログラミングと型システムのメンタルモデル
naoya
62
110k
TypeScript による GraphQL バックエンド開発
naoya
29
36k
フロントエンドのパラダイムを参考にバックエンド開発を再考する / TypeScript による GraphQL バックエンド開発
naoya
67
24k
「問題から目を背けず取り組む」 一休の開発チームが6年間で学んだこと
naoya
144
60k
Other Decks in Technology
See All in Technology
DataOpsNight#8_Terragruntを用いたスケーラブルなSnowflakeインフラ管理
roki18d
1
340
Green Tea Garbage Collector の今
zchee
PRO
2
390
生成AIを活用したZennの取り組み事例
ryosukeigarashi
0
200
リーダーになったら未来を語れるようになろう/Speak the Future
sanogemaru
0
280
about #74462 go/token#FileSet
tomtwinkle
1
290
Escaping_the_Kraken_-_October_2025.pdf
mdalmijn
0
120
ZOZOのAI活用実践〜社内基盤からサービス応用まで〜
zozotech
PRO
0
170
stupid jj tricks
indirect
0
7.9k
AIが書いたコードをAIが検証する!自律的なモバイルアプリ開発の実現
henteko
1
340
LLMアプリケーション開発におけるセキュリティリスクと対策 / LLM Application Security
flatt_security
7
1.8k
AWSにおけるTrend Vision Oneの効果について
shimak
0
120
非エンジニアのあなたもできる&もうやってる!コンテキストエンジニアリング
findy_eventslides
3
910
Featured
See All Featured
Building Adaptive Systems
keathley
43
2.8k
Being A Developer After 40
akosma
91
590k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Music & Morning Musume
bryan
46
6.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Automating Front-end Workflow
addyosmani
1371
200k
The Language of Interfaces
destraynor
162
25k
Transcript
%FW0QT "84 /BPZB*UP
"84.BOBHFNFOU $POTPMF
None
None
切腹
1BDLFS
1BDLFSͰ".* // packer.json { "builders" : [{
"type" : "amazon-‐ebs", "access_key" : "...", "secret_key" : "...", "region" : "ap-‐northeast-‐1", "source_ami" : "ami-‐e5b33ce4", "instance_type" : "t1.micro", "ssh_username" : "ec2-‐user", "ami_name" : "packer-‐example {{.CreateTime}}" }] }
QBDLFSCVJME
1BDLFSͷQSPWJTJPOFST // packer.json { "provisioners": [
{ "inline": [ "sleep 30", "curl -‐L https://www.opscode.com/chef/install.sh | sudo bash" ], "type": "shell" } ] }
7BHSBOU
7BHSBOU͕ϩʔΧϧͷ7.ཱͪ ্͛Δπʔϧͩͱࢥ͍ͬͯΔͦ͜ ͷΞφλ
切腹
% vagrant init % vagrant up
7BHSBOUX&$ # Vagrantfile Vagrant.configure(2) do |config| config.vm.box
= "dummy" config.vm.provider :aws do |aws, override| aws.access_key_id = ENV['AWS_ACCESS_KEY_ID'] aws.secret_access_key = ENV['AWS_SECRET_ACCESS_KEY'] aws.keypair_name = "naoya's keys" aws.instance_type = "t1.micro" aws.region = "ap-‐northeast-‐1" aws.ami = "ami-‐a3af2ba2" aws.security_groups = [ 'webserver' ] aws.tags = { 'Name' => 'vagrant-‐test' } override.ssh.username = "ec2-‐user" override.ssh.private_key_path = "~/.ssh/aws-‐naoyaskeys.pem" end end
% vagrant up -‐-‐provider=aws
WBHSBOUVQ
͍͟ɺϓϩϏδϣχϯά
% knife cookbook create nginx –o cookbooks
Ϩγϐॻ͘ package "nginx" do action :install end
service "nginx" do action [:enable, :start] end
7BHSBOU $IFG package "nginx" do action :install
end service "nginx" do action [:enable, :start] end
WBHSBOUQSPWJTJPO
ͯ͞ɺಈ࡞֬ೝɾɾɾ
None
TFSWFSTQFD
% vagrant ssh-‐config \ -‐-‐host=ec2-‐test >> ~/.ssh/config %
serverspec-‐init
ςετॻ͘ require 'spec_helper' describe package('nginx') do
it { should be_installed } end describe service('nginx') do it { should be_enabled } it { should be_running } end describe port(80) do it { should be_listening } end
SBLFTQFD
͍ͭͰʹ(VBSE ϑΝΠϧॻ͖͑ͨΒࣗಈͰςετ
% vagrant destroy ςετऴΘͬͨ͠
େࣄͳ͜ͱͦͷ̍ ͜͜·Ͱ.BOBHFNFOU $POTPMFҰͳ͠
ͱ͍͏͜ͱŋŋŋʁ
ࣗಈԽ
"84$* h"p://d.hatena.ne.jp/naoya/20130521/1369102714
େࣄͳ͜ͱͦͷ શ෦ίʔυʹͳͬͯΔ
ͱ͍͏͜ͱŋŋŋʁ
(JUIVC
"844PDJBM$PEJOH
·ͱΊ DIFGΔ͚͕ͩ%FW0QTͰ͋Γ·ͤΜ ·ͱ·ͬͯͳ͍
ߟ • "84Ͱં֯ϋʔυͷ੍͕ແ͘ͳͬͨΘ ͚ͩ͠ • ͳΔ͘ιϑτΣΞͰָ͠·͠ΐ͏ • ָ࡞ۀෛՙ͕গͳ͍BOEָ͍͠ • $*4PDJBM$PEJOHͷΑ͏ͳɺΑΓϨ
ΠϠͷߴ͍ӡ༻ϓϩηε·Ͱঢ՚ͤͯ͞ ͳΜ΅
None