プライベートイメージのレプリケーション
Amazon ECR はレジストリ設定を使用してレジストリレベルでプライベートイメージのレプリケーションを構成します。Amazon ECR プライベートレジストリは、クロスリージョンまたはクロスアカウントのレプリケーション用に設定できます。レプリケーションは、各リージョンのプライベートレジストリごとに個別に構成されます。ここでは、サポートされているレプリケーション方法について詳しく説明します。
- クロスリージョンレプリケーション
-
レジストリのクロスリージョンレプリケーションを有効にすると、1 つ以上のターゲットリージョンにリポジトリのコピーが作成されます。コピーされるのは、クロスリージョンレプリケーションの設定後にリポジトリにプッシュされたイメージのみです。
- クロスアカウントレプリケーション
-
レジストリのクロスリージョンレプリケーションを有効にすると、指定したターゲットアカウントとリージョンにリポジトリのコピーが作成されます。クロスアカウントレプリケーションを実行するには、ターゲットアカウントで、レジストリからのレプリケーションを許可するレジストリのアクセス許可ポリシーを設定する必要があります。詳細については、「プライベートレジストリの許可」を参照してください。
プライベートイメージのレプリケーションに関する考慮事項
プライベートイメージのレプリケーションを使用する際には、以下の点を考慮する必要があります。
-
レプリケーション用にプライベートレジストリを初めて設定すると、Amazon ECR は、お客様に代わってサービスにリンクされた IAM ロールを作成します。サービスにリンクされた IAM ロールは、レジストリでレポジトリの作成とイメージのレプリケートを行うために必要なアクセス許可を Amazon ECR レプリケーションサービスに付与します。詳細については、「Amazon ECR でのサービスにリンクされたロールの使用」を参照してください。
-
クロスアカウントレプリケーションを実行するには、プライベートレジストリのレプリケート先が、ソースレジストリによるそのイメージのレプリケートを許可する必要があります。これは、プライベートレジストリの許可ポリシーを設定することによって許可できます。詳細については、「プライベートレジストリの許可」を参照してください。
-
プライベートレジストリの許可ポリシーが許可を取り消すように変更された場合でも、以前に許可された進行中のレプリケーションは完了することができます。
-
そのリージョン内でレプリケーションアクションが発生する前、またはそのリージョンに対してレプリケーションアクションが発生する前に、アカウントに対してリージョンを有効にする必要があります。詳細については、アマゾン ウェブ サービス全般のリファレンスの「AWS リージョンの管理」を参照してください。
-
クロスリージョンレプリケーションは、AWS パーティションの間ではサポートされていません。たとえば、
us-west-2
のリポジトリはcn-north-1
にレプリケートできません。AWS パーティションについて詳しくは、AWS 全般のリファレンスの ARN 形式を参照してください。 -
プライベートレジストリのレプリケーション設定には、すべてのルール (合計で最大 10 個) 全体で最大 25 個の一意のレプリケート先を含めることができます。各ルールには、最大 100 個のフィルターを含めることができます。これは、例えば本番環境やテスト用に使用されるイメージが含まれるリポジトリに対して個別のルールを指定することを可能にします。
-
レプリケーション設定は、リポジトリプレフィックスを指定することによって、プライベートレジストリ内のレプリケートされるリポジトリのフィルタリングをサポートします。例については、「例: リポジトリフィルターを使用したクロスリージョンレプリケーションの設定」を参照してください。
-
レプリケーションアクションは、イメージプッシュごとに 1 回のみ実行されます。たとえば、
us-west-2
からus-east-1
およびus-east-1
からus-east-2
へのクロスリージョンレプリケーションを設定した場合、us-west-2
にプッシュされたイメージはus-east-1
にのみレプリケートされ、us-east-2
には再度レプリk-トされません。この動作は、クロスリージョンおよびクロスアカウントのレプリケーションの両方に適用されます。 -
大部分のイメージは 30 分以内にレプリケートされますが、まれにレプリケーションに時間がかかることがあります。
-
レジストリレプリケーションでは、削除アクションは実行されません。レプリケートされたイメージとリポジトリは、使用しなくなったときに手動で削除できます。
-
IAM ポリシーやライフサイクルポリシーなどのリポジトリポリシーはレプリケートされず、定義されているリポジトリ以外には影響しません。
-
リポジトリ設定はレプリケートされません。タグのイミュータブル性、イメージスキャニング、および KMS 暗号化の設定は、レプリケーションアクションに起因して作成されたすべてのリポジトリでデフォルトで無効になっています。タグのイミュータブル性とイメージスキャニングの設定は、リポジトリの作成後に変更できます。ただし、この設定は、設定が変更された後にプッシュされたイメージにのみ適用されます。
-
リポジトリでタグのイミュータブル性が有効で、既存のイメージと同じタグを使用するイメージをレプリケートする場合、イメージはレプリケートされますが、重複したタグは含まれません。その結果、イメージのタグ付けが解除される可能性があります。