【AWS Summit Japan 2022】クラウドのシステム運用最前線!上手く使いこなし運用を楽にしよう(AWS-20)

AWS

2022.5.27

Topics

こんにちは!クラウドリードチームのKanoです。
5月25日,26日に開催されたAWS Summit Japan 2022で、
「クラウドのシステム運用最前線!上手く使いこなし運用を楽にしよう」というセッションを聞いたのでレポートします。

セッション概要

タイトル

クラウドのシステム運用最前線!上手く使いこなし運用を楽にしよう(AWS-20)
上記リンクより本セッションの資料をダウンロードできます。

スピーカー

アマゾンウェブサービスジャパン合同会社 技術統括本部
シニアソリューションアーキテクト
石橋 佳代子さん

概要

本セッションでは、クラウドを活用したシステム運用の中核を担う AWS Systems Manager  の全体像を解説します。 ユースケースとしてAWS上のコンプライアンス管理を題材に、各機能がどのような用途で利用できるのかをわかりやすくご紹介します。最初はスモールスタートでも、いつの間にかオンプレミスにもクラウドにも、サーバーOS も混在、AWSアカウントも複数に。そんな大規模環境の運用に日々奮闘されている方もいらっしゃるのではないでしょうか。このセッションではマルチアカウント環境での利用についてもご紹介します。ぜひこの機会に便利な機能群を上手く使いこなし、運用を楽にしてみませんか?

想定の聴講者

・AWS Systems Managerを活用した最新のクラウド運用を実践されたい方
・マルチアカウントやハイブリッド環境といった大規模環境の運用を楽にしたい方
・AWS Systems Manager全体像や各機能の概要を理解したい方

レポート

本セッションでは、AWSの運用系サービスの一つであるAWS System Managerの活用方法がメインテーマになります。
AWSの運用系サービスを活用することで、以下のようなAWS上で運用するメリットを最大限に得ることができます。

・コスト削減
・スタッフの生産性向上
・ダウンタイムの減少
・ビジネスアジリティ(俊敏性)の向上
・二酸化炭素排出量の削減
・ビジネスアジリティとガバナンスの両立

■AWS Systems Managerとは

システム環境を統合的に管理して、運用作業の自動化やシステム環境のリソース構成を可視化できるサービス。

機能は大きく以下4つに大別される。
・運用管理
・変更管理
・ノード管理
・アプリケーション管理

非常に多くの機能を持つAWS Systems Managerですが、各機能の概要を目的別で分かりやすく説明されています。
具体的にはコンプライアンス管理に必要な4段階を例に、各フェーズで利用できる機能が紹介されています。

[コンプライアンス実現のための4段階]
1.Build Foundation(基礎作り)
2.Enable Visibility(可視化)
3.Proactively automate(自動対処)
4.Remediate Issues(問題修復)

また、アプリケーション管理で利用できる機能についても紹介されています。

以下に本セッションで紹介された機能を簡単にまとめます。

■SSMの機能紹介
1.Build Foundation
運用のベストプラクティスを展開し、それを維持する仕組みの確立

[利用できる機能]
・Quick Setup
マルチアカウント、マルチリージョンにベストプラクティスを展開できる。
(ベストプラクティスというのは、SSM Agentの定期更新やInventoryの定期収集等といった設定のこと)

・State Manager
Quick Setupで展開したSSMの定期実行を制御できる(いつ何を動かすか、正常に動いているか)

⇒ Quick Setupで運用上のベストプラクティスを展開し、State Managerでそれを維持するイメージ

2.Enable Visibility
ハイレベルやノードレベルのダッシュボードで可視化して管理

[利用できる機能]
・Explorer
マルチアカウント・マルチリージョンのハイレベルな運用ダッシュボード。

・OpsCenter
環境全体の運用上の問題(OpsItem)を一元的に管理。
各サービスのエラーや閾値超過アラート等。

・FleetManager
アカウント内の全インスタンスを一元管理。
マネコンからログのTailやプロセス稼働状況の確認などが可能。

