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もバックアップファイルを共有するだけでアカウント間での移動が簡単に行えます。
もうイメージファイルをコピーしてどこかにアップロードしてダウンロードしてもらったり、大量なデータベースのダンプファイルを出力して、それをインポートしてもらったりと時間がかかる作業を行わなくてもいいのも大きなメリットかと思います。
最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。
【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。
i【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター3年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
ヤマムギ vol.8 (AWS)EC2でLinuxサーバー構築ハンズオン 手順
ヤマムギとは from Mitsuhiro Yamashita 「AWSではじめ …
-
-
ALBにWAFを関連付けて特定のヘッダー以外はブロックする
おかげさまで、ブログのアクセスも増えてきて、t3.nano EC2インスタンス単 …
-
-
NGINXで500と502のエラーが実は頻発していたらしい
先日Mackerelで当ブログの外形監視を始めたのですが、500と502のエラー …
-
-
ECR(Amazon Elastic Container Registry)にコンテナイメージをアップロードする
「Pandocサーバーのコンテナイメージを作成する」で作成したイメージをAWS …
-
-
boto3(Python SDK) s3 get_object でバイト範囲を指定する
S3のGetObjectアクションでバイト範囲を指定することができます。 それに …
-
-
Amazon Pollyを使って覚えたい資料を耳から身体に染み込ませる
Amazon Pollyを使うとソースコードを一切かかなくても、テキストを音声に …
-
-
Amazon Connectの新規作成からプッシュボタン入力と発信元電話番号をLambdaで処理するまで
とりあえずやりたいことはタイトルに書いたとおり、「電話をかけて、プッシュボタンに …
-
-
RDSの証明書をrds-ca-2019に更新しました
クライアント接続で署名書使ってないので、必要ないのですが、古いままなのも気持ち悪 …
-
-
Developers Summit 2018 「AWSのフルマネージドな環境でCI/CDをやってみよう!AWS Cloud9からAWS Fargateへの継続的デプロイをご紹介」を聞きました
※写真は展示のAmazon Echoです。 以下は、思ったことや気になったことを …
-
-
Backlogの課題チケット更新内容をMicrosoft Teamsに通知する(AWS Lambda Python)
BacklogにSlack連携が追加されました。 ですが、私の所属している会社で …