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
EC2 Image Builder
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Takuya Shibata
PRO
December 17, 2019
Technology
580
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
EC2 Image Builder
2019年12月17日に行われたre:Growth 2019 Sapporoで発表したスライドです。
Takuya Shibata
PRO
December 17, 2019
More Decks by Takuya Shibata
See All by Takuya Shibata
意外とあった SQL Server 関連アップデート + Database Savings Plans
stknohg
PRO
0
650
AWSのProductのLifecycleについて
stknohg
PRO
0
720
アップデート紹介:AWS Data Transfer Terminal
stknohg
PRO
0
750
CloudFrontの継続的デプロイを試してみたはなし
stknohg
PRO
0
1.6k
Snapshot & Backup
stknohg
PRO
0
4.3k
AWSエンジニアのためのActive Directory入門
stknohg
PRO
1
3.7k
Windows on AWS の “基礎”
stknohg
PRO
0
1k
Azure Dedicated Host と2019年10月1日からのライセンス改定のはなし
stknohg
PRO
0
630
Windows on AWS 入門
stknohg
PRO
0
720
Other Decks in Technology
See All in Technology
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
2
540
Issue設計から始める仕様駆動開発 / 20260731 Mizuki Hirata
shift_evolve
PRO
1
140
Pavlokで始める電撃駆動開発
sgrsn
0
170
認知負荷をGemini で溶かす — GKE 基盤「Orbit」における AI エージェントの実践
sansantech
PRO
1
260
もう一度考える SRE チームの作り方・育て方 / Rethinking SRE #1: Building and Growing SRE Teams
rrreeeyyy
6
1k
Retriever と Reranker、結局どうする?
kazuaki
3
680
Invisible to AI? Making TYPO3 Sites Quotable by AI Search Systems
wolfgangwagner
0
130
サイバー捜査員研修(前半)
nomizone
1
1.8k
【CEDEC2026】『Relink』を拡張せよ - 『GRANBLUE FANTASY: Relink - Endless Ragnarok』の開発速度と品質を守るCI運用
cygames
PRO
0
130
【CEDEC2026】コードレビュー支援ツール開発から学ぶ:LLMを用いた業務システムの実践的な運用設計と誤出力対策
cygames
PRO
0
590
AI時代の強いチームの作り方
yuukiyo
25
16k
Breaking the Seal: Static Deobfuscation of Compiled V8 JavaScript Bytecode Malware
hshrzd
0
580
Featured
See All Featured
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
230
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
230
The Curious Case for Waylosing
cassininazir
1
450
エンジニアに許された特別な時間の終わり
watany
108
250k
Building Applications with DynamoDB
mza
96
7.2k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Statistics for Hackers
jakevdp
799
230k
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.7k
Between Models and Reality
mayunak
4
380
Facilitating Awesome Meetings
lara
57
7.1k
Transcript
EC2 Image Builder (公開版) 2019.12.17 re:Growth 2019 Sapporo Takuya Shibata
2 自己紹介 Takuya Shibata - AWS事業本部 コンサルティング部 - ソリューションアーキテクト -
CLR/H と きたあず の裏方 - PowerShell おじさん - 好きなAWSサービス
3 EC2 Image Builder
4 EC2 Image Builder
5 EC2 Image Builder ゴールデンイメージとなるAMI作成をよしなに自動化 してくれるサービス • 要は みたいなやつ •
テストもできるので + 的な • AWS License Manager等 の AWSサービス統合
6 まずは触ってみよう! Demo
7 Recipes 名前の通り作成するイメージのレシピ • ベースとなるAMI を決める • インストールする コンポーネント を指定する
• イメージに対する テスト を指定する
8 Recipes 対象OS • Amazon Linux 2 • Windows Server
2012 R2~2019 (英語) • SSM Agentをインストール済みのカスタムAMI
9 Recipes EC2 Image Builderは Build components (後述) の実行にSSM Agentを使用する
• SSM Agentのバージョン要求はドキュメントに無い • SSM Ducumentが実行できれば良さそう (個々のcomponentはDocumentとして実行される) • ビルド時のトラブルシュートはSSMと同様
10 Recipes Initiate a new image build when there are
updates to your selected image version.
11 Build Components イメージに追加する各種ソフトウェアのセットアップ スクリプトをまとめたもの
12 Build Components Componentsの実装は「Components」から検索
13 Build Components Componentsの実装は「Components」から検索
14 Build Components Componentsは自作可能
15 Tests 作成するイメージに対するインフラテストスクリプト をまとめたもの
16 Tests Testsの実装も「Components」から検索
Testsの実装も「Components」から検索 • テストによって前提条件が違うのでDescription をよく読んで使おう 17 Tests
Testsも自作可能 18 Tests
19 Pipelines RecipesをもとにAMIイメージを作成するための 環境設定 • AMIを作るためのIAMロール • ビルドスケジュール • ビルド時のインスタンスタイプ
• ビルドログ・終了後の通知設定(SNS、S3) • ビルド環境のVPC
20 Pipelines 必要最低限のIAMポリシー • AmazonSSMManagedInstanceCore • EC2InstanceProfileForImageBuilder
21 Pipelines 複数リージョンに同時にイメージ展開が可能 • 今回は触れないがアカウント間共有も可能
22 Run Pipeline パイプラインはあくまでもイメージ作りの環境設定 実際のイメージは ビルド(Run Pipeline) して初めて 作成される
23 Run Pipeline ビルド実行順は以下 1. Build phase 1. Build用 EC2インスタンス作成
(Source AMIより) 2. Build componentsの適用 3. 独自の終了処理 • Windowsではsysprepを実行 (RunSysprepGeneralize) • Amazon Linux 2では専用のシェルスクリプトを実行 (SanitizeScript) 2. Test phase 1. Test用 EC2インスタンス作成 (Build後 AMIより) 2. Test componentsの適用
24 Images バグなのか不明だが、現時点では ImageおよびBuild versionはコマンドからでないと 削除できない(ボタンが押せない…) # イメージの削除は aws imagebuilder
delete-image コマンドで aws imagebuilder delete-image --image-build-version-arn <イメージのARN>/<ビルド番号>
25 余談 コマンドラインはAWS CLIしか対応していないと 思っていたら、何気にAWS Tools for PowerShellも 対応していた •
Ver.4.0.2.0 – 2019.12.13より # モジュール名は AWS.Tools.ImageBuilder Install-AWSToolsModule -Name ImageBuilder # 前ページのイメージ削除はこんな感じ Remove-EC2IBImage -ImageBuildVersionArn <イメージのARN>/<ビルド番号>
26 これから確認したいポイント 1. Build components/Tests同士の依存関係は? • いちcomponent/test内では順序制御可能だが、 component/test同士の依存関係は定義できないっぽい 2. Build
components/Testsの実行順序制御は? • 実行順序を制御する方法が見つからない • ビルドログを見ると単純に選択順になってる様には見える… • 実行順序に依存するものを記述しない方がよさそう
27 これから試したいポイント 1. EC2 Image BuilderからVMDK、VHDXなどの オンプレ環境向けイメージを出力できる、らしい • GitHubのドキュメントに従いCLIから試そうとしたが、 CLIがまだ対応していない風のエラーを吐き手詰まりに
なった • 今日確認したらドキュメントから手順が消え去ってた… 2. CI/CDと絡めて何か • 正直Codeシリーズとの統合イメージが掴めていない • Codeシリーズ抜きにすればSNSでいろいろ通知できる ので、なんとでもなりそうではある
28 Documentation https://docs.aws.amazon.com/imagebuilder/
29 Documentation サービスページの右下にあるよ! ↓
30