premier night3 devopsことはじめ

Post on 18-Jan-2017

883 Views

Category:

Internet

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

AWS Premier Night #3DevOps ことはじめ

千葉 淳クラスメソッド株式会社

2017年 1月 12日

自己紹介

所属:クラスメソッド株式会社

仕事:ソリューションアーキテクト

好きな AWS: Lambda

名前:千葉 淳

宣伝

今日話すこと

今日話すこと• DevOps を話そうと思いましたが•Ops も大切!と思った• Ops 側もスケールを考慮• しないと Dev もまわらない• ということで

Amazon EC2 Systems Managerとは?

Re:Invent 2016 Day2

運用を自動化のとっておきのツール群• 7 つ!–Run Command–パラメータストア–ソフトウェアインベントリ– State Manager

運用を自動化のとっておきのツール群–Maintenance Windows–Automation–Patch 管理

Run Command–ログインせずにコマンド実行–対象は Windows/Linux–実行を CloudTrail で追跡可能–タイムアウトやリトライ回数を制御–実行対象はタグまたはインスタンス指定–実行内容はドキュメントとして定義 (JSON)

デフォルトで用意されるドキュメント– SSMAgent アップデート– EC2Config アップデート– コマンド実行 (shell/powershell)– Docker アクション ( 起動 / 停止 /ps/ などなど )– AD 参加– Windows アップデート– msi のインストール– 等など、自分で定義もできる

実行結果

2500 文字以上の出力場合は S3 へ

パラメータストア–Run Command で利用できる変数–値の一元管理–パスワード、ライセンスキー等を管理–文字列またはリストを指定可能–暗号化も可能– {{ ssm: 変数名 }} で利用

パラメータストア登録画面

ソフトウェアインベントリ–OS 情報をマネジメントコンソールより確認

ソフトウェアインベントリ詳細–取得情報• パッケージ名:バージョン、インストール時刻• ネットワーク情報: IP 、 MAC アドレス• WindowsUpdate : ID 、インストール時刻

–Config にて構成変更も追跡• パッケージが追加された等

AWS Config での変更追跡

State Manager–定期的にドキュメント ( コマンド等 ) を実行–実行対象は、タグ / インスタンス指定–30 分、 1 時間、週次を指定

State Manager のパラメータ

Automation–カスタム AMI を自動作成できる–AMI から EC2 起動、任意処理、 AMI 作成–最新のアップデートを適用した AMI 等–Packer のようなイメージ

パッケージアップデートした AMI 作成

Maintenance Windows–システムのメンテナンス時間を設定–時間枠内で指定したドキュメントを実行–時間枠から指定した時間前にタスクを実行しない

• 例:メンテナンスは 4 時間、 Cutoff1 時間とする• メンテナンス開始から 3 時間たったら新しくタスクは実行しない

メンテナンス時間の指定– 例:毎週日曜日、 0 時から 6 時 (JST) をメンテナンス– 5 時になったら、新しくドキュメントは実行しない

対象ターゲットの指定– タグまたはインスタンスを指定

実行するタスクを定義– タスクは Run Command と同じドキュメント– 実行優先順を指定 ( プライオリティ )– 実行ターゲットを、タグまたはインスタンス指定– ターゲットとして作成したメンテナンスウィンドウを指定

実行履歴の確認

Patch管理–適用する Windows パッチを指定• クリティカル、 OS バージョン

– 実行対象はタグで管理( Patch group )– メンテナンスウィンドウで定義した内容で適用するよう設定– ドキュメント名は「 AWS-

ApplyPatchBaseline 」

Patch管理–適用する Windows パッチを指定• クリティカル、 OS バージョン

– 実行対象はタグで管理( Patch group )– メンテナンスウィンドウで定義した内容で適用するよう設定– ドキュメント名は「 AWS-

ApplyPatchBaseline 」

パッチベースラインの設定

その他– Systems Manager は無料で使えます!– オンプレミスも管理対象に!

利用方法

前提条件– Amazon Linux/Ubuntu/RHEL/CentOS( バージョン注意 )– Windows Server 2003 – 2016– SSM エージェント (Linux) 、 EC2Config(Windows)– インスタンスロールに権限付与– インターネットへのアウトバウンド– 詳細

• https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/WindowsGuide/systems-manager-prereqs.html?icmpid=docs_ec2_console

• https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/systems-manager-prereqs.html?icmpid=docs_ec2_console

Linux

• SSM エージェントのインストール• パッケージをダウンロードしてインストール• 手順はこちら

– https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/sysman-install-ssm-agent.html

Windows

• EC2Config を最新にアップデート!!

Systems Manager への登録確認• マネージドインスタンスから見えるようになる

ユースケース

想定ユースケース• 運用系の cron/ タスクマネージャーを State

Manager で実行 ( ログ収集等 )• Windows アップデート作業をログインせずに• OS 情報の一元管理、変更追跡• AutoScaling 利用での AMI 自動アップデート• 手順書での作業を減らした運用• 作業に関し CloudTrail による監査ログの取得

まとめ

一言まとめ1• Run Command > ログインせずにコマンド実行!• パラメータストア > Run Commnad での変数• ソフトウェアインベントリ > OS 情報取集• State Manager > Run Command の定期実行

一言まとめ2• Maintenance Windows > 時間内の Run

Command 実行• Automation > AMI の自動作成! ( 今後はほかにもできるようになるかも? )• Patch 管理 > Windows へ適用するパッチの種類を管理

重要ポイント• 自動化、自動化、自動化• Linux/Windows ともにログインを減らす運用へ– 作業プロセスの再利用性と自動化– 手順書での作業を減らす– 情報の一元管理

• オンプレリソースも Systems Manager で管理!• 無料で使える!

おしまい

top related