ゴールデンイメージとは?
事前に構成された環境をマシンイメージ化し、テンプレートとして使えるようにしたもの。
このイメージは、新しいハードウェアや仮想マシンに迅速にデプロイするための使用されるってことみたいです。
ゴールデンイメージを使用することの利点
- 一貫性:全てのデプロイメントが同じ設定とソフトウェアを持つため、一貫性が保たれます。
- 時間と労力の節約:手動でのインストールや設定作業を省略できるため、時間と労力を節約できます。
- セキュリティと管理の容易化:標準された環境を保つことで、セキュリティ対策や管理が容易になります。
【本題】AWS上のゴールデンイメージは?
AWSにおけるゴールデンイメージは、Amazon Machine Image(AMI)と呼ばれています。
AMIは、特定のインスタンスの設定を保存したテンプレートで、以下の内容が含まれます。
- オペレーティングシステム(OS):WindowsとかLinuxのこと
- アプリケーションソフトウェア:ソフトウェアとかミドルウェア、ツール、サービスなど
- アプリケーションサポートファイル:設定ファイルとかデータ
AMIを使用することの利点
- 迅速なデプロイメント:新しいEC2を素早く展開できる
- 一貫性:複数のインスタンスに同じ設定とソフトウェアを適用できる
- スケーラビリティ:同じAMIから複数のインスタンスをスケールアウトできる
- バックアップとリカバリ:特定の状態を保存しておくことで、必要に応じて同じ状態にリストアができる
ゴールデンイメージに入れるものが多いと?
アプリケーションソフトウェアとかミドルウェアなどイメージに含むものが多ければその分は作成時間がかかってしまうので、定期的に作成する場合は、イメージ作成の自動化やCI/CDを検討する必要があるよねって話になりそう。
自動化やCI/CD化を検討する上でどんな課題が出るの?
- CI/CD化は高スキルが要求される
- 既存自動化ツールの維持運用が必要になる
- ソフトウェア更新の都度、手動で構築やテストが必要になる
- 事前に問題検知ができず、本番運用後に問題が発生してしまう
自動化やCI/CD化の実現手段はどんなのがあるか調べてみる
- Packer + Ansibleでやる
- EC2 Image Builderを使う
まとめると
Packer + Ansibleで今度検証してみよって話。
続編に期待。