PolarSearch mendukung pencadangan data indeks dari kluster Anda ke bucket Object Storage Service (OSS) dan pemulihan data dari OSS menggunakan snapshot. Fitur ini memungkinkan migrasi data lintas kluster serta backup dan pemulihan kustom untuk kluster PolarSearch, yang menyediakan solusi fleksibel dan hemat biaya untuk perlindungan data dan transfer data.
Fitur ini sedang dalam rilis canary. Untuk menggunakan fitur ini, submit a ticket untuk meminta akses.
Penerapan
Kluster PolarSearch Anda menggunakan versi 2.19.3 atau lebih baru.
CatatanAnda dapat mengakses PolarSearch menggunakan endpoint dan memeriksa versi pada bidang
version.number.Anda telah mengaktifkan Alibaba Cloud Object Storage Service (OSS) dan membuat bucket untuk menyimpan snapshot.
Anda telah membuat Resource Access Management (RAM) user dan memberikan kebijakan akses
AliyunOSSFullAccesskepada pengguna tersebut. Untuk informasi selengkapnya, lihat Grant permissions to a RAM user.
Informasi penagihan
Fitur snapshot tidak dikenai biaya. Namun, file snapshot yang disimpan di bucket OSS Anda akan dikenai biaya penyimpanan dan permintaan. Untuk informasi selengkapnya tentang penagihan, lihat OSS Billing overview.
Daftarkan repositori snapshot
Sebelum menggunakan fitur snapshot, Anda harus mendaftarkan repositori snapshot dan mengaitkannya dengan bucket OSS Anda. Anda dapat menggunakan API berikut untuk membuat repositori snapshot:
PUT /_snapshot/{repo-name}
{
"type": "oss",
"settings": {
"endpoint": "{endpoint}",
"bucket": "{bucket-name}",
"base_path": "{path-name}",
"region": "{region}",
"access_key": "{your-AccessKey-ID}",
"secret_key": "{your-AccessKey-secret}",
"session_token": "{your-STS-Token}"
}
}Parameter
Parameter | Deskripsi |
| Nama repositori. Tentukan sendiri. |
| Jenis repositori. Tetapkan nilai ini ke |
| Titik akhir bucket OSS Anda. Untuk detailnya, lihat Regions and endpoints. |
| Nama bucket OSS Anda. |
| (Opsional) Jalur direktori root di bucket OSS tempat file snapshot disimpan. |
| Wilayah tempat bucket berada. |
| AccessKey ID Anda. |
| AccessKey secret Anda. |
| (Opsional) kredensial identitas temporary (Security Token Service token) untuk Peran RAM Anda. Penting Jika Anda menggunakan token STS, tetapkan |
Contoh
Ganti parameter berikut dengan nilai aktual Anda.
curl -X PUT "https://{pc-endpoint}:3001/_snapshot/{repo-name}" \
-u "{username}:{passwd}" \
-H "Content-Type: application/json" \
-d '{
"type": "oss",
"settings": {
"endpoint": "{endpoint}",
"bucket": "{bucket-name}",
"base_path": "{path-name}",
"region": "{region}",
"access_key": "{your-AccessKey-ID}",
"secret_key": "{your-AccessKey-secret}"
}
}'
Buat snapshot: Backup data ke OSS
Setelah mendaftarkan repositori snapshot, Anda dapat menjalankan perintah berikut untuk membuat snapshot untuk indeks tertentu:
PUT /_snapshot/{repo-name}/{snapshot-name}?wait_for_completion=true
{
"indices": "{index-name}",
"ignore_unavailable":false
}Deskripsi parameter
Kategori Parameter | Nama Parameter | Deskripsi |
Parameter permintaan |
| Apakah akan menunggu secara sinkron hingga operasi snapshot selesai. Nilai default adalah
|
Parameter isi permintaan |
| Menentukan indeks yang akan dicadangkan. Mendukung karakter wildcard Catatan Menggunakan wildcard |
| Apakah akan mengabaikan indeks yang hilang dan melanjutkan pembuatan snapshot. Nilai default adalah | |
| Apakah mengizinkan snapshot parsial. Jika ditetapkan ke |
Contoh
Ganti parameter berikut dengan nilai aktual Anda.
curl -X PUT "https://{pc-endpoint}:3001/_snapshot/{repo-name}/{snapshot-name}?wait_for_completion=true" \
-u "{username}:{passwd}" \
-H "Content-Type: application/json" \
-d '{
"indices": "{index-name}",
"ignore_unavailable": false
}'Lihat snapshot
Anda dapat menampilkan daftar semua snapshot di repositori snapshot OSS Anda menggunakan API berikut:
GET /_snapshot/{repo-name}/_all?prettyContoh
Ganti parameter berikut dengan nilai aktual Anda.
curl -X GET "https://{pc-endpoint}:3001/_snapshot/{repo-name}/_all?pretty" -u "{username}:{passwd}"Pulihkan data
Anda dapat menjalankan perintah berikut untuk memulihkan data indeks dari snapshot tertentu menggunakan API berikut:
Untuk memulihkan snapshot dari satu kluster PolarSearch ke kluster PolarSearch lainnya, kluster tujuan PolarSearch harus mendaftarkan repositori snapshot yang sama dengan kluster sumber PolarSearch. Jika Anda melakukan pemulihan dalam kluster PolarSearch yang sama, Anda dapat melewati pendaftaran dan langsung memulihkan data.
POST /_snapshot/{repo-name}/{snapshot-name}/_restore?wait_for_completion=true
{
"indices": "{index-name}",
"ignore_unavailable": true
}Parameter
Klasifikasi Parameter | Nama Parameter | Deskripsi |
Parameter permintaan |
| Apakah akan menunggu secara sinkron hingga operasi pemulihan selesai. Nilai default adalah
|
Parameter isi permintaan |
| Menentukan indeks yang akan dipulihkan. Mendukung karakter wildcard |
| Menentukan apakah akan mengabaikan indeks dan melanjutkan pembuatan snapshot jika indeks yang ditentukan tidak ada. Nilai default adalah | |
| Menentukan apakah akan membuat snapshot parsial. Jika ditetapkan ke | |
| Menimpa pengaturan indeks dari snapshot selama pemulihan. Misalnya, sesuaikan jumlah replika agar sesuai dengan konfigurasi kluster tujuan. | |
| Menentukan daftar pengaturan indeks yang diabaikan selama pemulihan, biasanya digunakan untuk melewatkan konfigurasi spesifik sumber. |
Contoh
Ganti parameter berikut dengan nilai aktual Anda.
curl -X POST "https://{pc-endpoint}:3001/_snapshot/{repo-name}/{snapshot-name}/_restore?wait_for_completion=true" \
-u "{username}:{passwd}" \
-H "Content-Type: application/json" \
-d '{
"indices": "{index-name}",
"ignore_unavailable": true
}'