Jika instans Alibaba Cloud Elasticsearch Anda menggunakan arsitektur kontrol cloud-native baru (v3), Anda dapat memigrasikan data dari kluster Elasticsearch yang dikelola sendiri yang di-host pada instans Elastic Computing Service (ECS). Topik ini menjelaskan cara menggunakan metode reindex untuk memigrasikan data melalui koneksi pribadi, mencakup pembuatan indeks dan migrasi data.
Prasyarat
Kluster Elasticsearch yang dikelola sendiri harus memenuhi persyaratan berikut:
Instans ECS yang meng-host kluster tersebut harus berada dalam virtual private cloud (VPC). ClassicLink tidak didukung. Instans ECS dan instans Alibaba Cloud Elasticsearch harus berada dalam VPC yang sama.
Security group instans ECS harus mengizinkan akses dari semua alamat IP node instans Alibaba Cloud Elasticsearch. Anda dapat menemukan alamat IP node tersebut di Konsol Kibana. Port 9200 juga harus terbuka.
Koneksi telah dibuat dengan instans Alibaba Cloud Elasticsearch. Anda dapat menjalankan perintah
curl -XGET http://<host>:9200dari mesin tempat Anda menjalankan skrip untuk memverifikasi koneksi.CatatanAnda dapat menjalankan skrip dalam topik ini dari mesin mana pun, asalkan mesin tersebut dapat mengakses port 9200 baik dari kluster Elasticsearch yang dikelola sendiri maupun dari kluster Alibaba Cloud Elasticsearch.
Persiapkan data indeks di kluster Elasticsearch yang dikelola sendiri. Topik ini menggunakan indeks `source` yang ditampilkan pada gambar berikut sebagai contoh.

Instans Alibaba Cloud Elasticsearch harus memenuhi persyaratan berikut:
Aktifkan fitur pembuatan indeks otomatis terlebih dahulu. Atau, Anda dapat membuat
mappingsdansettingsindeks pada instans Alibaba Cloud Elasticsearch.Tidak ada konfigurasi pembatasan daftar putih.
Batasan
Alibaba Cloud ES menyediakan dua mode penyebaran: arsitektur kontrol dasar (v2) dan arsitektur kontrol cloud-native baru (v3). Anda dapat memeriksa mode penyebaran di bagian Informasi Dasar instans.

Untuk kluster yang menggunakan arsitektur kontrol cloud-native baru (v3), Anda harus menggunakan PrivateLink untuk membuat koneksi pribadi ke kluster Alibaba Cloud ES guna melakukan operasi reindex lintas kluster. Pilih solusi dari tabel berikut berdasarkan skenario bisnis Anda.
Skenario | Arsitektur jaringan kluster ES | Solusi |
Migrasi data antar kluster Alibaba Cloud ES | Kedua kluster ES menggunakan arsitektur kontrol dasar (v2). | Metode reindex: Reindex lintas kluster antar kluster Alibaba Cloud ES. |
Salah satu kluster ES menggunakan arsitektur kontrol cloud-native baru (v3). Catatan Kluster ES lainnya dapat menggunakan arsitektur kontrol cloud-native baru (v3) atau arsitektur kontrol dasar (v2). | ||
Migrasi data dari kluster ES yang dikelola sendiri pada instans ECS ke kluster Alibaba Cloud ES | Kluster Alibaba Cloud ES menggunakan arsitektur kontrol dasar (v2). | Metode reindex: Migrasi data dari kluster Elasticsearch yang dikelola sendiri ke Alibaba Cloud Elasticsearch menggunakan reindex. |
Kluster Alibaba Cloud ES menggunakan arsitektur kontrol cloud-native baru (v3). | Metode reindex: Migrasi data dari kluster Elasticsearch yang dikelola sendiri ke Alibaba Cloud dengan membuat koneksi pribadi ke instans. |
Prosedur
Langkah 1: Konfigurasikan instans SLB yang mendukung PrivateLink
Saat ini, hanya instans Server Load Balancer (SLB) yang mendukung PrivateLink yang dapat digunakan sebagai sumber daya layanan untuk layanan titik akhir. Sebelum menggunakan PrivateLink untuk mengakses layanan secara pribadi antar VPC, Anda harus membuat instans SLB yang mendukung PrivateLink dan mengonfigurasi pendengarnya.
Langkah 2: Buat layanan titik akhir
Layanan titik akhir memungkinkan VPC lain membuat koneksi pribadi dengan membuat titik akhir. Setelah mengonfigurasi instans SLB, Anda harus membuat layanan titik akhir.
Langkah 3: Konfigurasikan peering jaringan pribadi untuk Alibaba Cloud Elasticsearch
Di Konsol Elasticsearch, Anda dapat mengaitkan instans Alibaba Cloud Elasticsearch dengan layanan titik akhir yang dibuat di Langkah 2.
Langkah 4: Dapatkan nama domain titik akhir
Setelah instans target dikaitkan dengan layanan titik akhir, Anda harus mendapatkan nama domain titik akhir tersebut. Nama domain ini akan digunakan untuk mengonfigurasi daftar putih reindex.
Langkah 5: Konfigurasikan daftar putih reindex
Di Konsol Elasticsearch, tambahkan nama domain yang diperoleh di Langkah 4 ke daftar putih reindex instans target untuk otorisasi.
Setelah menyelesaikan langkah-langkah ini, koneksi pribadi telah dibuat antara instans sumber dan target. Anda sekarang dapat memigrasikan data.
Langkah 1: Konfigurasikan instans SLB yang mendukung PrivateLink
Buat instans SLB.
Pastikan instans SLB berada dalam wilayah yang sama dengan instans Elastic Computing Service (ECS) backend. Untuk informasi selengkapnya, lihat Buat instans SLB yang mendukung PrivateLink.
Konfigurasikan Protocol & Listener dengan mengatur protokol load balancing ke TCP dan port ke 9200.

