ヤマムギ

growing hard days.

*

EC2のAMIとRDSのスナップショットを他のAWSアカウントに共有してブログサイトをAWSアカウント間で引っ越す

   

当ブログで使用しているEC2とRDSを環境の整理のため、他のAWSアカウントへ引っ越ししようと思います。

引越し先でVPCを作成する

VPCは、パブリックサブネットとプライベートサブネットを2つづつ(とりあえず1つづつしか使いませんが)で作成しています。

EC2のAMIを引越し先のアカウントに共有する

EC2インスタンスを選択して[アクション] – [イメージ] – [イメージの作成]でAMIを作成します

作成されたAMIを選択して、[アクション] – [イメージパーミッションの変更]をクリックします。

引越し先のAWSアカウントID(12桁の数字)を入力して保存します。

引越し先のAWSアカウントでAMIを[プライベートイメージ]でフィルタリングすると共有されたAMIがあるので、選択して、[アクション] – [作成]をクリックします。

※ 共有元がAMIを作成したリージョンを選択する必要があります。

EC2起動に必要なパラメータを設定してEC2を起動します。

※ IAMロールやセキュリティグループなど事前に作っておけるものは作っておいたほうがスムーズです。

RDSのスナップショットを引越し先のアカウントに共有する

※ DBサブネットグループ、セキュリティグループは作成しておきます。

自動作成で作成しているスナップショットでもいいですが、最新の状態で共有したい場合は手動でスナップショットを作成します。

作成したスナップショットを選択して[スナップショットのアクション] – [スナップショットの共有]を選択します。

引越し先のAWSアカウントID(12桁の数字)を入力して保存します。

引越し先のAWSアカウントでRDSのスナップショットを[共有ファイル]でフィルターすると共有されたスナップショットがあるので、選択して[スナップショットのアクション] – [スナップショットの復元]をクリックします。

※共有元がスナップショットを作成したリージョンを選択する必要があります。

DBインスタンスに必要なパラメータを設定して起動します。

セキュリティグループを設定します。

最後に

  • 他に必要なリソース(Lambdaなど)があれば作成します。
  • EC2とRDSを接続するために必要な設定をします(WordPressならwp-config.phpなど)。
  • Macのhostsを設定してローカルからアクセスしてテストします。
  • CloudFrontからEC2をオリジンにしているので、オリジンのDNSを最後に変更します。
  • 4サイトをこの環境で稼働しているので一番アクセスの少ないサイトからDNSを変更して確認します。

AWSアカウント同士であればEC2もRDSもバックアップファイルを共有するだけでアカウント間での移動が簡単に行えます。
もうイメージファイルをコピーしてどこかにアップロードしてダウンロードしてもらったり、大量なデータベースのダンプファイルを出力して、それをインポートしてもらったりと時間がかかる作業を行わなくてもいいのも大きなメリットかと思います。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

AWS Network Firewallの入門

公式のGetting started with AWS Network Fire …

VPCピア接続ではピア先VPCのセキュリティグループIDを指定できる

タイトルどおりです。 できることは知ってたのですが、試したことがなかったので、確 …

Amazon InspectorによるLambda関数の脆弱性検出結果を確認しました

AWS re:Invent 2022期間内に発表されましたAmazon Insp …

S3をトリガーにしたときのLambdaのリソースベースポリシー

LambdaのトリガーでS3を設定したとき、自動的にLambdaのリソースベース …

API Gateway 作成済REST APIの定義をSwaggerの形式でエクスポート

SAMで似たようなAPIを作りたくて、エクスポートしました。 Swaggerは、 …

Systems Manager パッチマネージャでベースラインを作成して適用する

ベースラインの作成 Systems Managerのパッチマネージャーでパッチベ …

WordPressのwp-login.php , xmlrpc.phpへのアクセスをAWS WAFで接続元IPアドレスを制限する

AWS CloudWatch LogsエージェントでAmazon EC2上のNg …

AWS Organizations EC2宣言型ポリシーを設定する

2024/12/1に発表されましたOrganizationsの宣言型ポリシーを設 …

boto3(Python SDK) s3 get_object でバイト範囲を指定する

S3のGetObjectアクションでバイト範囲を指定することができます。 それに …

当ブログ(WordPress)のCloudFrontのキャッシュヒット率があがった

当ブログの構成です。 S3とALB+EC2 Auto Scalingで構成してい …