なるほどわかった!AWS Systems Manager

なるほどわかった!AWS Systems Manager

JAWS UG札幌#23でお話しした内容です。

4cc0672dbe913b6e8aa687a81b3e02ab?s=128

Takayuki Fuwa

May 24, 2019
Tweet

Transcript

  1. なるほどわかった! はじめてのAWS Systems Manager 不破 崇行(ふわ たかゆき)

  2. 撮影について • 問題ありませんが、他の人が入り込む際にはご配慮をお願いします。

  3. 自己紹介 • 名前 • 不破 崇行(ふわ たかゆき) • 仕事 •

    昼は普通の正社員、夜は個人事業主 • 好きなAWSサービス • CloudWatch / Amazon Connect • AWS歴 • 多分5年ぐらい • 最近の趣味 • AWS / Azure / 航空無線 / シメパフェ • 家でのんびりAlexaとおしゃべり
  4. 東雲研究所(夜の仕事)とは • 屋号 • 東雲研究所(しののめけんきゅうじょ, Shinonome Laboratory) • 設立(開業日) •

    2017年3月21日 • 拠点地 • 北海道札幌市 • 種別 • 個人事業主 • 営業時間 • 平日19:00~22:00 • 加盟団体 • 一般社団法人 プロフェッショナル&パラレルキャリア フリーランス協会
  5. 夜の仕事風景

  6. 今日のおはなし • AWS初心者向けに、AWS SSM(Systems Manager)についてお話しします。 • 夜の仕事での活用事例を交えながら • 「なるほどわからん!」の場合は切腹はしませんが、何かあるかもしれません。

  7. 【おさらい】 AWSとは

  8. おさらい AWSとは? AWS Services Overview and Quarterly Update - April

    2017 AWS Online Tech Talks https://www.slideshare.net/AmazonWebServices/aws-services-overview-and-quarterly- update-april-2017-aws-online-tech-talks
  9. おさらい AWSを「ざっくり」説明すると? • 誰でも簡単にサーバ(仮想マシン[Windows, Linux])を建てることが出来る。 • 今までは、自分でサーバを買って動かさないといけなかったが、全部AWSがやってくれる • ハードウェアとインフラの管理を肩代わりしてくれるのがAWSというサービス https://www.fujitsu.com/jp/products/computing/servers/primergy/rack/

  10. 身近に存在する「肩代わり」の例(ピザ屋さんの場合) Everyday Life Example of Microsoft Azure Software Models (Source:

    Microsoft Partner University) https://www.comparex-group.com/web/microsites/microsoft/products/cloud/microsoft-azure/ms-azure.htm
  11. ここ数年で、サーバを建てやすい世の中になった • 昔はデータセンターまで行って構築しないといけなかったが、AWSを使えば オフィスや自宅でも簡単にサーバの立ち上げができるようになった。 • 必要に応じてEC2インスタンス(サーバ)を増やすことが出来るようになった。 ・・・

  12. サーバが増えたことによる 問題点と解決策

  13. サーバの台数は増えたけど、問題点もある • EC2インスタンスを沢山建てたけど、OSアップデートや脆弱性対応どうしよう? • 設定管理どうしよう? ・・・ Apacheの脆弱性あり Linuxカーネルに 脆弱性あり Windows

    Update してない
  14. コネクティビティの問題もある • EC2インスタンスの台数はどんどん増えているが、 自分のPCからのSSH接続はどうやって確保するべき? • 踏み台サーバ(bastion)をEC2で建てるか? • 外部接点を1つに集約できるので、悪くは無い • NATゲートウェイを使う?

    • ちょっと高い? • 全部のEC2インスタンスにElastic IPを割り振る? • コスト面からみて現実的では無い • IPv4アドレスを無駄遣いしたくない
  15. EC2インスタンスの台数が増えると 管理が大変になる • 台数が増えると、「管理」が非常に煩雑になる • バージョンアップどうしよう?など • この問題はオンプレでも同じ • 出来る事ならツールで一元管理したい!

  16. そこで AWS Systems Manager(SSM) • 台数が増えた際に発生する管理問題を解決してくれるAWSのサービス • ソフトウェアインベントリの収集、OSアップデートと自動化を実現出来る • EC2インスタンスのOS内部の構成管理を行うことが出来る

  17. SSMで出来る事 • OSの自動アップデート • Windows Serverの場合、パッチ単位で自動適用できる • 時間を決めて実行出来る(メンテナンスウィンドウを設定出来る) • コマンドの一括実行

    • SSMの画面からシェルコマンドをroot権限で一気に実行出来る • Ansibleだと外部とSSH接続を行える環境が必要だが、SSMの場合は不要。 • セッションマネージャー • SSMの画面からSSH接続出来る • (EC2インスタンス限定)
  18. パッチマネージャーによるOSの自動更新 • Windows Update / Linuxのアップデートの実行を集中管理出来る。

  19. OSの条件を指定して自動実行

  20. パッチの例外設定も出来る

  21. スケジュール設定(メンテナンスウィンドウ)

  22. Web画面でシェルを立ち上げることが出来る (セッションマネージャー)

  23. SSMのどえらい所 • 全部無料 • SSMでは課金されない • CloudWatchやS3などを使った場合は別 • オンプレマシンでも実行出来る •

    ハイブリッドクラウドを想定 • Azure上のVMでも動作させることが出来る
  24. Azure VM(CentOS7)でも認識出来る

  25. SSMのハマりポイント • セッションマネージャーは使えないっぽい(自分の環境では接続出来ず)

  26. AWS SSMの使い方

  27. セットアップ方法は楽だけど、ちょっと長い • 今日のトーク枠では間に合わないので、省略します • 手順を含めたスライドは後日公開します

  28. SSMエージェントのインストール • EC2の場合、下記OSには既にインストール済み • Windows Server (すべての SKU) • Amazon

    Linux • Amazon Linux 2 • Ubuntu Server 16.04 • Ubuntu Server 18.04 • 上記以外、オンプレサーバの場合は手動でインストールする • (インストール方法は省略)
  29. アクティベーション • まずはSSMで操作するEC2インスタンス・オンプレサーバを登録する。

  30. アクティベーション

  31. Activation CodeとActivation IDはここでしか表示されないので、 ここでメモる。

  32. Activation IDとActivation Codeを設定 • 各インスタンスにこのコマンドを打ち込む • code : アクティベーションコード(Activation Code)

    • id : アクティベーションID (Activation ID) • region : リージョンコード(ap-northeast-1) $ amazon-ssm-agent -register -code "(Code)" -id "(ID)" -region "us-east-1"
  33. EC2インスタンス立ち上げ時に 一気に実行する方法 • インスタンス立ち上げ時に「ユーザーデータ」に入力することで、起動時に実行 出来る。 • 初回立ち上げ後に消すことを忘れずに。

  34. メンテナンスウィンドウで時間を設定する

  35. 「マネージドインスタンス」に登録されたことを確認

  36. パッチマネージャー

  37. 対象インスタンスなどを選択

  38. None
  39. None
  40. 実例 「夜の仕事」とAWS

  41. 「夜の仕事」の中身 • サーバの保守サービス(「東雲の簡易保守」) • オンプレ/クラウド問わずに保守対応を行うサービス • ミドルウェアの脆弱性検知とアップデート • アプリケーション(WordPressなど)のアップデート •

    24h365dの無人監視 • 監視台数は20台ぐらい
  42. サービスの仕組み お客様のサーバ 東雲研究所 監視サーバ #1 サーバ内のCPUや メモリ・ディスク容量を 監視 東雲研究所 監視サーバ

    #2 サーバ内のミドルウェアチェック (脆弱性監視) サイト外形監視 Webが正しく表示されているか どうかをチェック 監視系サービス 遠隔操作系サービス Amazon EC2 Systems Manager 事前に設定した時間帯 (深夜など)にOSを自動的に アップデート 複数の監視サーバ・サービスを 東雲研究所が設定・運用することで 効果的な24時間365日の自動監視を 実現しています。
  43. サービスの仕組み お客様のサーバ 東雲研究所 監視サーバ #1 サーバ内のCPUや メモリ・ディスク容量を 監視 東雲研究所 監視サーバ

    #2 サーバ内のミドルウェアチェック (脆弱性監視) サイト外形監視 Webが正しく表示されているか どうかをチェック 監視系サービス 遠隔操作系サービス Amazon EC2 Systems Manager 事前に設定した時間帯 (深夜など)にOSを自動的に アップデート 複数の監視サーバ・サービスを 東雲研究所が設定・運用することで 効果的な24時間365日の自動監視を 実現しています。 今日はこれのお話
  44. ケース1:定期的に自動アップデートしてほしい 毎日深夜にアップデート確認をして ください。 あと、適用可能なパッチがあればそ のまま適用してください。 OS再起動しても大丈夫です。

  45. ケース2: コマンドを一括実行したい 各サーバで集計用のスクリプトを、 任意のタイミングで実行したい。

  46. ケース3: SSHポートを絶対に許可したくない 以前、SSHポートを経由した 不正アクセスに遭ってしまい、 もうSSHポートは開けたくない。

  47. まとめ • SSMを使うと、EC2インスタンスをまとめて一気に管理出来る • 出来る事は自動化することで、効率よく仕事をしよう • 全力で定時に帰ろう