Untuk informasi selengkapnya, lihat Konfigurasi protokol dan pendengar.
Klik Next. Konfigurasikan grup server backend dengan menambahkan instans ECS yang meng-host kluster ES yang dikelola sendiri dan mengatur port ke 9200.
Untuk informasi selengkapnya, lihat Konfigurasi server backend.
Klik Next. Di bagian Configure the Health Check, konfigurasikan pengaturan sesuai kebutuhan. Topik ini menggunakan pengaturan default.
Klik Next. Tinjau konfigurasi dan klik Submit. Klik OK. Kembali ke halaman Instance Management dan periksa status pemeriksaan kesehatan instans ECS backend.
Jika status pemeriksaan kesehatan instans ECS backend adalah Normal, instans tersebut dapat memproses permintaan yang diteruskan oleh instans SLB.
Langkah 2: Buat layanan titik akhir
Di bilah menu atas, pilih wilayah tempat Anda ingin membuat layanan titik akhir.
Contoh dalam topik ini menggunakan wilayah China (Hangzhou).
Klik Create Endpoint Service. Di halaman Create Endpoint Service, konfigurasikan layanan titik akhir sesuai kebutuhan Anda.
Untuk operasi spesifik dan petunjuk terperinci, lihat Buat dan kelola layanan titik akhir. Tabel berikut menjelaskan konfigurasi yang digunakan dalam topik ini. Untuk parameter yang tidak disebutkan, Anda dapat mengonfigurasinya sesuai kebutuhan atau menggunakan nilai default.
Parameter
Deskripsi
Select Service Resource
Pilih zona untuk menangani traffic. Lalu, pilih instans SLB untuk dikaitkan dengan layanan titik akhir.
Instans SLB bertindak sebagai sumber daya layanan dan dikaitkan dengan layanan titik akhir. Instans SLB yang dikaitkan menerima akses jaringan dari pengguna layanan Anda. Zona layanan titik akhir sama dengan zona utama sumber daya layanan.
Instans SLB hanya dapat digunakan sebagai sumber daya layanan jika memenuhi dua kondisi:
Jenis jaringan adalah VPC.
Fitur tersebut adalah Supports PrivateLink.
Automatically Accept Endpoint Connections
Pilih apakah akan secara otomatis menerima permintaan koneksi dari titik akhir. Kami merekomendasikan Anda memilih Yes. Nilai-nilai tersebut dijelaskan sebagai berikut:
Yes: Layanan titik akhir secara otomatis menerima permintaan koneksi dari titik akhir. Layanan dapat diakses melalui titik akhir tersebut.
No: Koneksi titik akhir akan berada dalam status Disconnected, menunggu administrator layanan memprosesnya:
Jika administrator layanan menerima koneksi titik akhir, layanan dapat diakses melalui titik akhir tersebut.
Jika administrator layanan menolak koneksi titik akhir, layanan tidak dapat diakses melalui titik akhir tersebut.
Enable Zone Affinity
Pilih apakah akan mengaktifkan afinitas zona. Kami merekomendasikan Anda memilih Yes.
Klik Create.
Langkah 3: Konfigurasikan peering jaringan pribadi untuk Alibaba Cloud Elasticsearch
Login ke Konsol Alibaba Cloud Elasticsearch.
Di panel navigasi kiri, klik Elasticsearch Clusters.
Navigasi ke kluster yang diinginkan.
Di bilah navigasi atas, pilih kelompok sumber daya tempat kluster tersebut berada dan wilayah tempat kluster tersebut berlokasi.
Di halaman Elasticsearch Clusters, temukan kluster tersebut dan klik ID-nya.
Di panel navigasi kiri, pilih .
Di bagian Network Settings, klik Modify di sebelah kanan Configure Private Connection.
Di panel Configure Private Connection, klik Add Private Connection. Pilih layanan titik akhir yang dibuat di Langkah 2 dan zona akses target. Lalu, centang kotak centang untuk prompt sistem.

