[アップデート] EC2 Image Builder が Ubuntu/RHEL/CentOS/SLES に対応しました!

2020.04.21

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

EC2 Image BuilderのサポートOSが追加されました。

EC2 Image Builder adds support for Ubuntu, RHEL, CentOS, and SLES

EC2 Image Builderとは

EC2 Image BuilderはEC2のイメージの作成・更新を専用のパイプラインによって簡素化・迅速化するAWSサービスです。 サービスの詳細についてはリリース当時のブログや公式ページなどをご参照ください。

EC2のイメージ作成を劇的に効率化するEC2 Image Builderが発表されました! EC2 Image Builder(AWS公式ページ)

サポートされるOS

  • Amazon Linux 2
  • Windows Server 2019/2016/2012 R2
  • Windows Server version 1909
  • Red Hat Enterprise Linux (RHEL) 8 and 7 [NEW!]
  • CentOS 8 and 7 [NEW!]
  • Ubuntu 18 and 16 [NEW!]
  • SUSE Linux Enterprise Server (SUSE) 15 [NEW!]

2019年末のサービス発表当初からサポートされている Amazon Linux 2 および Windows Server に加えて、Ubuntu / RHEL / CentOS / SLES がサポートされるようになりました。

Supported Image Formats

利用可能なリージョン

有効化されているすべてのリージョンで利用可能です。

やってみた

CentOS 7 に Apache をインストールしたイメージを作成してみます。 詳細な手順については下記のブログなどをご参照いただければと思います。

EC2 Image builderに入門してみた EC2 Image BuilderでMackerelエージェントイントール済みのAMI(Auto Scaling環境向け)を作成してみた

Source imageの指定

CentOSにチェックを入れ、ベースイメージとして最新版のイメージ(arn:aws:imagebuilder:ap-northeast-1:aws:image/centos-linux-7-minimal-x86/2020.3.9)を指定します。

Componentの作成

Definition documentを下記のとおり設定します。

name: InstallApache
description: InstallApache
schemaVersion: 1.0

phases:
  - name: build
    steps:
      - name: UpdateOS
        action: UpdateOS
      - name: InstallApache
        action: ExecuteBash
        inputs:
          commands:
            - sudo yum -y install httpd
            - sudo systemctl enable httpd

  - name: validate
    steps:
      - name: CheckApache
        action: ExecuteBash
        inputs:
          commands:
            - rpm -qi httpd

  - name: test
    steps:
      - name: TestApache
        action: ExecuteBash
        inputs:
          commands:
            - sudo systemctl status httpd

Image Pipelineの作成

Build componentsとして上記のComponentを指定します。 それ以外はデフォルトの設定でImage Pipelineを作成します。

Image Pipelineの実行

作成したImage Pipelineを実行します。

EC2インスタンスの起動

Image Pipelineの実行後しばらくするとAMIが作成されるので、これを使用しEC2インスタンスを起動します。インスタンスにはパブリックIPを付与しました。当該IPにWebブラウザからアクセスしてみます。

無事ApacheがCentOS上で動きました。

終わりに

この度のアップデートにより主要なOS(Linuxディストリビューション)はほぼすべてEC2 Image Builderのサポート対象に含まれることとなりました。 サポートOSの少なさゆえに使用を諦めていた皆さまも、これを気にEC2 Image Builderをさわってみるのはいかがでしょうか。

このブログがほんの少しでも世界を良くできれば嬉しいです。 コンサルティング部の西野(@xiyegen)がお送りしました。