Jika instans Alibaba Cloud Elasticsearch Anda menggunakan mode penyebaran cloud-native (v3), Anda dapat memigrasikan data dari kluster Elasticsearch yang dikelola sendiri pada instans ECS dengan membuat koneksi jaringan pribadi dan menggunakan fitur reindex.
Prasyarat
-
Kluster Elasticsearch yang dikelola sendiri harus memenuhi persyaratan berikut:
-
Kluster tersebut harus di-host pada instans ECS dalam VPC yang sama dengan instans Alibaba Cloud Elasticsearch Anda. Koneksi yang dibuat menggunakan ClassicLink tidak didukung.
-
Security group instans ECS harus mengizinkan akses dari semua alamat IP node instans Alibaba Cloud Elasticsearch Anda melalui port 9200. Anda dapat menemukan alamat IP node tersebut di Konsol Kibana.
-
Anda harus dapat terhubung ke instans Alibaba Cloud Elasticsearch. Anda dapat memverifikasi koneksi dengan menjalankan perintah
curl -XGET http://<host>:9200pada mesin.CatatanAnda dapat menjalankan skrip dalam panduan ini dari mesin apa pun yang dapat mengakses baik kluster Elasticsearch yang dikelola sendiri maupun instans Alibaba Cloud Elasticsearch melalui port 9200.
-
Data indeks sumber telah siap di kluster Elasticsearch yang dikelola sendiri Anda. Panduan ini menggunakan indeks bernama
sourcesebagai contoh.[root@elasticsearch1 ~]# curl -XGET http://172.16.xxx.xxx:9200/_cat/indices?v health status index uuid pri rep docs.count docs.deleted store.size pri.store.size green open source lGFcaUIgT1-Nsj9b_EezAQ 1 1 6 0 28.2kb 19.1kb green open dest Kn3Tu9TmT62J4ouMHi_37w 1 1 6 0 23.3kb 9.1kb [root@elasticsearch1 ~]#
-
-
Instans Alibaba Cloud Elasticsearch Anda harus memenuhi persyaratan berikut:
-
Aktifkan fitur pembuatan indeks otomatis terlebih dahulu atau buat
mappingsdansettingspada Alibaba Cloud Elasticsearch. -
Pastikan tidak ada pembatasan daftar putih yang dikonfigurasi.
-
Batasan
Alibaba Cloud ES menyediakan dua mode penyebaran: arsitektur manajemen dasar (v2) dan arsitektur manajemen baru cloud-native (v3). Anda dapat mengidentifikasi mode penyebaran instans Anda di bagian Informasi Dasar.

