AWSリソース(EC2/RDS/ElasticCache)を別アカウントに移行
前提条件
移行元AWSアカウント(A)と、移行先AWSアカウント(B)に接続できる状態であること
EC2の移行
※ AMIは同一リージョンでないと共有できないのだけ注意が必要だった
参考
RDSの移行
- Aで移行したいDBのスナップショットを作成
- A -> B でアカウント間プライベート共有
- B側でプライベート共有スナップショットからDB復元
※ パラメータグループが移行はない。目視diffは厳しいのでCLIでごにょごにょ移行した
参考
- DB スナップショットまたは DB クラスタースナップショットの共有 - Amazon Relational Database Service
- [Amazon RDS] スナップショットの共有機能を試してみた | Developers.IO
- AWS CLIでDBパラメータグループをコピーする – サーバーワークスエンジニアブログ
ElasticCacheの移行
- Aで移行したいElastiCacheのバックアップを作成
- Aでエクスポート用のS3 bucketを作成
- Aでエクスポート用のS3 bucketにElastiCacheのバックアップをエクスポート
aws s3 cp --profile A s3://bucketname/cache.rdb --profile B s3://bucketname/
profile使いわけて別アカウントのS3にコピー- BでコピーしたElastiCacheのバックアップからElastiCache復元
※ S3のread権限与えるのを忘れて、いざ復元するときにrestore-failedになりなんで?ってなった
参考
- 発表: Amazon ElastiCache で Redis バックアップおよび復元を実現、クラスターのサイズ変更も可能に | Amazon Web Services ブログ
- バックアップのエクスポート - Amazon ElastiCache
その他
セキュリティグループの移行
前記事で書いたやつでできる