クラメソ的
CloudFormationのススメ
gumiStudy  #18
2014/02/20

classmethod.jp

Kazuki  Ueki

1
本⽇日の内容
² CloudFormationでなにができるの?
² メリット、デメリット
² ビッグバンテンプレート企画裏裏話
² CloudFormation  ノ  ススメ
⾃自⼰己紹介

名前:植⽊木  和樹(うえき  かずき)
年年齢:37歳
出⾝身:新潟県妙⾼高市(単⾝身赴任中)

元製造業情報システムG常駐
主にUnixサーバエンジニア(監視、保守)

@czkuk

資格:IPAITサービスマネージャ
      IPA  システムアーキテクト
      AWS  Certified  Solutions  Architect  -‐‑‒  Associate  Level
JAWS北北陸陸コアメンバー(JAWS  DAYS  2013〜~)
JAWS埼⽟玉コアメンバー(2013年年8⽉月〜~)
好きなAWSサービス:SQS

classmethod.jp

3
CloudFormation  してますか?

classmethod.jp

4
クラメソはCFn推しです

650記事中
47件
classmethod.jp

5
2013.12  アドカレ

classmethod.jp

6
CloudFormation  とは?

classmethod.jp

7
なにができるの?
AWS  CloudFormation  は、関連する  AWS  リソー
スの集約を整った予測可能な⽅方法でプロビジョニン
グおよび更更新し、開発者やシステム管理理者が容易易に
それらを作成・管理理できるようにします。

!?

http://aws.amazon.com/jp/cloudformation/
classmethod.jp

8
英語ページ
AWS	
  CloudForma.on	
  gives	
  developers	
  and	
  
systems	
  administrators	
  an	
  easy	
  way	
  to	
  create	
  
and	
  manage	
  a	
  collec0on	
  of	
  related	
  AWS	
  
resources,	
  provisioning	
  and	
  upda.ng	
  them	
  in	
  an	
  
orderly	
  and	
  predictable	
  fashion.	
  

http://aws.amazon.com/en/cloudformation/
classmethod.jp

9
easy  way  to  create  a  
collection  of  AWS  resources
アプリケーション
ミドルウェア
OS
AWSサービス

classmethod.jp

Capistrano
Chef,  Puppet
CloudFormation

10
related  AWS  resources
①  VPC(10.0.0.0/16)を作成して
②  Subnet  をMulti-‐‑‒AZ  で4つ作成
③  RouteTableを設定
④  ELBを作成してEC2を2台ぶらさげ
⑤  RDS  はMySQL  5.6でディスク5GB
⑥  SecurityGroupでEC2→RDSへ接続許可

classmethod.jp

11
easy  way  to  manage  a  
collection  of  AWS  resources
•  AWSサービスの定義はJSONで記述

https://gist.github.com/miyamoto-‐‑‒daisuke/7149842

•  Management  Consoleやaws-‐‑‒cliから実⾏行行
aws	
 cloudformation	
 create-stack	
 --stack-name	
 mystack	
 --templatebody	
 file://vpc-knowhow.template	
 --parameters	
 file://
mystack_parameters.json	
 

•  更更新可能(重要)
aws	
 cloudformation	
 update-stack	
 --stack-name	
 mystack	
 --templatebody	
 file://vpc-knowhow.template	
 --parameters	
 file://
mystack_parameters.json	
 

classmethod.jp

12
1.  Create  new  Stack

classmethod.jp

13
2.  Select  template  file

classmethod.jp

14
3.  Specify  Parameters
1.  RDSのUser/Password
2.  Route53ゾーン名
3.  キーペア名
4.  SSH踏み台を利利⽤用できるIPアドレス

classmethod.jp

15
4.  Set  Options

classmethod.jp

16
5.  Review

classmethod.jp

17
6.  Creating  Stack…

classmethod.jp

18
7.  Create  Stack  Completed

classmethod.jp

19
メリット・デメリット

classmethod.jp

20
メリット
•  クリックで環境構築
•  再利利⽤用可能
•  コード化

http://www.slideshare.net/takipone/675cloudformationcapistrano3
classmethod.jp

21
デメリット
• 
• 
• 
• 
• 

特にデメリットはない、がクセがある
JSON...コメント...
ランダムなID⽂文字列列
対応していないサービス、プロパティ
COMPLETE直前でロールバック

classmethod.jp

22
クラメソ的
CloudFormation  ノ  ススメ

classmethod.jp

23
AWS初めて/インフラが苦⼿手
な⼈人にこそ
CloudFormationを使ってほしい!

classmethod.jp

24
CFnを使わない理理由
•  使いどころが分からない
•  使い⽅方が分からない
•  どう書いていいか分からない

•  JSONがわからない(慣れろ!)
•  なに書いていいかわからない

classmethod.jp

25
⽈曰く
⼀一⽅方、AWS中級者の⽅方は、これらを参考にして
是⾮非何かひとつテンプレートを書いてみてくだ
さい。AWSの各プロダクトをCloudFormation
の視点から捉えると、各プロダクトの構成要素
とそのプロパティ、相互関係、が⾒見見えてくるの
で、各プロダクトをモデルとして理理解できるよ
うになる、という学習効果もあると思います。

classmethod.jp

26
はじめてのCloudFormation

http://dev.classmethod.jp/cloud/aws/cloudformation-‐‑‒firstcontact/
classmethod.jp

27
さらに深く知りたい⽅方は
Developers.IOへ!
•  cfn-‐‑‒init
•  構築ノウハウ
•  すぐに使えるビッグバンテンプレート

classmethod.jp

28
JAWS  DAYS  2014

classmethod.jp

29
ACEに聞け!
EC2

CloudFormation

http://dev.classmethod.jp/cloud/aws/jaws-‐‑‒days-‐‑‒2014-‐‑‒ace-‐‑‒no-‐‑‒hanashi-‐‑‒wo-‐‑‒kike/

classmethod.jp

30
Letʼ’s  CloudFormation!!

classmethod.jp

31
ご清聴ありがとうございました
classmethod.jp

32

20140220 gumistudy cloudformation