Untuk menggunakan kembali informasi pengguna seperti peran yang ditetapkan kepada pengguna atau informasi visualisasi dari kluster Elasticsearch sumber ke kluster tujuan, Anda dapat membuat snapshot manual untuk mencadangkan informasi tersebut dan memulihkannya ke kluster tujuan.
Prasyarat
Object Storage Service (OSS) telah diaktifkan. Bucket OSS dengan kelas penyimpanan Standar telah dibuat. Untuk informasi lebih lanjut, lihat Aktifkan OSS dan Buat Bucket.
Dua kluster Elasticsearch Alibaba Cloud telah dibuat di wilayah tempat Bucket OSS berada. Satu kluster digunakan sebagai kluster sumber, dan yang lainnya sebagai kluster tujuan. Untuk informasi tentang kompatibilitas antara versi kluster Elasticsearch dalam hal pemulihan data dari snapshot, lihat Kompatibilitas Indeks.
CatatanOperasi untuk memulihkan data dari snapshot yang dibuat untuk kluster Elasticsearch V8.X berbeda dari operasi untuk kluster Elasticsearch V7.X. Topik ini menjelaskan cara memulihkan data dari snapshot yang dibuat untuk kluster Elasticsearch V7.10 ke kluster lain V7.10 serta dari kluster Elasticsearch V8.5 ke kluster lain V8.5.
Untuk informasi mengenai kompatibilitas antar kluster Elasticsearch versi berbeda dalam pemulihan data dari snapshot, lihat Kompatibilitas indeks.
Peringatan
Anda dapat menjalankan kode yang disediakan dalam topik ini di konsol Kibana kluster Elasticsearch Anda.
API _features hanya dapat digunakan untuk mencadangkan dan memulihkan indeks sistem serta aliran data sistem pada kluster Elasticsearch versi 8.0 dan yang lebih baru. Untuk informasi lebih lanjut tentang API _features, lihat Snapshot dan Restore.
Menggunakan kembali informasi pengguna termasuk peran yang ditetapkan kepada pengguna dalam kluster sumber untuk kluster tujuan
Langkah 1: Persiapkan lingkungan
Masuk ke konsol Kibana kluster Elasticsearch sumber. Untuk informasi lebih lanjut, lihat Masuk ke Konsol Kibana.
Buat peran bernama
cj_test_roledan pengguna bernamakaradi kluster Elasticsearch sumber, lalu tetapkan perancj_test_rolekepada pengguna kara. Untuk informasi lebih lanjut, lihat Gunakan Mekanisme RBAC yang Disediakan oleh Elasticsearch X-Pack untuk Mengimplementasikan Kontrol Akses.
Langkah 2: Buat snapshot untuk mencadangkan data di kluster Elasticsearch sumber
Masuk ke konsol Kibana kluster Elasticsearch sumber. Untuk informasi lebih lanjut, lihat Masuk ke Konsol Kibana.
Buat repositori bernama
my_backupdi kluster Elasticsearch sumber.Buat repositori untuk kluster di cloud.
PUT _snapshot/my_backup/ { "type": "oss", "settings": { "endpoint": "http://oss-cn-hangzhou-internal.aliyuncs.com", "access_key_id": "xxxx", "secret_access_key": "xxxxxx", "bucket": "xxxxxx", "compress": true, "chunk_size": "500mb", "base_path": "snapshot/" } }Buat repositori untuk kluster mandiri V8.X. Dalam hal ini, Anda harus menginstal plug-in elasticsearch-repository-oss pada kluster. Untuk informasi lebih lanjut, lihat Instal Plug-in elasticsearch-repository-oss.
CatatanUntuk informasi lebih lanjut tentang plug-in, lihat elasticsearch-repository-oss.
PUT /_snapshot/my_backup { "type": "oss", "settings": { "oss.client.endpoint": "oss-cn-shanghai.aliyuncs.com", "oss.client.access_key_id": "xxx", "oss.client.secret_access_key": "xxx", "oss.client.bucket": "xxxxxx", "oss.client.base_path":"snapshot/", "oss.client.compress": true } }
Parameter
Deskripsi
Titik akhir
Titik akhir internal Bucket OSS. Untuk informasi lebih lanjut tentang cara mendapatkan titik akhir, lihat Wilayah dan titik akhir.
ID AccessKey
ID AccessKey akun Anda. Untuk informasi lebih lanjut tentang cara mendapatkan ID AccessKey, lihat Dapatkan pasangan AccessKey.
secret_access_key
Rahasia AccessKey akun Anda. Untuk informasi lebih lanjut tentang cara mendapatkan Rahasia AccessKey, lihat Dapatkan pasangan AccessKey.
Bucket
Nama Bucket OSS. Untuk informasi lebih lanjut tentang cara mendapatkan nama, lihat Buat bucket.
Kompres
Menentukan apakah akan mengaktifkan fitur kompresi data untuk snapshot. Nilai valid:
true: mengaktifkan fitur kompresi data untuk snapshot. Fitur ini hanya berlaku untuk metadata indeks, termasuk pemetaan dan pengaturan indeks.
false: menonaktifkan fitur kompresi data untuk snapshot. Nilai default adalah false.
Ukuran chunk
Jika Anda ingin mengunggah volume data besar ke Bucket OSS, Anda dapat mengunggah data dalam beberapa bagian. Dalam hal ini, Anda dapat menggunakan parameter ini untuk menetapkan ukuran setiap bagian. Jika ukuran sebuah bagian mencapai nilai parameter ini, data berlebih didistribusikan ke bagian lain.
Jalur dasar
Lokasi awal repositori. Nilai default adalah direktori root. Anda dapat menentukan direktori tempat snapshot tertentu disimpan. Contoh: snapshot/myindex/.
Buat snapshot untuk kluster Elasticsearch sumber.
Jika kluster Elasticsearch sumber adalah V7.10, jalankan perintah berikut untuk membuat snapshot bernama
snapshot_1untuk kluster tersebut.CatatanInformasi pengguna seperti peran yang ditetapkan kepada pengguna dalam kluster Elasticsearch V7.10 dikelola menggunakan indeks sistem
.kibana*dan.security*.Untuk informasi tentang parameter dalam perintah yang digunakan untuk membuat snapshot untuk kluster Elasticsearch V7.10, lihat API Restore Snapshot.
PUT _snapshot/my_backup/snapshot_1 { "indices": ".kibana*,.security*", "ignore_unavailable": true, "include_global_state": true }Jika kluster Elasticsearch sumber adalah V8.5, jalankan perintah berikut untuk membuat snapshot bernama
snapshot_1untuk indeks yang menyimpan informasi pengguna seperti peran yang ditetapkan kepada pengguna dalam kluster tersebut.CatatanUntuk informasi tentang parameter dalam perintah yang digunakan untuk membuat snapshot untuk kluster Elasticsearch V8.5, lihat API Create Snapshot.
PUT _snapshot/my_backup/snapshot_1 { "indices": "-*", "ignore_unavailable": true, "include_global_state": true, "feature_states": [ "security" ] }
Periksa apakah snapshot berhasil dibuat. Misalnya, Anda dapat menjalankan perintah berikut untuk menanyakan detail snapshot
snapshot_1di repositorimy_backup.GET _snapshot/my_backup/snapshot_1
Langkah 3: Pulihkan data dari snapshot
Masuk ke konsol Kibana kluster Elasticsearch tujuan. Untuk informasi lebih lanjut, lihat Masuk ke Konsol Kibana.
Buat repositori bernama
my_restoredi kluster Elasticsearch tujuan.PUT _snapshot/my_restore { "type": "oss", "settings": { "endpoint": "http://oss-cn-hangzhou-internal.aliyuncs.com", "access_key_id": "[your_access_key_id]", "secret_access_key": "[your_secret_access_key]", "bucket": "[your_bucket_name]", "compress": true, "chunk_size": "500mb", "base_path": "snapshot/" } }Pulihkan data dari snapshot yang dibuat untuk kluster Elasticsearch sumber ke kluster Elasticsearch tujuan.
Jika kluster Elasticsearch sumber adalah V7.10, lakukan operasi berikut untuk memulihkan data dari snapshot yang dibuat untuk kluster tersebut.
CatatanJika Anda ingin memulihkan data dari snapshot yang dibuat untuk kluster Elasticsearch V7.10 atau sebelumnya ke kluster Elasticsearch tujuan, Anda harus menonaktifkan indeks sistem
.kibana*dan.security*di kluster Elasticsearch tujuan. Setelah data dipulihkan dari snapshot, Anda harus mengaktifkan indeks ini sesegera mungkin.Menonaktifkan indeks sistem dapat menyebabkan fitur-fitur kluster Elasticsearch tidak tersedia atau terbatas. Misalnya, penonaktifan indeks sistem
.kibana*dapat menyebabkan konsol Kibana tidak tersedia, dan penonaktifan indeks sistem.security*dapat memengaruhi keamanan data kluster Elasticsearch.Kami menyarankan Anda untuk mencadangkan data di indeks sistem ini terlebih dahulu. Dengan cara ini, Anda dapat memulihkan data jika diperlukan.
Kami menyarankan Anda untuk menonaktifkan indeks ini di kluster Elasticsearch tujuan selama jam-jam sepi atau ketika kluster tidak memberikan layanan.
Jika Anda tidak dapat menonaktifkan indeks ini di konsol Kibana kluster Elasticsearch tujuan, kami menyarankan Anda untuk menggunakan terminal untuk menonaktifkan indeks ini. Untuk informasi lebih lanjut, lihat Perintah Curl yang Dapat Anda Gunakan untuk Mengelola Kluster Elasticsearch.
Nonaktifkan indeks sistem
.kibana*dan.security*di kluster Elasticsearch tujuan.POST /<index name>/_closePulihkan data dari snapshot_1 ke kluster Elasticsearch tujuan.
POST /_snapshot/my_restore/snapshot_1/_restore { "indices": ".kibana*,.security*", "ignore_unavailable": true, "include_global_state": false }Aktifkan indeks sistem
.kibana*dan.security*di kluster Elasticsearch tujuan.POST /<index name>/_open
Jika kluster Elasticsearch sumber adalah V8.5, jalankan perintah berikut di konsol Kibana kluster Elasticsearch tujuan untuk memulihkan data dari snapshot
snapshot_1ke kluster Elasticsearch tujuan.POST _snapshot/my_restore/snapshot_1/_restore { "feature_states": [ "security" ], "include_global_state": false, "indices": "-*" }
Periksa apakah informasi pengguna digunakan kembali untuk kluster Elasticsearch tujuan.
Di pojok kiri atas konsol Kibana kluster Elasticsearch tujuan, klik ikon
. Di panel navigasi di sebelah kiri, pilih .Di panel navigasi di sebelah kiri, klik Users. Di halaman Users, periksa apakah pengguna kara yang memiliki peran
cj_test_roleada. Jika pengguna tersebut ada, informasi penggunakaradigunakan kembali untuk kluster Elasticsearch tujuan.
Menggunakan kembali visualisasi di kluster Elasticsearch sumber untuk kluster Elasticsearch tujuan
Langkah 1: Persiapkan lingkungan
Masuk ke konsol Kibana kluster Elasticsearch sumber. Untuk informasi lebih lanjut, lihat Masuk ke Konsol Kibana.
Tambahkan data sampel.
CatatanDalam contoh ini, data sampel ditambahkan ke kluster Elasticsearch V8.5. Operasi untuk menambahkan data sampel ke kluster Elasticsearch dapat bervariasi berdasarkan versi Elasticsearch. Anda dapat melakukan operasi yang diperlukan di konsol Kibana.
Di halaman utama konsol Kibana, klik Try sample data di bagian Get started by adding integrations.
Di tab Sample data halaman yang muncul, klik Other sample data sets.
Klik Add data di kartu Sample flight data.
Jika Add data berubah menjadi View data, dataset telah ditambahkan. Setelah dataset ditambahkan, Kibana secara otomatis membuat beberapa visualisasi terkait.

