Skip to content

Amazon Linux 2 AMI取得手順書

目次

  1. 概要
  2. AMI取得手順
  3. 複数インスタンスの一括処理
  4. 参考資料

概要

背景

Amazon Linux 2のサポート終了(EOL: End of Life)

  • サポート終了日: 2026年6月30日
  • 主な課題:
    • サポート終了後、パブリックイメージがAWSコンソール上で検索しても表示されなくなる
    • 不具合や障害発生時にパブリックイメージから復旧できない可能性がある
    • セキュリティアップデートが提供されなくなり、セキュリティリスクや不具合が発生する可能性がある
  • 対応方針:
    • 暫定対応: AMIを取得してプライベートイメージとして保持し、緊急時の復旧手段を確保
    • 恒久対応: Amazon Linux 2023やその他のOSへの移行を実施
  • 関連Issue: #7847 - Amazon Linux 2のOS移行

重要: AMIによる保持はあくまでも暫定対応です。サポート終了後のAmazon Linux 2にはセキュリティリスクがあるため、最終的にはAmazon Linux 2023等への移行が必要です。

目的

本手順書では、Amazon Linux 2インスタンスからプライベートAMI(Amazon Machine Image)を取得する手順を定めています。

AMI取得により実現できること:

  • インスタンスの完全なバックアップ(現在の動作確認済み構成を保存)
  • 別リージョンへのコピーによるディザスタリカバリ対策
  • 開発・テスト環境での同一構成インスタンスの複製

対象環境

本手順書は以下の環境を対象とします:

  • 対象OS: Amazon Linux 2 (AMI名に "amzn2" を含む)
  • 調査対象リージョン: ap-northeast-1 (東京), us-east-1 (バージニア), us-west-2 (オレゴン), ap-northeast-3 (大阪)

AMI取得対象のAWSアカウント:

AWSアカウントIDAmazon Linux 2台数備考
9001763015326台fd-dev(開発環境)
9676919688274台fd-prod(本番環境)
9138312266055台fd-sys(システム管理環境)

合計: 15台

注意: fd-infra環境(853790572692)は検証用で破壊されても問題ないため、AMI取得対象外としています。ただし、本手順書の検証では利用します。

詳細一覧

1. fd-dev環境(900176301532)- 6台

東京リージョン (ap-northeast-1) - 3台
Instance IDInstance NameAMI IDAMI NameTypeState
i-0021f33ada7e21742本番で利用_fd-system-dev-proxy-squidami-078296f82eb463377amzn2-ami-kernel-5.10-hvm-2.0.20220912.1-x86_64-gp2t3.smallrunning
i-0adf7114221144f2dfd-sysami-02c3627b04781eadaamzn2-ami-kernel-5.10-hvm-2.0.20220426.0-x86_64-gp2t2.microrunning
i-076221cc6a9e7a215fd-sys-retoolami-02c3627b04781eadaamzn2-ami-kernel-5.10-hvm-2.0.20220426.0-x86_64-gp2t2.microrunning

注釈: mental-retool-bation-stg (i-0d2816a7cd665c875) は削除予定のため対象外。

備考: i-0adf7114221144f2d (fd-sys) - AMI取得・起動検証済み ✅

バージニアリージョン (us-east-1) - 2台
Instance IDInstance NameAMI IDAMI NameTypeState
i-038dc4ffa6cd7c7a7fd-platformami-0cff7528ff583bf9aamzn2-ami-kernel-5.10-hvm-2.0.20220606.1-x86_64-gp2-running
i-0f2a1621fed523bbffd-platform-retoolami-0cff7528ff583bf9aamzn2-ami-kernel-5.10-hvm-2.0.20220606.1-x86_64-gp2-running

2. fd-prod環境(967691968827)- 4台

東京リージョン (ap-northeast-1) - 2台
Instance IDInstance NameAMI IDAMI NameTypeState
i-01b1fcf95660714b4fd-platformami-02c3627b04781eadaamzn2-ami-kernel-5.10-hvm-2.0.20220426.0-x86_64-gp2t2.microrunning
i-0a96515fe2956f506fd-office-connectionami-02c3627b04781eadaamzn2-ami-kernel-5.10-hvm-2.0.20220426.0-x86_64-gp2t2.microrunning
バージニアリージョン (us-east-1) - 2台
Instance IDInstance NameAMI IDAMI NameTypeState
i-07914da285a8119b2fd-platformami-0cff7528ff583bf9aamzn2-ami-kernel-5.10-hvm-2.0.20220606.1-x86_64-gp2t2.microrunning
i-04e4b61429a613309fd-platform-retoolami-0cff7528ff583bf9aamzn2-ami-kernel-5.10-hvm-2.0.20220606.1-x86_64-gp2t2.microrunning

3. fd-sys環境(913831226605)- 5台

