top of page
検索
  • 執筆者の写真Naoya Yamashita

Image Builderで再現性のあるAMI作成を実現する


EC2を使ったWebアプリケーションの構成として以下のような構成があります。






初歩的な構成ながら、頑強性と冗長性、そして再現性を持たせるためには多くの工夫が必要です。


この記事では図中のEC2で動作する「AMI」をどの様に用意するかということを中心に紹介します。


EC2 Image Builder


従来、AMIはまっさらなEC2を起動し、その上で秘伝のスクリプトを実行し、各種のテスト等を実施した後、AMIとして保存するという流れでした。


しかし、コンソール上の手作業が多発し、秘伝のスクリプトもどんどん発展していき、結果の再現ができなくなる危険性がありました。


そんな中、AWSが用意しているのが、EC2 Image Builderです。


EC2 Image Builderを利用することによってまっさらなEC2からどんな作業をして目的のAMIにするのかというのをレシピとして管理できます。





こちらがEC2 Image Builderのコンソールです。


最近の実行結果について一覧できており、ログへのリンクが表示されます。





こちらがレシピの内容です。


まずまっさらなEC2から出発した後、apt update後にどんな作業を実施するかをGUIで管理できます。


こちらのレシピで作るAMIはCron式を設定することで定期的に実行することができます。


昨今のセキュリティ事故を鑑みても、EC2を管理せざるを得なくなった場合にはソフトウェアのアップデートは定期的に行うことが推奨されます。


Image Builderでは作成したAMIについてテストスクリプトで検証することもできます。この機能により、定期実行で更新された壊れたAMIを本番クラスタに誤って適用してしまうことを防ぐことができます。


システムの安定稼働のためには再現性が重要です。ぜひ皆さんもImage Builderを使って見てください。

閲覧数:9回0件のコメント

最新記事

すべて表示

データ状態により異なるSQLを実行させたい

はじめに 近頃担当する業務は夜間バッチでのデータ更新処理が多く、特にDWH的にテーブル再構築(TRUNCATE/INSERT)のパターンを多く使用しています。 その中でSQLで処理を組み上げる時、エラー処理などで条件分岐で異なるSQLを実行したくなる事は珍しくありません。 多くのシステムでは呼び出し側でSQLの実行結果を参照し、次に実行するSQLを選択/実行していると思います。 また、SQLだけで

Yorumlar


bottom of page