Di pojok kiri atas konsol Kibana, klik ikon
. Di panel navigasi di sebelah kiri, pilih untuk melihat visualisasi seperti [Penerbangan] Cuaca Tujuan dan [Penerbangan] Penundaan & Pembatalan.
Langkah 2: Buat snapshot untuk mencadangkan data di kluster Elasticsearch sumber
Masuk ke konsol Kibana kluster Elasticsearch sumber. Untuk informasi lebih lanjut, lihat Masuk ke Konsol Kibana.
Buat repositori bernama
my_backupdi kluster Elasticsearch sumber.Buat repositori untuk kluster di cloud.
PUT _snapshot/my_backup/ { "type": "oss", "settings": { "endpoint": "http://oss-cn-hangzhou-internal.aliyuncs.com", "access_key_id": "xxxx", "secret_access_key": "xxxxxx", "bucket": "xxxxxx", "compress": true, "chunk_size": "500mb", "base_path": "snapshot/" } }Buat repositori untuk kluster mandiri V8.X. Dalam hal ini, Anda harus menginstal plug-in elasticsearch-repository-oss pada kluster. Untuk informasi lebih lanjut, lihat Instal Plug-in elasticsearch-repository-oss.
CatatanUntuk informasi lebih lanjut tentang plug-in, lihat elasticsearch-repository-oss.
PUT /_snapshot/my_backup { "type": "oss", "settings": { "oss.client.endpoint": "oss-cn-shanghai.aliyuncs.com", "oss.client.access_key_id": "xxx", "oss.client.secret_access_key": "xxx", "oss.client.bucket": "xxxxxx", "oss.client.base_path":"snapshot/", "oss.client.compress": true } }
Parameter
Deskripsi
Titik akhir
Titik akhir internal Bucket OSS. Untuk informasi lebih lanjut tentang cara mendapatkan titik akhir, lihat Wilayah dan titik akhir.
ID AccessKey
ID AccessKey akun Anda. Untuk informasi lebih lanjut tentang cara mendapatkan ID AccessKey, lihat Dapatkan pasangan AccessKey.
Rahasia AccessKey
Rahasia AccessKey akun Anda. Untuk informasi lebih lanjut tentang cara mendapatkan Rahasia AccessKey, lihat Dapatkan pasangan AccessKey.
Bucket
Nama Bucket OSS. Untuk informasi lebih lanjut tentang cara mendapatkan nama, lihat Buat bucket.
Kompres
Menentukan apakah akan mengaktifkan fitur kompresi data untuk snapshot. Nilai valid:
true: mengaktifkan fitur kompresi data untuk snapshot. Fitur ini hanya berlaku untuk metadata indeks, termasuk pemetaan dan pengaturan indeks.
false: menonaktifkan fitur kompresi data untuk snapshot. Nilai default adalah false.
Ukuran chunk
Jika Anda ingin mengunggah volume data besar ke Bucket OSS, Anda dapat mengunggah data dalam beberapa bagian. Dalam hal ini, Anda dapat menggunakan parameter ini untuk menetapkan ukuran setiap bagian. Jika ukuran sebuah bagian mencapai nilai parameter ini, data berlebih didistribusikan ke bagian lain.
Jalur dasar
Lokasi awal repositori. Nilai default adalah direktori root. Anda dapat menentukan direktori tempat snapshot tertentu disimpan. Contoh: snapshot/myindex/.
Buat snapshot untuk kluster Elasticsearch sumber.
Jika kluster Elasticsearch sumber adalah V7.10, jalankan perintah berikut untuk membuat snapshot bernama
snapshot_2di kluster tersebut.CatatanUntuk informasi tentang parameter dalam perintah yang digunakan untuk membuat snapshot untuk kluster Elasticsearch V7.10, lihat API Restore Snapshot.
PUT _snapshot/my_backup/snapshot_2 { "indices": ".kibana*,.security*", "ignore_unavailable": true, "include_global_state": true }Jika kluster Elasticsearch sumber adalah V8.5, jalankan perintah berikut untuk membuat snapshot bernama
snapshot_2untuk indeks yang menyimpan visualisasi di kluster tersebut.CatatanUntuk informasi tentang parameter dalam perintah yang digunakan untuk membuat snapshot untuk kluster Elasticsearch V8.5, lihat API Create Snapshot.
PUT _snapshot/my_backup/snapshot_2 { "indices": "-*", "ignore_unavailable": true, "include_global_state": true, "feature_states": [ "security","kibana" ]
Periksa apakah snapshot berhasil dibuat. Misalnya, Anda dapat menjalankan perintah berikut untuk menanyakan detail snapshot
snapshot_2di repositorimy_backup.GET _snapshot/my_backup/snapshot_2
Langkah 3: Pulihkan data dari snapshot
Masuk ke konsol Kibana kluster Elasticsearch tujuan. Untuk informasi lebih lanjut, lihat Masuk ke Konsol Kibana.
Buat repositori bernama
my_restoredi kluster Elasticsearch tujuan.PUT _snapshot/my_restore { "type": "oss", "settings": { "endpoint": "http://oss-cn-hangzhou-internal.aliyuncs.com", "access_key_id": "[your_access_key_id]", "secret_access_key": "[your_secret_access_key]", "bucket": "[your_bucket_name]", "compress": true, "chunk_size": "500mb", "base_path": "snapshot/" } }Pulihkan data dari snapshot yang dibuat untuk kluster Elasticsearch sumber ke kluster Elasticsearch tujuan.
Jika kluster Elasticsearch sumber adalah V7.10, lakukan operasi berikut untuk memulihkan data dari snapshot yang dibuat untuk kluster tersebut.
CatatanJika Anda ingin memulihkan data dari snapshot yang dibuat untuk kluster Elasticsearch V7.10 atau sebelumnya ke kluster Elasticsearch tujuan, Anda harus menonaktifkan indeks sistem
.kibana*dan.security*di kluster Elasticsearch tujuan. Setelah data dipulihkan dari snapshot, Anda harus mengaktifkan indeks ini sesegera mungkin.Menonaktifkan indeks sistem dapat menyebabkan fitur-fitur kluster Elasticsearch tidak tersedia atau terbatas. Misalnya, penonaktifan indeks sistem
.kibana*dapat menyebabkan konsol Kibana tidak tersedia, dan penonaktifan indeks sistem.security*dapat memengaruhi keamanan data kluster Elasticsearch.Kami menyarankan Anda untuk mencadangkan data di indeks sistem ini terlebih dahulu. Dengan cara ini, Anda dapat memulihkan data jika diperlukan.
Kami menyarankan Anda untuk menonaktifkan indeks ini di kluster Elasticsearch tujuan selama jam-jam sepi atau ketika kluster tidak memberikan layanan.
Jika Anda tidak dapat menonaktifkan indeks ini di konsol Kibana kluster Elasticsearch tujuan, kami menyarankan Anda untuk menggunakan terminal untuk menonaktifkan indeks ini. Untuk informasi lebih lanjut, lihat Perintah Curl yang Dapat Anda Gunakan untuk Mengelola Kluster Elasticsearch.
Nonaktifkan indeks sistem
.kibana*dan.security*di kluster Elasticsearch tujuan.POST /<index name>/_closePulihkan data dari snapshot_2 ke kluster Elasticsearch tujuan.
POST /_snapshot/my_restore/snapshot_2/_restore { "indices": ".kibana*,.security*", "ignore_unavailable": true, "include_global_state": false }Aktifkan indeks sistem
.kibana*dan.security*di kluster Elasticsearch tujuan.POST /<index name>/_open
Jika kluster Elasticsearch sumber adalah V8.5, jalankan perintah berikut di konsol Kibana kluster Elasticsearch tujuan untuk memulihkan data dari snapshot
snapshot_2ke kluster Elasticsearch tujuan.POST _snapshot/my_restore/snapshot_2/_restore { "feature_states": [ "security","kibana" ], "include_global_state": false, "indices": "-*" }
Periksa apakah visualisasi digunakan kembali untuk kluster Elasticsearch tujuan.
Di pojok kiri atas konsol Kibana kluster Elasticsearch tujuan, klik ikon
. Di panel navigasi di sebelah kiri, pilih . Di halaman Visualize Library, periksa apakah visualisasi digunakan kembali untuk kluster Elasticsearch tujuan.