東京リージョン (ap-northeast-1) - 2台
Instance IDInstance NameAMI IDAMI NameTypeState
i-046db4d70788a38d8oc-monitoring-prodami-0ecb2a61303230c9damzn2-ami-kernel-5.10-hvm-2.0.20220719.0-x86_64-gp2t2.microrunning
i-00a338a8414c94f08fd-sysami-02c3627b04781eadaamzn2-ami-kernel-5.10-hvm-2.0.20220426.0-x86_64-gp2t2.microrunning
バージニアリージョン (us-east-1) - 3台
Instance IDInstance NameAMI IDAMI NameTypeState
i-022a683b669777872メンテ用ami-02e136e904f3da870amzn2-ami-hvm-2.0.20211001.1-x86_64-gp2t2.mediumstopped
i-01cb8a925e2440c77fd-platformami-0cff7528ff583bf9aamzn2-ami-kernel-5.10-hvm-2.0.20220606.1-x86_64-gp2t2.microrunning
i-0a9f18c7a0a8af775fd-platform-retoolami-0cff7528ff583bf9aamzn2-ami-kernel-5.10-hvm-2.0.20220606.1-x86_64-gp2t2.microrunning

参考: fd-infra環境(853790572692)- 2台(AMI取得対象外)

⚠️ この環境はAMI取得対象外です: 検証用環境のため、破壊されても問題ありません。本手順書の検証にのみ利用します。

バージニアリージョン (us-east-1) - 2台
Instance IDInstance NameAMI IDAMI NameTypeState
i-03434305c900901bafd-platformami-0cff7528ff583bf9aamzn2-ami-kernel-5.10-hvm-2.0.20220606.1-x86_64-gp2t2.microstopped
i-09e6d0321d9d5b504fd-platform-retoolami-0cff7528ff583bf9aamzn2-ami-kernel-5.10-hvm-2.0.20220606.1-x86_64-gp2t2.microstopped

AMI取得手順

AMI取得方針

FastDoctorの環境では、以下の用途でインスタンスが常時稼働しているため、--no-rebootオプションでAMI取得を実施します:

  • DBマイグレーション: データベース操作の踏み台として稼働
  • SaaS接続の踏み台: 外部SaaSサービスからのDB接続経路として稼働
  • 開発・業務での利用: 開発者や業務チームが常時利用

重要:

  • Running状態のインスタンス: --no-rebootオプションにより起動したままAMI取得
  • Stopped状態のインスタンス: そのままの状態でAMI取得
  • どちらの状態でも業務への影響を最小化します

AMI取得手順

AMI作成は、以下のシェルスクリプトで完結します。

スクリプトによるAMI作成

スクリプトパス: docs/sre/scripts/create-ami-single.sh

基本的な使い方:

bash
# リポジトリルートディレクトリに移動
cd /Users/takahiro.oga/Documents/work/terraform_for_aws

# スクリプトに実行権限を付与(初回のみ)
chmod +x docs/sre/scripts/create-ami-single.sh

# AMI作成実行
./docs/sre/scripts/create-ami-single.sh <REGION> <PROFILE> <INSTANCE_ID>

引数:

順序引数説明
1<REGION>AWSリージョンap-northeast-1, us-east-1
2<PROFILE>AWSプロファイル名fd-dev, fd-prod-read, fd-sys-read
3<INSTANCE_ID>対象インスタンスIDi-0adf7114221144f2d

注意: インスタンス名は自動的に取得されます。

実行例:

bash
# 例1: fd-dev環境の東京リージョンでAMI作成
./docs/sre/scripts/create-ami-single.sh ap-northeast-1 fd-dev i-0adf7114221144f2d

# 例2: fd-prod環境のバージニアリージョンでAMI作成
./docs/sre/scripts/create-ami-single.sh us-east-1 fd-prod-read i-07914da285a8119b2

# 例3: fd-sys環境の東京リージョンでAMI作成
./docs/sre/scripts/create-ami-single.sh ap-northeast-1 fd-sys-read i-046db4d70788a38d8

# 例4: fd-infra環境のバージニアリージョンでAMI作成(検証用)
./docs/sre/scripts/create-ami-single.sh us-east-1 fd-infra i-03434305c900901ba

スクリプトが自動実行する処理:

  1. インスタンス情報取得: インスタンス名と状態を自動取得
  2. AMI作成: --no-rebootオプションでインスタンス状態を維持したまま作成
  3. AMI作成完了待ち: 最大15分間待機(通常5〜10分)
  4. AMI状態確認: 作成されたAMIの詳細情報を表示
  5. タグ付け: Name, Service, CreatedBy, SourceInstanceIdを自動設定
  6. AMI削除保護の有効化: 誤削除を防止
  7. 削除保護状態確認: 削除保護が正しく設定されたことを確認

重要事項:

  • ⚠️ --no-rebootオプション: インスタンスは現在の状態(running/stopped)を維持したままAMIが作成されます。業務への影響はありません。
  • ⚠️ ファイルシステム整合性: 100%保証されませんが、Amazon Linux 2のファイルシステム(XFS/EXT4)は書き込みバッファリングを持つため、通常は問題ありません。
  • ⚠️ 本番環境の注意: 読み取り専用プロファイルの使用を推奨します。

参考資料

公式ドキュメント

関連ドキュメント

  • Amazon Linux 2 AMI起動手順書
  • AMI取得・起動検証結果: docs/tasks/amazon-linux-2-ami-verification.md(未作成)
  • Amazon Linux 2 インスタンス一覧(詳細版): docs/tasks/amazon-linux-2-instances-found.md(本手順書に統合済み)
  • Issue #7847

作成日: 2026-03-26 作成者: takahiro-oga 改訂履歴:

  • v1.0 (2026-03-26): 初版作成