Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
マルチアカウントな環境でパッチ適用をしたい
Search
mogro
July 21, 2024
Technology
2
160
マルチアカウントな環境でパッチ適用をしたい
JAWS-UG東京 ランチタイムLT会 #13 (20240722)登壇資料になります。
AWS Systems Manager Patch Managerのお話です。
mogro
July 21, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
2
350
多領域インシデントマネジメントへの挑戦:ハードウェアとソフトウェアの融合が生む課題/Challenge to multidisciplinary incident management: Issues created by the fusion of hardware and software
bitkey
PRO
2
100
Opcodeを読んでいたら何故かphp-srcを読んでいた話
murashotaro
0
230
バクラクのドキュメント解析技術と実データにおける課題 / layerx-ccc-winter-2024
shimacos
2
1.1k
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
330
統計データで2024年の クラウド・インフラ動向を眺める
ysknsid25
2
840
第3回Snowflake女子会_LT登壇資料(合成データ)_Taro_CCCMK
tarotaro0129
0
190
ガバメントクラウドのセキュリティ対策事例について
fujisawaryohei
0
530
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
280
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
210
Microsoft Azure全冠になってみた ~アレを使い倒した者が試験を制す!?~/Obtained all Microsoft Azure certifications Those who use "that" to the full will win the exam! ?
yuj1osm
2
110
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
160
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Statistics for Hackers
jakevdp
796
220k
A better future with KSS
kneath
238
17k
Facilitating Awesome Meetings
lara
50
6.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
450
4 Signs Your Business is Dying
shpigford
181
21k
Docker and Python
trallard
42
3.1k
Rails Girls Zürich Keynote
gr2m
94
13k
Transcript
マルチアカウントな環境で パッチ運用をしたい JAWS-UG東京 ランチタイムLT会 #13 mogro
業務 興味 名前 好きなAWSサービス お客様システムの設計/構築をしています mogro 自己紹介 @mogro04 ・旅 小黒
水樹(Mizuki Oguro) インフラエンジニア ・日本酒(推しは御湖鶴) ・メダカ Step Functions, SSM
アジェンダ ある案件の運用設計にて… 検証 まとめ
アジェンダ ある案件の運用設計にて… 検証 まとめ
各アカウントのEC2インスタンスに対してパッチ適用を行いたいです。 AWS Systems ManagerのPatch Managerを使えば、Organizationsの 管理アカウントから配下のアカウントに対してパッチ適用が行えると認識しています。 お客様 インフラ担当者 設計チーム 最近アカウントも増えてきているのでOrganisationsの管理アカウントから一元的に
管理ができるのが理想です! 現状、AWSのマネージドサービスについてはサービスごとの機能を利用してパッチ 適用やセキュリティアップデートを実施していますが、各アカウントにあるEC2 インスタンスについてはパッチ管理ができていません。 実際に検証を行った上で提案させてください!
お客様のAWS アカウント組織構造イメージ
各環境がOUで分かれている。 (Test, Staging, Production, etc…) AWSアカウントはお客様が提供する サービスごとに切られている。 お客様のAWS アカウント組織構造イメージ Test,
Staging, Production OUには それぞれのサービス用のAWSアカウ ントが存在している。
Run Command Automation Change Calendar Run Command Session Manager Documents
Incident Manager Maintenance Windows Parameter Store Change Manager Patch Manager State Manager AWS Systems Manager (SSM)とは? AWSやその他の環境(オンプレミスや他クラウド)のリソ ースを管理し、安全に運用するためのソリューションを提 供するサービスです 他にも色々… (参考)Black Belt 今回はPatch Managerについてお話します
管理アカウントからのパッチ適用イメージ
アジェンダ ある案件の運用設計にて… 検証 まとめ
その前に、EC2インスタンスを SSM Patch Managerでマネージドノードとして 管理するための準備が必要です!!
EC2インスタンスの準備 1. SSM AgentとPythonのバージョン確認 SSM Agent: バージョン2.0.834.0以降 Python: OSによって異なります (参考)Patch
Manager の前提条件 AWSが提供するAMIなどには、デフォルトでSSM Agentが導入済みのものもあります Amazon Linux 2での例
① ② EC2インスタンスの準備 2. パッチリポジトリに接続できることを確認 yum upgrade的なコマンドが通る必要があるというイメージです ①EC2のSecurity Group (out)でS3の
プレフィックスリスト宛の443を開く ②EC2が属するサブネットに紐づくルート テーブルに、VPCエンドポイント(S3 GW) へのルートがあるか確認する Amazon Linux 2での例
今回は Private Subnet からなので EC2インスタンスの準備 3. Private SubnetからSSM(VPC外のサービス) にアクセスできるようにVPC Endpointを設定します
① ② ③ (参考) Systems Manager のために VPC エンドポイントを使用して EC2 インス タンスのセキュリティを強化する ②com.amazonaws.{region}.ssm SSM サービスのエンドポイント ①com.amazonaws.{region}.ssmmessages Session Manager を使用して安全なデータチャネルを経由し インスタンスに接続する場合に必要 ③com.amazonaws.{region}.ec2messages SSMが、SSM AgentからSSMサービスへの呼び出しを行う エンドポイント
EC2インスタンスの準備 4. 対応するOSであることを確認 (参考)Patch Manager の前提条件
管理アカウントで、 SSMの「高速セットアップ」から パッチポリシーを作成します
①OU(環境)の制御 ②アカウント(サービス)の制御 ③OSの制御 再録 管理アカウントからのパッチ適用イメージ 考慮事項
パッチポリシー作成 まだ「高速セットアップ」できないリージョン結構多い (大阪リージョンもまだ)
パッチベースラインの設定 ①OU(環境)の制御 ③OSの制御
パッチベースライン OSを選択して作成 「当てるパッチの種類」や 「リリースされてどれくらい経ったら承認するか」など 環境(OU)ごとにベースラインを作って、 承認までの日数をずらしてテストを行うというような運用も…! なに?
パッチベースライン どこ? SSMコンソールの「パッチマネージャー」→「パッチベースライン」
①OU(環境)の制御 ②アカウント(サービス)の制御 ターゲットの設定 ターゲットOUの指定が可能 リージョンの指定 インスタンスタグで対象の指定が可能
パッチスキャン/適用確認 それぞれのアカウントで管理インスタンスとして認識され、パッチスキャンの状況を確 認することができました! (検証環境を再構築したタイミングで適用対象のパッチがなく、パッチ適用についてキ ャプチャがありません。 )
注意点
1つのインスタンスに対して複数のパッチポリシーが紐づく状態は避ける 「環境ごとに複数のパッチポリシーを作成する」はOK パッチマネージャーの「今すぐパッチ適用」も併用するのはよろしくない パッチスキャンや適用の結果は個別アカウントのPatch Managerコンソ ールから確認をする必要がある 「マネージドインスタンスが何台で、アンマネージドインスタンスが何台」くらい の情報であれば管理アカウントから確認できる(SSMのエクスプローラーから) 注意点
アジェンダ ある案件の運用設計にて… 検証 まとめ
まとめ 管理アカウントで、SSMの「高速セットアップ」から配下のOU向けの パッチポリシーを作成することが可能。 パッチベースラインを環境ごとに分けてポリシーを作成することで、パ ッチがリリースされてから適用までの期間を環境で分けるような実装も 可能。 パッチ運用は要件の数だけパターンが存在します。様々なパターンを実 現するために検討→検証のサイクルが重要だと感じました。