AWS Black Belt Online Seminar AWS OpsWorks アマゾンウェブサービスジャパン株式会社 ソリューションアーキテクト 舟崎健治

Similar documents
AWS Deck Template

Presentation Title Here

PowerPoint プレゼンテーション

AWS Black Belt Online Seminar Amazon Inspector アマゾンウェブサービスジャパン株式会社 セキュリティソリューションアーキテクト桐 山隼 人

AWS 上でのサーバーレスアーキテクチャ 入 門 AWS Black Belt Online Seminar 2016 アマゾンウェブサービスジャパン株式会社 ソリューションアーキテクト清 水崇之 , Amazon Web Services, Inc. or its Aff

PowerPoint Presentation

そこが知りたい!AWSクラウドのセキュリティ

Installation Guide for Linux

SIOS Protection Suite for Linux v9.3.2 AWS Direct Connect 接続クイックスタートガイド 2019 年 4 月

_AWS-Blackbelt-Organizations

OpenAM 9.5 インストールガイド オープンソース ソリューション テクノロジ ( 株 ) 更新日 : 2013 年 7 月 19 日 リビジョン : 1.8

Helix Swarm2018.1アップグレード手順

Presentation Title Here

インテル® Parallel Studio XE 2019 Composer Edition for Fortran Windows : インストール・ガイド

利用者

Sophos Enterprise Console

サーバセキュリティサービスアップグレード手順書 Deep Security 9.6SP1 (Windows) NEC 第 1 版 2017/08/23

2. Docker の基本的な操作 1 docker hub の参照 2 DockerHub の Explorer リンクからアプリケーションを参照 3 アプリケーション検索 4 tag について 3. docker 基本コマンド 1 docker の

Symantec AntiVirus の設定

SAMBA Stunnel(Windows) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxx 部分は会社様によって異なります xxxxx 2 Windows 版ダウンロード ボ

自己紹介 指崎則夫 ( さしざきのりお ) SCUGJ 運営スタッフ Microsoft MVP

目次 1. はじめに 本文書の目的 前提条件 略語 事前準備 ホスト名の名前解決 Linux 版パッケージ システム要件 ソフトウェア要件 パッケージ構成

Presentation Title Here

WebSAM MCOperations Amazon Web Services 向け構築ガイド 2015 年 5 月 日本電気株式会社

Webhard_Users manual

目次 1. 動作環境チェック 動作必要環境 Java のインストール Java のインストール Firebird のインストール Firebird のインストール Adobe Reader のインストール

目次 1. はじめに 本書対象者 PALRO のアプリケーションについて Ubuntu 8.04LTS の入手について Linux 上での開発環境の構築 事前準備 Ubuntu のインストール..

サーバセキュリティサービス 導入手順書 Deep Security 9.5SP1 (Windows) プロキシ経由編

改版履歴 本書の改版履歴は以下のとおりです 日付 改版理由 変更箇所 版数 2014/09/04 初版発行 版 2015/03/30 第 1.1 版に改訂 対象 OS 追加 1.1 版 2015/07/10 第 1.2 版に改訂 対象 OS 追加 1.2 版 2015/09/04 第 1

Mobile Access簡易設定ガイド

Agenda 1. 今回のバージョンアップについて a. バージョンアップ概要 b. バージョンアップ目的 c. 新バージョンのシステム要件に関する注意事項 d. 現行バージョンのサポート期間 2. 対応プラットフォームの追加 3. 新機能の追加および機能強化 2

Procedure-for-Azure-v1.1

Slide 1

ServerView ESXi CIM Provider VMware vSphere ESXi 6.5 インストールガイド


スライド 1

提案書

システムパッケージリリース情報-Version5.0.0pre

RADIUS サーバを使用して NT のパスワード期限切れ機能をサポートするための Cisco VPN 3000 シリーズ コンセントレータの設定

HeartCoreインストールマニュアル(PHP版)

PowerPoint プレゼンテーション

UCCX ソリューションの ECDSA 証明書について

System Monitoring Plug-in for NEC Storage

PowerPoint Presentation

使用する前に

次 はじめに ブラウザーサポート デフォルトのIPアドレスについて