・Inventory
ノードのメタデータ(アプリケーションやファイル、NW情報)を可視化。
カスタムインベントリで独自アイテムの収集も可能。
例:アカウント全体の全ノードに対しlog4jの使用有無を探索

⇒ Explorer,OpsCenterはAWS環境全体の状態を俯瞰的に確認する際に使用し、Fleet ManagerとInventoryは個々のノードの状態を管理・確認したい時にを使えます。

3.Proactively Automate
汎用的な管理タスクの自動化と、インシデント時の修復アクション

[利用できる機能]
・Patch Manager
パッチの自動スキャン・自動適用。

・Distributor
ソフトウェアのインストール・更新の自動化。

・Automation
カスタム処理の自動化。
自動化ワークフローであるRunbookを定義・実行することで、様々なユースケースに対応可能。
事前定義されたRunbookも多数ある。
トリガーにはメンテナンスウィンドウやState Managerからの定期実行やEventBridgeからの修復アクションとしても設定できる。

・Maintenance Windows
自動処理のタイミングを制御。
SSMの他にLambdaやStepFunctionsの呼び出し可能。

・Change Calendar
カレンダーイベントを作成し、イベント有無で実行を制御できる。

・Change Manager
変更を安全に⾏うための承認ワークフローの⾃動化

⇒ 汎用的な処理の自動化にはPatch ManagerやDistributer、Automationが使えます。
パッチ適用やソフトウェアのインストール・アップデート以外の処理を自動化したい場合はAutomationでカスタムできます。
それらの実行タイミングをMaintenance Window、Change Calendarで制御、Change Managerで承認ワークフローを自動化します。

4.Remediate Issues
ノードへの⼀括コマンド発行や、安全な特権アクセス

[利用できる機能]
・Run Command
サーバーにログインすることなく、マネージドノードに対してコマンドを一括実行。

・Session Manager
インバウンドポートを開くことなく、ブラウザやCLIからインタラクティブなシェルアクセスを実現。

・Fleet Manager
WindowsサーバへのRDP接続が可能

・Incident Manager
事前に準備された対応計画、Runbookの実行、分析による改善。

⇒ RunCommandは各ノードに対しリモートでコマンドを一括実行でき、Session ManagerやFleet Managerではノードにアクセスして対話的にコマンド操作できます。
Incident Managerでは事前にアラームへの対応計画を指定しておくことで、適切な連絡先に自動通知をしたり、Runbookを自動起動するなど迅速な対応、インシデント後の分析に役立ちます。

SSMを使用したアプリケーションの管理

続いてアプリケーションの管理で使用できる機能が紹介されています。
アプリケーションはローンチして終わりではなく、メンテナンスやライフサイクルの管理が必要になります。
これを実現するため、SSMでは以下の機能が提供されてます。

・Application Manager
個々のリソースだけでなく、アプリケーションを⼀つのコンソールから管理できる。

・AppConfig
アプリケーションを実行したまま、アプリケーション構成の変更をデプロイ。

・Parameter Store
アプリケーションの設定値とシークレットを格納し、全てのパラメーターを 1 か所で⼀元的に更新する
ことで、コードのメンテナンスと⾃動化を簡素化。

■マルチアカウント・ハイブリッド環境での使⽤

ハイブリッドやマルチアカウントといったように、環境が大規模になってもSSMは利用することができます。
ハイブリッド環境
SSMエージェントをオンプレミスに入れ、アクティベーションをすることでオンプレミスのサーバも一括運用できる。
マルチアカウント環境
SSMの多くの機能はマルチアカウントに対応しており、利用可能。

まとめ

AWS Systems Managerを使いこなすことで、クラウドを利用するメリットを最大限に享受できるようになることが分かりました。
マルチアカウントやハイブリッド環境といった大規模環境ではシステム運用やトラブル発生時におけるフローや手順が煩雑になりがちかと思いますが、Systems Managerを使えば容易に簡素化することが可能です。
是非この機会にAWS Systems Managerを学習し、フル活用しましょう!

Recommends

こちらもおすすめ

Special Topics

注目記事はこちら