Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

AWS OpsWorksのご紹介

8,914 views

Published on

  • Be the first to comment

AWS OpsWorksのご紹介

  1. 1. AWS OpsWorksのご紹介Amazon Data Services Japan2013/06/25
  2. 2. Copyright © 2013 Amazon Web ServicesAgendaAWS OpsWorksとはOpsWorksの特長OpsWorks 利用の流れOpsWorksのメリットChefとはOpsWorksのライフサイクルイベントどのようなアプリケーションがOpsWorksに向いているのか?OpsWorksの機能詳細OpsWorksの料金LinkAPPENDIX
  3. 3. Copyright © 2013 Amazon Web ServicesAWS OpsWorksとは開発者やシステム管理者向けの統合アプリケーション管理ソリューションアプリケーション全体のライフサイクルをモデル化、コントロール、自動化が可能
  4. 4. Copyright © 2013 Amazon Web ServicesOpsWorksの特長高機能• 環境全体のテンプレートを定義可能• テンプレートを保守・バージョン管理可能• 変更を実行中のインスタンスに適用可能安全• IAMユーザのSSHアクセスをスタック単位で管理可能使いやすさ• LB,AP,DB等の各コンポーネントをレイヤーとしてモデル化可能• リソースおよびその状態を1つの場所で参照可能効率的• デプロイ、ロールバック、パッチ管理、自動インスタンススケーリング、自動復旧のサポート柔軟性• スクリプトでインストールを行う、あらゆるソフトウェアをサポート• Chefフレームワークを使用• 独自のChefレシピまたはコミュニティで作成された何百もの設定を活用可能
  5. 5. Copyright © 2013 Amazon Web ServicesOpsWorks利用の流れUser AWS ManagementConsoleStackLoad BalancerレイヤーApp ServerレイヤーDatabaseレイヤーレシピレシピレシピ DBWeb/AppWeb/AppLB①スタックの作成②レイヤーの作成③レシピの作成・設定(ビルトインレシピ利用可)④レイヤーにインスタンス追加・起動⑤レシピによってパッケージインストール、設定
  6. 6. Copyright © 2013 Amazon Web ServicesOpsWorksのメリットより早い開始が可能自動化によるコスト削減大規模デプロイの簡易化スクリプト化された構成によりエラーを削減
  7. 7. Copyright © 2013 Amazon Web ServicesChefとは?サーバの構築手順にある作業を自動化するツールあるべき状態現状Cookbookpackage“httpd”installレシピhttpd.conf編集レシピ・レシピは構築手順書。・Rubyベースのためプログラミング可能・何度でもレシピを実行しても同じ結果になることが重要。あるべき状態に収束→「べき等性」ChefがCookbook内のレシピを元に自動構築
  8. 8. Copyright © 2013 Amazon Web ServicesChefレシピファイルの例例:default.rbファイル(rubyベース)# haproxy パッケージインストールcase node[:platform]when ubuntupackage haproxy doaction :installendend
  9. 9. Copyright © 2013 Amazon Web ServicesChefの種類Chef-Solo• Chefのスタンドアロン版。オープンソースで公開• OpsWorksはChef-Soloを採用Chefクライアント/Chefサーバ• クライアントがサーバに接続、サーバ側で構成管理Chefホスティングサービス• Opscode社が提供。ノード数に応じて課金。サポート有プライベートなChef• Chefホスティングをプライベートネットワーク内に構築
  10. 10. Copyright © 2013 Amazon Web ServicesOpsWorksライフサイクルイベントイベント いつ実行されるか? Chefレシピの例Setup インスタンス初期化時、または正常に起動した時Apache, Ruby, Passenger, Rubyon RailsのインストールするレシピConfigure スタックの状態が変化するたびに実行。例:新規インスタンスがアプリケーションサーバーレイヤーに正常に追加された時ロードバランサーレイヤー設定を更新して、インスタンス追加を反映するレシピDeploy アプリケーションがデプロイされるたびに実行アプリケーションのチェックアウトやダウンロードを実行し、アプリケーションを再ロードするレシピUndeploy アプリケーションが削除された時 データベーステーブルの削除などのクリーンアップを実行するレシピShutdown インスタンスが実際に停止する45秒前 サービスをシャットダウンするレシピ各イベントごとに登録されているレシピが実行される
  11. 11. Copyright © 2013 Amazon Web Servicesレイヤーを使ったアプリケーションのモデル化インスタンス起動時に設定• ボリューム、EIPs, セキュリティグループ• ソフトウェア、サービス、Chefレシピ好きなソフトウェアを利用可能
  12. 12. Copyright © 2013 Amazon Web Services自動化タスクインストール、デプロイ、構成EBS RAIDAuto Scaling• Time-based• Load-based自動復旧
  13. 13. Copyright © 2013 Amazon Web ServicesどのようなアプリケーションがOpsWorksに向いているか?良い例• ソーシャル・ブラウザ向けゲーム• SaaSプロバイダー• Eコマース• ロケーションベースサービス• 基本的なWebやモバイルアプリ悪い例(現時点の)• 商用エンタープライズアプリケーション• スクリプトでパッケージインストールできない場合• バッチ処理• カスタムAMI利用等• ソースコードリポジトリと本番環境が通信できない場合
  14. 14. Copyright © 2013 Amazon Web ServicesAWSのアプリケーション管理ソリューションElastic Beanstalk OpsWorks CloudFormation EC2フレキシブル使い易さ
  15. 15. Copyright © 2013 Amazon Web ServicesOpsWorksの機能詳細(1)リソース設定多くのアプリケーソンに必要なリソースをサポート例:EC2インスタンス、EBSボリューム、EIPsソフトウェア管理インスタンス上で必要に応じてソフトウェアを構成。Chefのレシピを使ってライフサイクル管理が可能。Amazon Linux, UbuntuをサポートアプリケーションデプロイGit, SVN, アーカイブチェックアウト、部分デプロイ、ロールバック、ツール導入のフックをサポート。複数のアプリケーションをTierごとにデプロイ可能監視 CloudWatchまたはビルトインのGangliaを利用可能
  16. 16. Copyright © 2013 Amazon Web ServicesOpsWorksの機能詳細(2)ロードバランサービルトインのHAProxy、ELB、またはChefレシピを使ったカスタムレイヤーでロードバランサーを作成可能データベースChefレシピを使って、既存のRDSやDynamoDBへアプリケーションから接続を構成可能。ビルトインのMySQLまたはChefレシピを使ってカスタムレイヤーでデータベースを作成可能Auto Scaling 時間もしくは負荷に応じたAuto Scalingが可能自動復旧インスタンスに障害が発生した場合、OpsWorksは新規インスタンスと交換することが可能アクセスコントロールリソースへのアクセスを管理可能
  17. 17. Copyright © 2013 Amazon Web ServicesOpsWorksの料金体系OpsWorks自体は無料OpsWorksにて作成されたAWSリソース(EC2インスタンス、EBSボリューム、Elastic IPアドレスなど)OpsWorksはログを作成し、お客様のアカウントのAmazon S3バケットに保存するため、その課金が発生
  18. 18. Copyright © 2013 Amazon Web ServicesLinkAWS OpsWorks User Guide• http://docs.aws.amazon.com/opsworks/latest/userguide/welcome.html
  19. 19. ご清聴ありがとうございました!19
  20. 20. APPENDIX20
  21. 21. Copyright © 2013 Amazon Web ServicesChef-Soloによるhttpdインストール(1)1. Chef-Soloインストール2. Cookbook作成3. Chef-Solo設定ファイル2つ作成$ curl -L http://www.opscode.com/chef/install.sh | sudo bash$ knife cookbook create apache -o cookbooks$ cat > solo.rbfile_cache_path "/tmp/chef-solo"cookbook_path ["/home/ec2-user/cookbooks"]$ cat > localhost.json{"run_list" : ["recipe[apache]"]}
  22. 22. Copyright © 2013 Amazon Web ServicesChef-Soloによるhttpdインストール(2)4. レシピ作成・編集5. Chef-Soloを実行してパッケージインストール$ cat > ./cookbooks/apache/recipes/default.rbpackage “httpd" doaction :installend$ sudo chef-solo -c solo.rb -j ./localhost.json

×