ServerView ESXi CIM Provider VMware vSphere ESXi 6.0 インストールガイド

本文中の記号の意味 本文中で使用している記号の意味について以下に示します システムの操作上または処理の手続き上において 特に注意していただきたい事項を記載しています 記載内容を必ずお読みください システムの操作上または処理の手続き上において 参考にしていただきたい事項を記載しています 必要に応じてお

HeartCore(PHP 版 ) インストール手順について説明いたします なお 本資料は 例として下記内容を前提として説明しております 環境情報 対象 OS: Linux ( ディストリビューション : Red Hat Enterprise Linux Server) APサーバ : Apache

PC にソフトをインストールすることによって OpenVPN でセキュア SAMBA へ接続することができます 注意 OpenVPN 接続は仮想 IP を使用します ローカル環境にて IP 設定が被らない事をご確認下さい 万が一仮想 IP とローカル環境 IP が被るとローカル環境内接続が行えなくな

Red Hat Enterprise Linuxのcron(8)デーモンにデフォルト定義されたtmpwatch命令の動作による、WebOTXのトラブル対処方法

OS と Starter Pack の対応 (Express5800/R110j-1 向け ) OS と Starter Pack について Express5800/R110j-1 ( 以下サーバ本体製品 ) では Starter Pack のバージョンによってサポート可能な OS が決まります シ

PowerPoint プレゼンテーション

Airwave_upgrade.pdf

Microsoft Word JA_revH.doc

2013年『STSSスキルコミュニティ』 テーマ別Kickoff資料

HP Device Manager4.7インストール・アップデート手順書

ServerView ESXi CIM Provider / ServerView RAID Core Provider VMware vSphere ESXi 6.0 インストールガイド

PowerPoint Presentation

Acronis Backup 12.5 Advanced NetAppスナップショット連携

CA Federation ご紹介資料

Password Manager Pro スタートアップガイド

Intel MPI Library Linux

Office365 AL-Mail

CUCM と VCS 間のセキュア SIP トランクの設定例

VPN ユーザを管理し、RV016、RV042、RV042G および RV082 VPN ルータの速い VPN を設定して下さい

はじめに このドキュメントではftServerに関する障害調査を行う際に 必要となるログ データの取得方法を説明しています ログ データの取得には 初期解析用のデータの取得方法と 詳細な調査を行うときのデータ取得方法があります 特別な理由でOS 側のログが必要となった場合には RHELログの取得につ

インテル® Parallel Studio XE 2019 Composer Edition for Fortran Windows 日本語版 : インストール・ガイド

Oracle Un お問合せ : Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよ

SAMBA Stunnel(Mac) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxxxx 部分は会社様によって異なります xxxxx 2 Mac OS 版ダウンロー

VPCスターターパック説明資料

intra-mart Accel Platform

[Unifinity]運用マニュアル

Transcription:

AWS Black Belt Online Seminar AWS OpsWorks アマゾンウェブサービスジャパン株式会社 ソリューションアーキテクト 舟崎健治 2017.2.1