Klik OK. Layanan titik akhir kemudian terhubung ke titik akhir. Setelah koneksi dibuat, statusnya berubah menjadi Connected.

Langkah 4: Dapatkan nama domain titik akhir
Setelah menyelesaikan langkah-langkah sebelumnya, Anda harus mendapatkan nama domain titik akhir untuk mengonfigurasi daftar putih reindex.
Di panel Configure Private Connection, klik Endpoint ID yang diinginkan.

Di tab Endpoint Connections, klik ikon
di sebelah ID titik akhir target untuk melihat nama domain yang sesuai.
Langkah 5: Konfigurasikan daftar putih reindex
Operasi ini akan me-restart kluster. Kami merekomendasikan Anda melakukan operasi ini selama jam sepi.
Login ke Konsol Alibaba Cloud Elasticsearch.
Di panel navigasi kiri, klik Elasticsearch Clusters.
Navigasi ke kluster yang diinginkan.
Di bilah navigasi atas, pilih kelompok sumber daya tempat kluster tersebut berada dan wilayah tempat kluster tersebut berlokasi.
Di halaman Elasticsearch Clusters, temukan kluster tersebut dan klik ID-nya.
Di panel navigasi kiri, pilih .
Di bagian YML File Configuration, klik Modify Configuration di sebelah kanan.
Di panel YML File Configuration, klik Modify Configuration dan tambahkan nama domain yang diperoleh di Langkah 4.
Kode contoh:
reindex.remote.whitelist: 'ep-bp1nitq0krp8yhcf****-cn-hangzhou-i.epsrv-bp1zczi0fgoc5qtv****.cn-hangzhou.privatelink.aliyuncs.com:9200'
Klik OK.
Langkah 6: Migrasi data
Di Dev Tools pada konsol Kibana, jalankan perintah berikut untuk memigrasikan data.
CatatanUntuk informasi selengkapnya tentang cara login ke konsol Kibana, lihat Login ke konsol Kibana.
POST /_reindex?pretty { "source": { "remote": { "host": "http://ep-bp1nitq0krp8yhcf****-cn-hangzhou-i.epsrv-bp1zczi0fgoc5qtv****.cn-hangzhou.privatelink.aliyuncs.com:9200", "username": "elastic", "password": "Elastic@123***" }, "index": "source", "size": 5000 }, "dest": { "index": "dest" } }Untuk informasi selengkapnya, lihat reindex API.
Opsional: Selama migrasi data, Anda dapat menjalankan perintah berikut untuk mendapatkan status semua permintaan reindex yang sedang berjalan.
GET _tasks?detailed=true&actions=*reindexLihat hasil migrasi data.
Setelah migrasi data selesai, Anda dapat menjalankan perintah berikut untuk melihat hasilnya.
GET _cat/indices?Jika status kesehatan indeks target `dest` normal dan ukuran datanya sesuai harapan, migrasi data berhasil.

FAQ
Pertanyaan: Apa yang harus saya lakukan jika satu indeks memiliki volume data besar dan sinkronisasi data lambat?
Solusi:
Fitur reindex diimplementasikan menggunakan metode scroll. Anda dapat meningkatkan ukuran scroll atau mengonfigurasi scroll slices untuk meningkatkan efisiensi melalui pemrosesan paralel. Untuk informasi selengkapnya, lihat reindex API.
Jika volume data sumber besar, kami merekomendasikan Anda menggunakan metode snapshot Object Storage Service (OSS). Untuk informasi selengkapnya, lihat Tingkat Lanjut: Migrasi kluster ES yang dikelola sendiri ke Alibaba Cloud ES menggunakan OSS.
Jika satu indeks memiliki volume data besar, Anda dapat mengatur jumlah replika untuk indeks target menjadi 0 dan interval refresh menjadi -1 sebelum migrasi. Hal ini dapat mempercepat sinkronisasi data. Setelah migrasi data selesai, Anda harus mengembalikan pengaturan ini ke nilai semula.
// Sebelum memigrasikan data indeks, atur jumlah replika menjadi 0 dan nonaktifkan refresh untuk mempercepat migrasi. curl -u user:password -XPUT 'http://<host:port>/indexName/_settings' -d' { "number_of_replicas" : 0, "refresh_interval" : "-1" }' // Setelah memigrasikan data indeks, atur ulang jumlah replika menjadi 1 dan interval refresh menjadi 1s (nilai default). curl -u user:password -XPUT 'http://<host:port>/indexName/_settings' -d' { "number_of_replicas" : 1, "refresh_interval" : "1s" }'