20130622 awsの全サービスお話します - 環境自動構築 - cloudformation - jaws-ug...

Post on 24-Jun-2015

2.007 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

- AWSの全サービスお話します - 環境自動構築

AWS CloudFormation

JAWS-UG Osaka 第8回勉強会 Beginners 2013.06.22 桶谷 拓也

自己紹介• 桶谷 拓也(おけたに たくや) • 業務系エンジニア • AWS認定ソリューションアーキテクト- アソシエイト

• @okeee0315 !

• Like:SQS/Queuing Chain/Self Registration • クラウド/HTML5/Node.js

目次• CloudFormation • Stack • Template • cloud-init • CloudFormer • 最近の情勢 • さいごに

CloudFormation

CloudFormation• 様々なAWSのサービスを使用したシステム構成を設定ファイル(Template)を元にStackを構築するサービス。

• Templateを作成することで、自由なシステム構成が可能。

• 利用料金は無料! ➡Templateで構築するAWSリソースに対する料金のみ。

CloudFormation• イメージ

Amazon EC2 Amazon EC2 Amazon EC2 Amazon EC2

Bucket with Objects DynamoDB Amazon RDS

Amazon SNSAmazon SQS

Template

Stack

Templateから色々なサービスを起動できる

CloudFormation• いつ使うの? ‣ 一度Templateを作成すれば、いつでも同じシステム構成を構築することが出来る。

• 開発環境/評価環境の構築。 • 再利用可能なシステム構成(LAMPなど)の構築。

‣ 公開されているTemplateを利用したシステム構築。

• アプリケーションが必要な場合、Templateが公開されているものであれば、それを利用することで簡単に構築可能。一から(OSインストール、アプリケーションインストール...etc)作成する必要はない。

• Tracks、Redmine、WordPress、LAMP、RoR ...etc

Stack• リソースの集合。対応しているリソースは…

!

!

!

!

• リソース単位で構築/破棄を行うことが出来る。

• Templateで指定された依存関係で構築順が決まる。

Amazon EC2 インスタンス(オンデマンドインスタンス、スポットインスタンス、およびリザーブドインスタンス) Amazon Elastic Block Store(EBS)ボリューム Elastic Load Balancers Elastic IP アドレス Amazon EC2 セキュリティグループ Auto Scaling グループ Amazon Relational Database Service(RDS)インスタンス Amazon RDS セキュリティグループ Amazon ElastiCache クラスタ Amazon ElastiCache セキュリティグループ Amazon ElastiCache パラメータグループ AWS Elastic Beanstalk Amazon CloudWatch アラーム

Amazon Simple Storage Service(S3)バケット Amazon Simple DB ドメイン Amazon Simple Queue Service(SQS)キュー Amazon Simple Notification Service(SNS)トピック Amazon SNS サブスクリプション Amazon Route 53 DNS レコード Amazon CloudFront のディストリビューションと複数オリジンのサポート AWS Identity and Access Management ユーザーおよびグループ AWS Identity and Access Management ポリシー Amazon Virtual Private Cloud VPC、サブネット、ゲートウェイ、ルートテーブル、およびネットワーク ACL Amazon DynamoDB テーブル

Stack

• 構築手段 ‣ AWS Management Console ‣ AWS CloudFormation Command Line Tools

‣ 各種SDK • Java、.NET、PHP

Template• CloudFormationで一番重要な部分。• Stackの設計書。 • JSONフォーマットで記述する。

!

• サンプルテンプレート ➡http://aws.amazon.com/jp/cloudformation/aws-cloudformation-templates/

Template• どんなもの? ‣ Parameters、Mappings、Resources、Outputsの4つの定義を記述。

‣ 可変項目はパラメータ化、Mapping。 ‣ Functionsで文字結合も出来る。 ‣ 参照関係が存在する部分はCloudFormationがよしなに。

cloud-init

cloud-init• 初期設定ツール • EC2インスタンス起動時にuserdataとして設定したスクリプトを実行させる。 • シェルスクリプト、コマンドラインスクリプト、PowerShellスクリプト ...etc

!

• example ➡http://bit.ly/14OLL3V

cloud-init•何が出来るの? ‣ パッケージのインストール ‣ パッケージのアップデート ‣ hostnameの設定 ‣ インスタンス情報の取得 ...etc !

スクリプトで出来ることは何でも!

cloud-init• 何に使うの? ‣ インスタンス起動時にインスタンスを初期化する。 • 全ての設定を詰め込んだAMIを用意して運用すると、OS/アプリケーションのバージョンアップなどの際にAMIの再作成が必要になる。

➡更新/変更される可能性がある部分をcloud-initに分離することでAMIの再作成が不要に。

➡同じ構成で別の環境を構築する際、環境差異をcloud-initに分離しておくことでAMIの再利用が可能に。

Cloud Former

Cloud Former• 構築済みのシステム構成からテンプレートを作成するツール。

• Cloud Former自体をテンプレートから起動する。

• Cloud FormerのStackを構築し、Webアクセスして、ウィザード形式でリソースの選択を行い、Templateを作成する。 !

※ベータ版(ベータが外れる日はいつ...?)

Cloud Former• 何に使うの? • 既にAWS上に構築されているシステム構成からTemplateを作成する。

• システム構成の再利用。 ➡同じシステム構成の別のアプリケーションの構築。

➡同じシステム構成の開発/評価環境の構築。

最近の情勢

• AWS OpsWorks(おぷすわーくす)の登場 !

!

!

!

!

• OpsWorks(AWSのDevOpsソリューション/Chefレシピ使用可能)に流れるかと思いきや意外とそうでもなかった。

• 既にAWSとPuppet/Chef/Fabricを組み合わせる事例多数。 • 個人的にはOpsWorksに遷移していく感じ。

最近の情勢

最近の情勢• OpsWorksについては… • この後のセッションで! • 2013/07/06(土)にJAWS-UG神戸のOpsWorks(Chef)特集、で! ➡ http://www.zusaar.com/event/615003

さいごに

AWSに触れるとき• わからないことがあったら? • Google先生に聞いてみる。 • Twitterで”#JAWSUG”タグで質問してみる。 !

• おすすめのドキュメント • 公式 • AWSマイスターシリーズ ➡ http://aws.amazon.com/jp/aws-jp-introduction/

ありがとうございました。

top related