Untuk kluster yang menggunakan arsitektur manajemen baru cloud-native (v3), pengindeksan ulang lintas kluster memerlukan PrivateLink untuk membuat koneksi peering jaringan pribadi. Rujuk tabel berikut dan pilih solusi berdasarkan skenario bisnis Anda.
|
Skenario |
Arsitektur jaringan kluster ES |
Solusi |
|
Migrasi data antar kluster Alibaba Cloud ES |
Kedua kluster ES dibuat dengan arsitektur manajemen dasar (v2). |
API reindex. Untuk informasi selengkapnya, lihat Gunakan API reindex untuk memigrasikan data antar kluster Alibaba Cloud ES. |
|
Salah satu kluster ES dibuat dengan arsitektur manajemen baru cloud-native (v3). Catatan
Kluster ES lainnya dapat dibuat dengan arsitektur manajemen baru cloud-native (v3) atau arsitektur manajemen dasar (v2). |
|
|
|
Migrasikan data dari kluster ES yang dikelola sendiri pada instans ECS ke kluster Alibaba Cloud ES |
Kluster Alibaba Cloud ES dibuat dengan arsitektur manajemen dasar (v2). |
API reindex. Untuk informasi selengkapnya, lihat Migrasikan data dari kluster Elasticsearch yang dikelola sendiri ke Alibaba Cloud Elasticsearch menggunakan reindex. |
|
Kluster Alibaba Cloud ES dibuat dengan arsitektur manajemen baru cloud-native (v3). |
API reindex. Untuk informasi selengkapnya, lihat Migrasikan data Elasticsearch yang dikelola sendiri melalui koneksi pribadi. |
Prosedur
-
Langkah 1: Konfigurasikan instans SLB yang mendukung PrivateLink
Anda hanya dapat menggunakan instans SLB yang mendukung PrivateLink sebagai sumber daya layanan untuk layanan titik akhir. Sebelum dapat membuat koneksi pribadi antar VPC menggunakan PrivateLink, Anda harus membuat instans SLB yang mendukung PrivateLink dan mengonfigurasi pendengar.
-
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 koneksi pribadi untuk Alibaba Cloud Elasticsearch
Di Konsol Alibaba Cloud Elasticsearch, asosiasikan instans Alibaba Cloud Elasticsearch Anda dengan layanan titik akhir yang Anda buat di Langkah 2.
-
Langkah 4: Dapatkan nama domain titik akhir
Setelah instans target diasosiasikan dengan layanan titik akhir, Anda dapat memperoleh nama domain titik akhir untuk mengonfigurasi daftar putih reindex.
-
Langkah 5: Konfigurasikan daftar putih reindex
Di Konsol Alibaba Cloud Elasticsearch, tambahkan nama domain yang Anda peroleh di Langkah 4 ke daftar putih reindex instans target untuk memberikan akses.
-
Setelah menyelesaikan langkah-langkah sebelumnya, koneksi jaringan antara instans sumber dan target telah terbentuk, dan Anda dapat memulai migrasi data.
Langkah 1: Konfigurasikan instans SLB untuk PrivateLink
-
Buat instans SLB.
Pastikan instans SLB berada di wilayah yang sama dengan instans ECS yang ditambahkan sebagai server backend. Untuk informasi selengkapnya, lihat Buat instans SLB yang mendukung PrivateLink.
-
Konfigurasikan Protocol and listener. Atur protokol ke TCP dan port ke 9200.
Pada daftar instans SLB, temukan instans target dan klik Create Listener di kolom Actions.
Untuk informasi selengkapnya, lihat Tambahkan pendengar TCP.
-
Klik Next step. Konfigurasikan grup server backend dengan menambahkan instans ECS yang meng-host kluster Elasticsearch yang dikelola sendiri, dan atur port ke 9200.
Untuk informasi selengkapnya, lihat Konfigurasikan server backend.
-
Klik Next step dan konfigurasikan Configure Health Check sesuai kebutuhan. Panduan ini menggunakan pengaturan default.
-
Klik Next step. Tinjau konfigurasi Anda, klik Submit, konfirmasi detail konfigurasi, lalu klik I Understand. Anda akan dikembalikan ke halaman Manage Cluster, tempat Anda dapat memeriksa status pemeriksaan kesehatan instans ECS backend.
Status Normal berarti instans ECS backend dapat memproses permintaan yang diteruskan oleh instans SLB.
Langkah 2: Buat layanan titik akhir
-
Di bilah navigasi atas, pilih wilayah tempat Anda ingin membuat layanan titik akhir.
Panduan ini menggunakan China (Hangzhou) sebagai contoh.
-
Klik Create Endpoint Service. Pada halaman Create Endpoint Service, konfigurasikan parameter sesuai kebutuhan.
Untuk petunjuk detail, lihat Buat dan kelola layanan titik akhir. Di bagian Service resource, atur Resource type ke Classic Load Balancer (CLB). Panduan ini menggunakan konfigurasi utama berikut. Untuk parameter lainnya, gunakan nilai default atau konfigurasikan sesuai kebutuhan.
Parameter
Deskripsi
Select service resource
Pilih zona ketersediaan yang membawa traffic, lalu pilih instans SLB untuk diasosiasikan dengan layanan titik akhir.
Instans SLB yang diasosiasikan menerima network traffic dari pengguna layanan Anda. Zona ketersediaan layanan titik akhir sama dengan zona ketersediaan utama sumber daya layanan.
Instans SLB hanya dapat digunakan sebagai sumber daya layanan jika memenuhi kondisi berikut:
-
Jenis jaringan adalah VPC.
-
PrivateLink didukung.
Automatically Accept Endpoint Connections
Pilih apakah akan secara otomatis menerima permintaan koneksi dari titik akhir. Kami menyarankan Anda memilih Yes. Opsi yang tersedia:
-
Yes: Layanan titik akhir secara otomatis menerima permintaan koneksi. Titik akhir kemudian dapat mengakses layanan.
-
No: Koneksi titik akhir tetap dalam keadaan terputus hingga administrator layanan menangani permintaan:
-
Jika administrator menerima permintaan koneksi, layanan dapat diakses melalui titik akhir.
-
Jika administrator menolak permintaan koneksi, layanan tidak dapat diakses melalui titik akhir.
-
Enable zone affinity
Pilih apakah akan mengaktifkan afinitas zona. Kami menyarankan Anda memilih Yes.
-
-
Klik OK.
Langkah 3: Konfigurasikan koneksi pribadi
Login ke Konsol Alibaba Cloud Elasticsearch.
Di bilah navigasi kiri, pilih Elasticsearch Clusters.
Navigasi ke kluster target.
Di bilah navigasi atas, pilih kelompok sumber daya tempat kluster berada dan wilayah tempat kluster tersebut berada.
Pada halaman Elasticsearch Clusters, temukan kluster dan klik ID-nya.
-
Klik Add Private Connection dan pilih layanan titik akhir yang dibuat pada langkah sebelumnya.
-
Tunggu hingga status koneksi menjadi Connected. Ini berarti VPC kluster ES dan VPC Anda telah terhubung.
-
Di panel Configure Private Connection, klik Add Private Connection. Pilih layanan titik akhir yang Anda buat di Langkah 2 dan zona ketersediaan target, lalu centang kotak centang untuk prompt sistem.
-
Klik OK. Layanan titik akhir secara aktif terhubung ke titik akhir. Setelah koneksi terbentuk, status berubah menjadi Connected.
Langkah 4: Dapatkan nama domain titik akhir
Setelah menyelesaikan langkah-langkah sebelumnya, Anda harus memperoleh nama domain titik akhir untuk mengonfigurasi daftar putih reindex.
-
Di panel Configure Private Connection, klik Endpoint ID target.
-
Di tab Endpoint connections, klik ikon perluas (
) di samping Endpoint ID target untuk melihat nama domain yang sesuai dari titik akhir tersebut.Setelah diperluas, Anda dapat menemukan nama domain PrivateLink di bidang Domain Name. Formatnya adalah:
ep-{endpoint ID}-{availability zone}.epsrv-{service ID}.{region}.privatelink.aliyuncs.com
Langkah 5: Konfigurasikan daftar putih reindex
Operasi ini akan merestart kluster. Kami menyarankan Anda melakukan operasi ini pada jam sepi.
Login ke Konsol Alibaba Cloud Elasticsearch.
Di bilah navigasi kiri, pilih Elasticsearch Clusters.
Navigasi ke kluster target.
Di bilah navigasi atas, pilih kelompok sumber daya tempat kluster berada dan wilayah tempat kluster tersebut berada.
Pada halaman Elasticsearch Clusters, temukan kluster dan klik ID-nya.
-
Di bilah 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 Anda peroleh di Langkah 4.
Contoh:
reindex.remote.whitelist: 'ep-bp1nitq0krp8yhcf****-cn-hangzhou-i.epsrv-bp1zczi0fgoc5qtv****.cn-hangzhou.privatelink.aliyuncs.com:9200' -
Klik OK.
Langkah 6: Migrasikan data
-
Di Dev Tools Konsol Kibana, jalankan perintah berikut untuk memigrasikan data.
CatatanUntuk informasi 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" } }Jika Konsol Kibana tidak tersedia, Anda juga dapat menjalankan perintah cURL pada mesin yang dapat mengakses instans Alibaba Cloud Elasticsearch Anda untuk melakukan operasi reindex:
curl -u <username>:<password> -XPOST "http://<Alibaba Cloud Elasticsearch domain name>:9200/_reindex?pretty" -H "Content-Type: application/json" -d '{ "source": { "remote": { "host": "http://<endpoint domain name>:9200", "username": "<self-managed Elasticsearch username>", "password": "<self-managed Elasticsearch password>" }, "index": "source", "size": 5000 }, "dest": { "index": "dest" } }'CatatanJika keamanan tidak diaktifkan untuk kluster Elasticsearch yang dikelola sendiri Anda, hapus field
usernamedanpassworddarisource.remote.Untuk informasi selengkapnya, lihat reindex API.
-
Opsi: Untuk memeriksa status tugas reindex yang sedang berjalan, jalankan perintah berikut.
GET _tasks?detailed=true&actions=*reindex -
Verifikasi hasil migrasi.
Setelah migrasi selesai, jalankan perintah berikut untuk memverifikasi hasilnya.
GET _cat/indices?vJika status kesehatan indeks tujuan normal dan ukuran data sesuai harapan, migrasi berhasil. Contoh output:
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size green open .security-7 WzCXGepRRou3e2qE_NXg6g 1 1 55 0 424.1kb 212.1kb green open .monitoring-kibana-7-2021.08.18 G_D3fb8jRfiC72PwmIn-vg 1 1 9560 0 3.1mb 1.5mb green open test RHVpvC30RnO3lE2O2xPx0w 1 1 6 0 29.3kb 9.2kb green open .apm-custom-link Sav0grXzTe2xA1tmgOQOUl 1 1 0 0 522b 261b green open .monitoring-kibana-7-2021.08.19 iF8kyaZCtdSU8z_MIHsj-Q 1 1 2688 1 1.3mb 497.8kb green open .kibana_task_manager_1 ILArbgzRR7KjOQd9SH8BoA 1 1 6 1524 637.3kb 326.7kb green open .apm-agent-configuration VXCcFRjYQU21A_sSPiVGXA 1 1 0 0 522b 261b green open .kibana-event-log-7.10.0-000001 _A3SURUwThakLepdebZt5A 1 1 1 0 11.4kb 5.7kb green open .monitoring-es-7-2021.08.19 RP2xbG60QaqakDvuF972LQ 1 1 28337 34918 37mb 18.4mb green open .kibana_1 o5MX39bZRTeMma4HjT0fog 1 1 22 4 20.8mb 10.4mb green open .monitoring-es-7-2021.08.18 TGyPtE1bTXCaYHq4i7F5nQ 1 1 90546 60040 103.4mb 55.5mb
FAQ
T: Bagaimana cara mempercepat sinkronisasi data untuk indeks besar?
J:
-
Fitur reindex menggunakan scroll API secara internal. Anda dapat meningkatkan ukuran scroll atau mengonfigurasi scroll slicing untuk melakukan operasi secara paralel dan meningkatkan performa. Untuk informasi selengkapnya, lihat reindex API.
-
Jika set data sumber sangat besar, kami menyarankan Anda menggunakan metode snapshot OSS. Untuk informasi selengkapnya, lihat Tingkat Lanjut: Migrasikan kluster Elasticsearch yang dikelola sendiri ke Alibaba Cloud Elasticsearch menggunakan snapshot OSS.
-
Untuk indeks besar, Anda dapat mempercepat sinkronisasi data dengan mengatur jumlah replica indeks tujuan menjadi 0 dan interval refresh menjadi -1 sebelum migrasi. Setelah migrasi selesai, kembalikan pengaturan awal.
// Sebelum memigrasikan data indeks, atur jumlah replica menjadi 0 dan nonaktifkan interval refresh untuk mempercepat migrasi. curl -u user:password -XPUT 'http://<host:port>/indexName/_settings' -d' { "number_of_replicas" : 0, "refresh_interval" : "-1" }' // Setelah data indeks dimigrasikan, atur ulang jumlah replica 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" }'