内容についての注意点 本資料料では 2017 年年 2 月 1 日時点のサービス内容および価格についてご説明しています 最新の情報は AWS 公式ウェブサイト (http://aws.amazon.com) にてご確認ください 資料料作成には 十分注意しておりますが 資料料内の価格と AWS 公式ウェブサイト記載の価格に相違があった場合 AWS 公式ウェブサイトの価格を優先とさせていただきます 価格は税抜表記となっています 日本居住者のお客様が東京リージョンを使 用する場合 別途消費税をご請求させていただきます AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this document is provided only as an estimate of usage charges for AWS services based on certain information that you have provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided. 2

Agenda AWS OpsWorks 概要 AWS OpsWorks スタック AWS OpsWorks for Chef Automate まとめ 3

AWS OpsWorks とは Chef を使 用してアプリケーションを構成および運 用するための構成管理理サービス AWS OpsWorks 個別に SSH, RDP ログインして設定不不要 4

AWS OpsWorks が提供する 2 つのサービス AWS OpsWorks スタック AWS OpsWorks for Chef Automate 5

AWS OpsWorks スタックとは AWS OpsWorks のオリジナルのサービス スタック レイヤー インスタンス アプリケーションと呼ばれるコンポーネントでモデル化が可能 ライフサイクルイベントによるタスクの 自動化が可能 6

AWS OpsWorks スタックのメリット 任意のアプリケーションをサポート コードで構成管理理が 可能 自動スケーリングが可能 スタック レイヤー等でモデリングが可能 Linux や Windows サーバをサポート 7

OpsWorks スタックの基本的な仕組み (1) OpsWorks エージェント OpsWorks talks with OpsWorks エージェントから OpsWorks エンドポイントに対してアウトバウンド通信

OpsWorks スタックの基本的な仕組み (2) OpsWorks エージェント OpsWorks によって発 行行された 一連のコマンドを取得 エージェントが Chef Client のローカルモードでレシピを実 行行 インスタンスに SSH / RDP ログインも可能 Chef Server / Chef Client の構築は不不要 お客様は Chef レシピの作成に集中可能

OpsWorks スタック利利 用の流流れ 1 スタックの作成 2 レイヤーの作成 3 レシピの設定 (App の設定 ) 4 レイヤーに インスタンス追加 起動 5 ライフサイクルイベントにより レシピが 自動実 行行される User AWS Management Console Stack Load Balancer レイヤー レシピ App Server レイヤー レシピ Database レイヤー レシピ 構成情報 (JSON) Web /App LB DB Web /App

スタックとは OpsWorks のトップエンティティ 属する全インスタンスの構成を管理理 カスタムレシピを保存する任意のリポジトリを指定可能 VPC 内部に作成可能 スタックごとに構成情報を JSON 形式で保持 構成変更更のたびに JSON が更更新される Chef レシピから JSON 内の変数を読み込み可能 スタックをコピー可能 リージョン間でも可能

レイヤーとは インスタンス構築のための 青写真 ( 設計図 ) 注意 OpsWorks パブリックエンドポイントとアウトバウンド通信ができるように設定が必要 レシピを指定して パッケージインストールなどの必要な処理理を定義 その他 追加の EBS ボリュームやセキュリティグループ等の設定もレイヤーごとに定義可能

インスタンスとは アプリケーションを提供するための EC2 インスタンスなどのコンピューティングリソース 起動時にインスタンスサイズや AZ(VPC 内の場合はサブネット ) を指定 インスタンス内部に OpsWorks エージェントが動作している

インスタンスのスケーリングタイプ 以下の 3 パターン 24/7 インスタンス 常時稼働 負荷ベースのインスタンス 時間ベースのインスタンス EC2 Auto Scaling Group とは異なる機能

App とは アプリケーションサーバーにデプロイするアプリケーション サポートするリポジトリ Git / HTTP archive / S3 Archive / Other Github や BitBucket も使 用可能

AWS OpsWorks スタックでサポートされる構成 インスタンスの OS の種類 Amazon Linux Ubuntu 12.04 LTS / 14.04 LTS / 16.04 LTS CentOS 7 Red Hat Enterprise Linux 7 Windows Server 2012 R2 Amazon EC2 およびオンプレミスサーバ ネットワーク要件 AWS OpsWorks パブリックエンドポイントにアウトバウンドで接続できること 16

Chef のバージョンについて リリース時期 スタックの OS の種類 Chef 12.2 スタック 2015 年年 5 月 Windows なし Chef 12 スタック 2015 年年 12 月 Linux なし Chef 11.10 スタック 2014 目 3 月 Linux あり 組み込みレイヤーの有無 Chef コミュニティクックブックとより 高い互換性をお求めの場合は Chef 12.2, 12 を推奨 17

Chef 12 Chef 12 を使う主な利利点 組み込みレシピとカスタムレシピの名前空間の競合の解決 Chef Supermarket のコミュニティクックブックに対する より 高い互換性とサポートを提供 以前の Chef バージョン 11.10, 11.4, 0.9 からの主な変更更点 組み込み ( ビルトイン )Layer は提供されず サポートもされない 透明性が与えられることにより カスタムクックブックの作成が容易易に Berkshelf はスタックインスタンスでインストールされない リモート作業端末側で事前にパッケージ化したものを活 用 ( 後述 ) Subversion リポジトリのサポートを終了了 18 参照 :Chef 12 Linux 用の AWS OpsWorks スタックのサポート http://docs.aws.amazon.com/ja_jp/opsworks/latest/userguide/chef-12-linux.html

リージョンエンドポイントが利利 用可能に 2016 年年 8 月以前 2016 年年 8 月以降降 REGIONAL ( デフォルト ) 米国東部 ( バージニア北北部 ) のエンドポイント どちらか選択可能 スタックと同じリージョンのエンドポイント CLASSIC 米国東部 ( バージニア北北部 ) のエンドポイント スタックと同じリージョンにあるエンドポイントを利利 用するメリット API レスポンスタイムの遅延の削減 クロスリージョンに依存した障害のインパクトを限定可能 19

OpsWorks スタックで実 行行可能なコマンド 以下の 2 種類がある スタックコマンド スタック全体の構成を変更更 管理理するためのコマンド 重要! AWS マネージメントコンソール AWS SDK AWS CLI でリモートから実 行行可能 エージェントコマンド デバッグやトラブルシューティングのために利利 用するコマンド それ以外の 用途の場合は スタックコマンドの利利 用を推奨 インスタンス内部にログインして実 行行可能 sudo もしくは root 権限が必要

スタックコマンドを使ってリモートから任意のタイミングでインスタンスにコマンドを実 行行可能 スタックコマンド Update Custom Cookbooks Execute Recipes Setup Configure Upgrade Operating System 内容 リポジトリにある更更新された Cookbook をそれぞれのインスタンスに展開する 指定したレシピを指定したインスタンス上で実 行行する Setup のレシピを実 行行する (Setup を実 行行すると Deploy もその後で実 行行される ) Configure のレシピを実 行行する (Linux のみ ) Amazon Linux を最新バージョンにアップグレードする Execute Recipes コマンド等を実 行行 管理理者 AWS Management AWS OpsWorks Instances Console OpsWorksエージェントがChefレシピを実 行行

スタックコマンドで Update Custom Cookbooks を実 行行 アップデートされたカスタム Chef cookbooks をコードリポジトリから指定したインスタンスに展開する コマンド実 行行時のログを確認可能 Update Custom Cookbooks を選択 ログを確認

スタックコマンドで Execute Recipes を実 行行 Update Custom Cookbooks を実 行行後に Cookbook およびレシピ名を指定してレシピ単体を実 行行する コマンドのログを確認可能 Execute Recipes を選択 ログを確認 Cookbook 名 :: レシピ名を指定

インスタンス内部で OpsWorks Agent CLI を実 行行 OpsWorks で起動されたインスタンスに SSH でログインして Agent CLI コマンドを実 行行可能 レシピの実 行行 Chef ログの表 示 スタックの構成 JSON およびデプロイメント JSON の表 示 レシピのテストやトラブルシュート等で活 用可能

インスタンス内部で OpsWorks Agent CLI による レシピ再実 行行 Agent CLI の run_ command は 最近スタックコマンドによって実 行行されたことがあるコマンドのみ再実 行行が可能 手順は以下 1. 最近実 行行されたコマンド ( のキャッシュ ) を表 示する $ sudo opsworks-agent-cli list_commands 2014-04-07T02:55:09 setup 2014-04-07T02:58:55 configure 2014-04-07T04:38:12 execute_recipes 2. 表 示されたコマンドの中に 実 行行したいコマンドがあれば同じコマンドを実 行行可能 $ sudo opsworks-agent-cli run_command execute_recipes hello インスタンス内部のキャッシュにあるレシピを実 行行する コードリポジトリにあるレシピをアップデートしただけでは 最新のレシピを 自動でダウンロードはしない インスタンス起動後に最新のレシピをダウンロードするにはスタックコマンドでUpdate Custom Cookbooksを実 行行する必要がある

インスタンス内部で OpsWorks Agent CLI による スタック構成 JSON の表 示 インスタンス内部で以下のコマンドを実 行行 sudo opsworks-agent-cli get_json スタック構成およびデプロイメント JSON を取得する { "deploy": { "hello": { "deploy_to": "/srv/www/hello", "application": "hello", カスタムChefレシピ作成時に JSONから "deploying_user": "arn:aws:iam::111111111111:root", パラメータを取得するときの参考として活用 "domains": [ 可能 "hello" ], "application_type": "php", "mounted_at": null,

OpsWorks スタックの 5 つのライフサイクルイベント Setup Configure Deploy Undeploy Shutdown

どのタイミングで ライフサイクルイベントが 実 行行されるか?

ライフサイクルイベントの実 行行されるタイミングお よび対象 Appサーバー DBサーバー Appサーバーの の起動 の起動 起動 手動で デプロイを 実 行行 レシピ単体を実 行行 横軸 : 時間軸 App サーバーのシャットダウン App サーバー App サーバー DB サーバー Setup Deploy Configure Execute Recipe Shutdown

ライフサイクルイベントに登録するレシピの例例 ( レイヤー別 ) Setup Configure Deploy Undeploy Shutdown ロードバランサーレイヤー ロードバランサーをインストール アプリケーションサーバーの IP をアップデート コネクションを Drain する アプリケーションサーバーレイヤー アプリケーションサーバーをインストール DB 接続先をアップデートしてリスタート アプリケーションコードをアップデートしてリスタート アプリケーションを削除してリスタート ログを保存 データベースレイヤー データベースをインストール アプリケーションサーバーの IP の ACL をアップデート スナップショットの作成

AWS CodePipeline との連携 AWS CodePipeline を使って Chef クックブックとアプリケーションコードのリリースを 自動化可能 Deployment Provider として AWS OpsWorks スタックを選択可能 コードを変更更したら CodePipeline が 自動的に再デプロイ可能 継続的なデリバリーパイプラインを作成可能 My AWS Application: App1 Source App1 GitHub Build JenkinsOnEC2 Jenkins Cookbooks Amazon S3 NotifyDevelopers Lambda Chef 12.2, 12, 11.10 スタックでサポート Beta Stage Apply Cookbooks AWS OpsWorks Deploy App1 AWS OpsWorks 手順 http://docs.aws.amazon.com/ja_jp/opsworks/latest/userguide/other-services-cp.html

AWS OpsWorks スタックの ベストプラクティス

アプリケーションとクックブックの管理理とデプロイ インスタンス間のバージョン整合性の維持 オンラインインスタンスへのコードのデプロイ ローリングデプロイ 開発 ステージング 本番稼働スタックの使 用 Blue- Green デプロイメント 参照 : http://docs.aws.amazon.com/ja_ jp/opsworks/latest/userguide/ best- deploy.html

インスタンス間のバージョン整合性の維持について アプリケーションとクックブックのコードは以下 2 パターンでデプロイされる インスタンス起動時に 自動的にデプロイ Deploy コマンド ( アプリケーション 用 ) または Update Custom Cookbooks コマンド ( クックブック 用 ) によりデプロイ 現 現 新 意図せずに新しいバージョンがデプロイされてしまうことを防ぐ必要がある

整合性を維持するための 推奨コードリポジトリ :Amazon S3 信頼性の 高いストレージ 命名規則またはバージョニングを有効にすることで 明 示的にデプロイバージョンを管理理可能 例例 : https://s3.amazonaws.com/xxxx/ xxx.zip?versionid=xxxxx

整合性を維持させるための 推奨コードリポジトリ :Git リポジトリ マスターブランチからデプロイしない 承認されたバージョンにタグをつけて アプリケーションまたはクックブックソースとして指定 ブランチ名 SHA1 ハッシュ タグ名のいずれかを入力

ローリングデプロイの使 用 1 台ずつアプリケーションサーバへデプロイ ローリングデプロイは OpsWorks スタック機能としては提供されていない お客様側で個別にデプロイコマンドを実 行行する 2. ヘルスチェック成功 1. デプロイコマンド 4. ヘルスチェック成功 3. デプロイコマンド 6. ヘルスチェック成功 5. デプロイコマンド

開発 ステージング 本稼働スタックの使 用 スタックの種類 説明 アクセス管理理 スタックの作成 方法 開発スタック 新しい機能の実装やバグの修正などに使 用するプロトタイプスタック 非公開 セキュリティグループ スタックの Permissions で制限 OpsWorks コンソールで 手動で作成 CloudFormation で作成 ステージングスタック 本稼働スタックの候補のテストと最終処理理に使 用 同上 同上 開発完了了後に開発スタックを複製 本稼働スタック 現在のアプリケーションをサポートする公開スタック 公開 同上 後述の Blue- Green Deployment 等で作成

Blue- Green Deployment の使 用 Route 53 必要に応じて ELB の pre- warming 申請する Blue: 現在の本稼働スタック example.com Green: ステージングスタック Blue, Green スタック間で重み付けを変える 現 現 新 新

Berkshelf を使ってローカルでの複数のクックブックの依存関係のパッケージ化 (1) 1. 2 つの cookbook を作成 chef generate cookbook "server-app" chef generate cookbook "server-utils" 2. server- app/metadata を編集 maintainer "The Authors" maintainer_email "you@example.com" license "all_rights" description "Installs/Configures server-app" long_description "Installs/Configures server-app" version "0.1.0" depends "java" 今回は server- app が Java に依存したアプリのため depends java: を追記する 3. 2 つの cookbook の top directory に以下内容の Berksfile を作成 source "https://supermarket.chef.io" cookbook "server-app", path: "./server-app" cookbook "server-utils", path: "./server-utils"

Berkshelf を使ってローカルでの複数のクックブックの依存関係のパッケージ化の 手順 (2) 4. ディレクトリ構成の確認. Berksfile server-app/ server-utils/ 5. server- app/metadata を編集 berks package cookbooks.tar.gz" 6. AWS CLI で S3 にコピー aws s3 cp cookbooks.tar.gz s3://bukect-name 7. Stack の設定で S3 にコピーした cookbook.tar.gz を使うように変更更する

Linux セキュリティ更更新のインストール オンラインインスタンスの更更新 方法は以下 2 パターン 新しいインスタンスを作成して 現在のオンラインインスタンスを置き換える セットアップ時に最新のセキュリティパッチが適 用される Update Dependencies スタックコマンドを実 行行 (Chef 11.10 または古い Linux ベースのスタックの場合 ) 実 行行するセキュリティ更更新の内容 Amazon Linux, RHEL: yum update Ubuntu: apt- get update

Chef Automate とは? Chef の cookbook やレシピを使って インフラストラクチャの管理理を 自動化 アプリケーションの継続的なインストール 構成 管理理 デプロイ スケールが可能 44

Chef Automate の仕組み シンプルなクライアントサーバアーキテクチャ リソースを Chef サーバへ接続 リソースは Chef サーバから構成のアップデートを取得する Config A Config B

セットアップ 方法 1. Chef サーバのセットアップ (Cookbook, レシピ ロールを含む ) 2. インスタンスへのChef クライアントのインストール 3. インスタンスをChefノードとしてChefサーバに登録 4. ノードをロールに紐紐づける ( 例例. Webサーバ, app サーバ db サーバ ). 5. ChefクライアントはChefサーバにレシピのセットを要求 6. Chefサーバはロールに基づく適切切なレシピを判定 7. Chef runの実 行行によりChefクライアントはノード上でレシピを適 用 8. Chefクライアントは30 分おきにChefサーバから構成のアップデート情報を取得

可視性 オペレーション コンプライアンス およびワークフローのイベントを可視化 クエリー 言語を利利 用可能 47

ワークフロー インフラおよびアプリの継続的なデリバリーパイプライン 構成管理理ツールとしての利利 用だけではない 48

コンプライアンス カスタマイズ可能なレポートによりコンプライアンスの課題 セキュリティリスク 旧式のソフトウェアを特定可能 49

AWS OpsWorks for Chef Automate

AWS OpsWorks for Chef Automate とは? AWS によって管理理される Chef サーバを作成可能 AWS OpsWorks for Chef Automate API を利利 用可能 Chef DK など Chef ツールを利利 用可能 Chef Automate のプレミアム機能を利利 用可能 OpsWorks

AWS OpsWorks for Chef Automate のメリット 完全マネージド型 Chef サーバ プログラム可能な インフラストラクチャ スケーリングが簡単に Chef コミュニティ サポート 安全 ハイブリッド環境を 簡単に管理理 52

AWS OpsWorks for Chef Automate の要件 サポートするリージョン 米国東部 ( バージニア北北部 ) リージョン 米国 西部 ( オレゴン ) リージョン 欧州 ( アイルランド ) リージョン ネットワーク要件 Chef サーバは上記リージョン内の VPC 内にある必要あり Chef サーバは AWS OpsWorks for Chef Automate のパブリックエンドポイントと要接続 53

54 AWS OpsWorks での Chef Automate サーバの起動

55 AWS OpsWorks での Chef Automate サーバの起動

56 AWS OpsWorks での Chef Automate サーバの起動

57 AWS OpsWorks での Chef Automate サーバの起動

58 AWS OpsWorks での Chef Automate サーバの起動

59 AWS OpsWorks での Chef Automate サーバの起動

AWS OpsWorks での Chef Automate サーバの起動 Chef Automate ダッシュボードへのログイン 用の認証情報を取得 Chef Automate サーバがオンラインになるまでの このタイミングしか認証情報は取得できないので要注意 Starter Kit もダウンロード 60

Starter Kit の中 身 <chefautomate の名前 >-xxxxxxxx/ cookbooks/ README.md environments/ roles/.chef/ Berksfile chefignore README.md userdata.sh README.md README.md スターターキットをダウンロードするごとに 新しいキーペアが 生成され 以前のキーはリセットされる ca_certs/ opsworks-cm-ca-2016-root.pem knife.rb private.perm AWS OpsWorks に付属している 認証機関 (CA) による署名付きの SSL プライベートキー 61

管理理するノードを追加する事前準備 : Chef DK のインストール 設定例例 Chef DK のパッケージのダウンロード インストール $ wget https://packages.chef.io/files/stable/chefdk/x.x.x/el/7/chefdk-x.x.x-1.el7.x86_64.rpm $ sudo yum install./chefdk-x.x.x-1.el7.x86_64.rpm $ chef verify パスの設定 $ which ruby /usr/bin/ruby $ echo 'eval "$(chef shell-init bash)"' >> ~/.bash_profile $ source ~/.bash_profile $ which ruby /opt/chefdk/embedded/bin/ruby 62 1 https://downloads.chef.io/chefdk

管理理するノードを追加する事前準備 : Berkshelf を使ってローカルに cookbook をダウンロード Starter- kit のディレクトリに移動して Berksfile を修正する source "https://supermarket.chef.io" cookbook "chef-client" cookbook "apache2" 指定した cookbook をローカルコンピューターにダウンロードしてインストールする $ berks install 63

管理理するノードを追加する事前準備 : Chef サーバに cookbook をアップロード cookbook を Chef サーバーにアップロードする SSL_CERT_FILE='.chef/ca_certs/opsworks-cm-ca-2016-root.pem' berks upload Chef Automate サーバーで現在使 用可能な cookbook のリストを表 示する $ knife cookbook list これで Chef Automate サーバー管理理するノードを追加する準備が完了了 64

管理理するノードを追加する サーバ ( 今回は EC2 インスタンス ) を別途起動して Chef サーバで管理理されるノードに追加する $ knife bootstrap <Chef Server IP address>-n node1 -x ec2-user --sudo --run-list \ "recipe[apache2]" -i <private key file> 65

Chef Automate ダッシュボードにサインインする ダッシュボードの Web ページに接続しようとすると 証明書に関する警告がブラウザに表 示される サインインする前に AWS OpsWorks に固有な CA 署名付きの SSL 証明書を Chef サーバの管理理に使 用するクライアントコンピュータにインストールする Chef Automate サーバ起動時にダウンロードした credentials ファイルにあるユーザー名 パスワードでログイン 66

ノードの 自動的な追加 EC2 ノードを 自動的に追加可能 EC2 Auto Scaling や CloudFormation も利利 用可能 AWS OpsWorks for Chef Automate API(opsworks- cm) を許可する IAM ロールを使 用 EC2 インスタンス起動時に userdata セクションに下記を実 行行するコードを貼り付ける opsworks- cm API の associate- node コマンドで Chef サーバと関連付ける コードの詳細は以下を参照 http://docs.aws.amazon.com/ja_ jp/opsworks/latest/userguide/opscm- unattend- assoc.html 67

Chef Automate サーバのバックアップと復復元 毎 日または週 一の定期バックアップ Amazon S3 に 自動的に保存される S3 の追加料料 金金が発 生する 30 世代を上限としてバックアップ保持期間を定義可能 AWS サポートにより上限を変更更可能 手動バックアップも可能 68

AWS OpsWorks スタックと AWS OpsWorks for Chef Automate の違い お客様環境内での Chef サーバの必要性 OpsWorks スタック 不不要 OpsWorks for Chef Automate 必要 (AWS 側で管理理 ) Chef コミュニティクックブックとの親和性 多くの場合において互換性あり Chef クライアントのローカルモードでの動作を前提とする Chef サーバの利利 用前提ではない 完全互換 東京リージョンサポート あり 未サポート Chefサーバを別のリージョンで 立立てて Chef Clientを東京リージョンに 立立てることは可能 OpsWorks 自体の利利 用料料 金金 その他 無料料 OpsWorks エージェントをオンプレミスサーバ上で動作させて場合は課 金金あり OpsWorks 独 自のライフサイクルイベントにより構成管理理 自動化が可能 Chef サーバに接続されているノード数および実 行行時間による課 金金 Chef Automate の Dashboard やワークフロー コンプライアンス機能を利利 用可能 69

料料 金金 AWS OpsWorks スタック EC2 インスタンスをご利利 用の場合 OpsWorks スタック 自体の料料 金金は無料料 オンプレミスサーバをご利利 用の場合 OpsWorks エージェントが動作するオンプレミスサーバ 1 台あたり $0.02/ 時 AWS OpsWorks for Chef Automate Chef サーバに接続されているノード数および実 行行時間による課 金金 OpsWorks for Chef Automate 自体の初期費 用 最低料料 金金はなし ノード時間数 料料 金金 ノード 150 個 / 月まで 11 万 2,500 ノード時間に相当 0.0155 USD/ ノード時間 ノード 160 個 / 月超 410 個 / 月まで 18 万 7,500 ノード時間に相当 0.0150 USD/ ノード時間 ノード 410 個 / 月超 910 個 / 月まで 37 万 5,000 ノード時間に相当 0.0140 USD/ ノード時間 ノード 910 個 / 月超 2,410 個 / 月まで 112 万 5,000 ノード時間に相当 0.0125 USD/ ノード時間 70 ノード 2,400 個 / 月超 1,800,000 ノード時間に相当 お問い合わせください

まとめ OpsWorks により継続的な構成管理理 タスクの 自動化が可能 OpsWorks スタック OpsWorks for Chef Automate の 2 つのサービスを選択可能 メリット デメリットを理理解していずれかを選択 71

参考資料料 AWS OpsWorks ユーザーガイド http://docs.aws.amazon.com/ja_ jp/opsworks/latest/userguide/welcome.html AWS DevOps Blog Tag: OpsWOrks https://aws.amazon.com/jp/blogs/devops/tag/opsworks/ 72

オンラインセミナー資料料の配置場所 AWS クラウドサービス活 用資料料集 http://aws.amazon.com/jp/aws- jp- introduction/ AWS Solutions Architect ブログ 最新の情報 セミナー中の Q&A 等が掲載されています http://aws.typepad.com/sajp/ 73

公式 Twitter/Facebook AWS の最新情報をお届けします @awscloud_ jp 検索索 もしくは http://on.fb.me/1vr8ywm 最新技術情報 イベント情報 お役 立立ち情報 お得なキャンペーン情報などを 日々更更新しています! 74

AWS の導 入 お問い合わせのご相談 AWS クラウド導 入に関するご質問 お 見見積り 資料料請求を ご希望のお客様は以下のリンクよりお気軽にご相談ください https://aws.amazon.com/jp/contact- us/aws- sales/ AWS 問い合わせ で検索索してください