ヤマムギ

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

@yamamanx

開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー1年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。

また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - AWS , ,

ad

ad

  関連記事

「X-Tech JAWS 【第2回】~9割のX-Techと1割の優しさで切り拓く未来~」に行ってきました

「X-Tech JAWS 【第2回】~9割のX-Techと1割の優しさで切り拓く …

Feedlyのフィードを自動でSlackへ投稿する(AWS Lambda , Amazon DynamoDB)

やりたいこと Feedlyで共有したいフィードに特定のタグを付けます。 特定のタ …

EC2 Amazon LinuxのNginx+RDS MySQLにレンタルWebサーバーからWordPressを移設する(手順整理版)

ブログサイト(WordPress)をレンタルWebサーバーからAWSに移設する事 …

[事前準備] JAWS-UG 関西IoT専門支部「マクニカkibo + AWS IoTハンズオン」

来る12/19(土)の JAWS-UG 関西IoT専門支部第一回勉強会「マクニカ …

WordPressをAmazon CloudFrontで配信してついでにACM(AWS Certificate Manager)を使って常時SSL化する

当サイトの500と502の発生状況がドイヒーであるとの苦情をいただきまして、Am …

Amazon Elasticsearch ServiceにMySQLのデータを投入してkibanaで可視化してみる

MySQLのデータの可視化にAmazon Elasticsearch Servi …

リザーブドインスタンスはじめました

このブログも2014年9月にはじめたので、もうすぐ3年。 1件~17件とばらつき …

Amazon LinuxにAlfresco Community Editionをインストールする

ダウンロード準備 Alfresco公式サイトで、「エンタープライズコンテンツ管理 …

AWS EC2 インスタンスステータスのチェックで失敗 原因はPHP-FPMのOOM-KILLER

先週に引き続きEC2のインスタンスステータスチェックで失敗 再起動するも失敗する …

AWS Lambda KMSを使って環境変数を暗号化、復号化する(Python)

Lambda内で外部APIを使用する場合などをユースケースとして、環境変数をKM …