Fitur sinkronisasi instans lintas akun memungkinkan Anda mereplikasi citra dari suatu instans di satu akun ke instans di akun lain. Fitur ini mendukung sinkronisasi manual maupun otomatis dan tidak terbatas pada wilayah tertentu.
Penerapan
Instans sumber harus berupa instans Edisi Premium. Instans tujuan dapat berupa instans Edisi Basic atau Premium.
Pada Container Registry console, klik Upgrade di pojok kanan bawah kartu instans Enterprise.
Replikasi citra dari wilayah cloud publik ke wilayah non-publik, seperti Alibaba Finance Cloud dan Alibaba Gov Cloud, tidak didukung.
Di beberapa wilayah, hanya tautan sinkronisasi kustom yang didukung karena adanya pembatasan khusus, seperti bucket Object Storage Service (OSS) yang tidak memiliki akses jaringan publik.
Informasi latar belakang
Anda dapat mereplikasi citra antar instans yang dimiliki oleh akun Alibaba Cloud yang berbeda, pengguna Resource Access Management (RAM) yang berbeda, atau antara akun Alibaba Cloud dan pengguna RAM.
Sinkronisasi instans otomatis lintas akun
Anda dapat mengonfigurasi aturan sinkronisasi untuk secara otomatis mereplikasi citra antar instans yang dimiliki oleh akun berbeda. Setelah aturan dikonfigurasi, citra yang diunggah ke instans sumber akan secara otomatis direplikasi ke instans tujuan. Topik ini memberikan contoh di mana instans sumber dimiliki oleh Akun A dan instans tujuan dimiliki oleh Akun B.
Replikasi otomatis lintas akun hanya berlaku untuk citra yang sesuai dengan aturan dan diunggah setelah aturan sinkronisasi dibuat. Citra yang sudah ada sebelumnya tidak direplikasi.
Dua solusi tersedia untuk mereplikasi citra yang sudah ada:
Jika jumlah citra yang sudah ada sedikit, Anda dapat mereplikasinya secara manual. Untuk informasi selengkapnya, lihat Replikasi citra lintas akun secara manual dan CreateRepoSyncTask.
Jika jumlah citra yang sudah ada banyak, Anda dapat menggunakan solusi OSS replication + ACR image import:
Salin semua file dari bucket OSS instans sumber ke bucket OSS instans ACR tujuan. Untuk informasi selengkapnya, lihat Data replication.
Buat aturan impor, tetapkan sumber migrasi ke bucket OSS, lalu mulai tugas impor citra untuk memigrasikan citra tersebut.
Persiapan
Sebelum melakukan replikasi citra lintas akun secara otomatis, Anda harus memperoleh informasi berikut:
UID Akun A dan Akun B.
CatatanJika Anda menggunakan pengguna RAM, peroleh UID akun Alibaba Cloud tempat pengguna RAM tersebut terdaftar.
Wilayah dan ID instans tujuan.
Masuk ke Container Registry console. Di bagian atas halaman Instances, pilih wilayah dan klik instans Enterprise yang dituju. Pada halaman Overview, Anda dapat melihat Region instans tersebut dan menemukan Instance ID di bagian Instance Information.
Replikasi citra otomatis lintas akun didukung pada level namespace dan repository:
Untuk sinkronisasi pada level namespace, instans sumber dan tujuan harus memiliki namespace dengan nama yang sama. Pembuatan repository otomatis juga harus diaktifkan untuk namespace di instans tujuan. Untuk informasi selengkapnya tentang cara mengaktifkan pembuatan repository otomatis, lihat Create a namespace.
Untuk sinkronisasi pada level repository, instans sumber dan tujuan harus memiliki repository citra dan namespace dengan nama yang sama.
Langkah 1: Berikan izin kepada Akun A dari Akun B
Masuk dengan Akun B dan berikan izin kepada Akun A. Hal ini memungkinkan Akun A untuk menyinkronkan citra ke instans milik Akun B.
Buat peran RAM bernama aliyuncontainerregistrycrossaccoutsyncrole.
CatatanNama peran harus aliyuncontainerregistrycrossaccoutsyncrole.
Masuk ke Resource Access Management (RAM) console dengan Akun B.
Di panel navigasi sebelah kiri, pilih . Pada halaman yang muncul, klik Create Role.
Pada halaman Create Role, atur parameter Principal Type ke Cloud Account, tentukan akun Alibaba Cloud, lalu klik OK.
Pada kotak dialog yang muncul, masukkan aliyuncontainerregistrycrossaccoutsyncrole sebagai nama peran, lalu klik OK.
Buat kebijakan akses.
Di panel navigasi sebelah kiri Konsol RAM, pilih , lalu klik Create Policy.
Pada halaman Create Policy, klik tab JSON. Ganti nilai bidang
Resourcedalam konten kebijakan berikut sesuai kebutuhan. Kemudian, salin konten yang telah dimodifikasi ke editor kebijakan dan klik Next: Edit Basic Information. Pada dialog Create Policy, masukkan Policy Name dan Note.CatatanResource: Menentukan resource yang akan diberikan izin. Gunakan format berikut:
acs:cr:<Wilayah instans tujuan di Akun B>:<UID Akun B>:instance/<ID instans tujuan di Akun B>.Jika Akun B adalah pengguna RAM, untuk parameter
UID Akun Bpada bidangResource, masukkan UID akun Alibaba Cloud tempat pengguna RAM tersebut terdaftar.{ "Statement": [ { "Effect": "Allow", "Action": [ "cr:CreateSyncRule", "cr:CreateRepositorySync" ], "Resource": "acs:cr:cn-beijing:151356101970****:instance/cri-4im1o411ls8g****" }, { "Effect": "Allow", "Action": [ "cr:CreateSyncRule", "cr:CreateRepositorySync" ], "Resource": "acs:cr:cn-hangzhou:151356101970****:instance/cri-4im1o411ls8gxr****" } ], "Version": "1" }
Lampirkan kebijakan akses ke peran aliyuncontainerregistrycrossaccoutsyncrole.
Pada halaman Policies, temukan kebijakan yang telah Anda buat dan klik namanya.
Klik tab References, lalu klik Add Authorization.
Pada panel Add Permissions, atur Authorized Scope ke Account Level, atur Principal ke aliyuncontainerregistrycrossaccoutsyncrole, lalu klik OK.
Klik Close.
Ubah kebijakan kepercayaan peran aliyuncontainerregistrycrossaccoutsyncrole.
Di panel navigasi sebelah kiri Konsol RAM, pilih .
Pada halaman Roles, temukan dan klik aliyuncontainerregistrycrossaccoutsyncrole.
Klik tab Trust Policy, lalu klik Edit Trust Policy.
Ganti nilai bidang
Servicedalam konten kebijakan sesuai kebutuhan, salin konten yang telah dimodifikasi ke editor, lalu klik Save Trust Policy.CatatanService: Menentukan pihak yang berwenang yang dapat mengasumsikan peran tersebut. Gunakan format berikut:
<UID Akun A>@cr.aliyuncs.com.Jika Akun A adalah pengguna RAM, untuk parameter
UID Akun Apada bidangService, masukkan UID akun Alibaba Cloud tempat pengguna RAM tersebut terdaftar.{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "125287961064****@cr.aliyuncs.com" ] } } ], "Version": "1" }
Langkah 2: Buat aturan sinkronisasi di Akun A
Masuk ke Container Registry console dengan Akun A.
Di bilah navigasi atas, pilih wilayah.
Di panel navigasi sebelah kiri, klik Instances.
Pada halaman Instances, klik instans Edisi Enterprise yang ingin Anda kelola.
Pada halaman pengelolaan instans Edisi Enterprise, di panel navigasi sebelah kiri, buka . Pada halaman yang muncul, klik Create Rule.
Pada dialog Create Rule, pada langkah Instance Information, atur parameter yang diperlukan lalu klik Next.
Parameter
Deskripsi
Rule Name
Masukkan nama untuk aturan sinkronisasi.
Sync Scenario
Atur Sync Scenario ke Cross-account.
Destination UID
Masukkan UID akun tempat instans tujuan berada.
Destination Instance
Pilih wilayah instans tujuan dan masukkan ID instans.
Pada langkah Sync Information, atur Sync Level ke namespace atau repository. Lalu, pilih namespace atau repository yang diinginkan, atur aturan penyaringan untuk versi citra, dan klik Create Sync Rule.
Pada halaman pengelolaan instans Enterprise, pilih . Pada halaman Sync Records, status tugas sinkronisasi adalah Successful. Citra tersebut juga tersedia di instans tujuan. Hal ini menunjukkan bahwa sinkronisasi instans lintas akun otomatis berhasil.
Replikasi citra lintas akun secara manual
Anda dapat mendorong citra secara manual dari instans sumber ke instans tujuan yang dimiliki oleh akun lain. Topik ini memberikan contoh di mana instans sumber dimiliki oleh Akun A dan instans tujuan dimiliki oleh Akun B.
Peroleh UID Akun A dan Akun B, serta wilayah dan ID instans tujuan. Untuk informasi selengkapnya, lihat bagian Persiapan dalam topik ini.
Masuk dengan Akun B dan berikan izin kepada Akun A. Hal ini memungkinkan Akun A untuk menyinkronkan citra ke instans milik Akun B. Untuk informasi selengkapnya, lihat Langkah 1 dalam topik ini.
Masuk ke Container Registry console.
Di bilah navigasi atas, pilih wilayah.
Di panel navigasi sebelah kiri, klik Instances.
Pada halaman Instances, klik instans Edisi Enterprise yang ingin Anda kelola.
Di panel navigasi sebelah kiri halaman pengelolaan instans Edisi Enterprise, pilih .
Pada halaman Image Repositories, klik nama repository citra yang dituju.
Pada halaman detail repository, klik Image Versions di panel navigasi sebelah kiri. Temukan citra yang dituju lalu klik Sync di kolom Actions.
Pada dialog Image Sync, atur Sync Scenario ke Cross-account. Masukkan UID akun tujuan, ID instans tujuan, namespace tujuan, nama repository tujuan, dan versi citra. Lalu, klik OK.
Pada halaman pengelolaan instans Enterprise, pilih . Pada halaman Sync Records, status tugas sinkronisasi adalah Successful, dan citra tersebut tersedia di instans tujuan. Hal ini menunjukkan bahwa sinkronisasi instans lintas akun secara manual berhasil.
Referensi
Untuk menyinkronkan citra ke wilayah lain dalam akun yang sama, lihat Sinkronisasi citra dalam akun yang sama. Operasi ini tidak memerlukan otorisasi akun.