Membuat snapshot indeks di Amazon Service OpenSearch - OpenSearch Layanan Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Membuat snapshot indeks di Amazon Service OpenSearch

Snapshot di Amazon OpenSearch Service adalah cadangan indeks dan status klaster. Status termasuk pengaturan klaster, informasi simpul, pengaturan indeks, dan alokasi serpihan.

OpenSearch Snapshot layanan datang dalam bentuk berikut:

  • Snapshot otomatis hanya untuk pemulihan klaster. Anda dapat menggunakannya untuk memulihkan domain Anda dalam peristiwa status klaster merah atau kehilangan data. Untuk informasi selengkapnya, lihat Memulihkan snapshot di bawah ini. OpenSearch Layanan menyimpan snapshot otomatis dalam bucket Amazon S3 yang telah dikonfigurasi sebelumnya tanpa biaya tambahan.

  • Snapshot manual adalah untuk pemulihan klaster atau untuk memindahkan data dari satu klaster ke klaster lainnya. Anda harus memulai snapshot manual. Snapshot ini disimpan dalam bucket Amazon S3 Anda sendiri dan biaya S3 standar berlaku. Jika Anda memiliki snapshot dari OpenSearch kluster yang dikelola sendiri, Anda dapat menggunakan snapshot tersebut untuk bermigrasi ke domain Layanan. OpenSearch Untuk informasi selengkapnya, lihat Migrasi ke OpenSearch Layanan Amazon.

Semua domain OpenSearch Layanan mengambil snapshot otomatis, tetapi frekuensinya berbeda dengan cara berikut:

  • Untuk domain yang berjalan OpenSearch atau Elasticsearch 5.3 dan yang lebih baru, OpenSearch Layanan mengambil snapshot otomatis setiap jam dan mempertahankan hingga 336 di antaranya selama 14 hari. Cuplikan per jam tidak terlalu mengganggu karena sifat inkrementalnya. Mereka juga menyediakan titik pemulihan yang lebih baru jika terjadi masalah domain.

  • Untuk domain yang menjalankan Elasticsearch 5.1 dan yang lebih lama, OpenSearch Layanan mengambil snapshot otomatis harian selama jam yang Anda tentukan, mempertahankan hingga 14 di antaranya, dan tidak menyimpan data snapshot apa pun selama lebih dari 30 hari.

Jika klaster Anda memasuki status merah, semua snapshot otomatis gagal selagi status klaster tetap ada. Jika Anda tidak memperbaiki masalah dalam waktu dua minggu, Anda dapat kehilangan data di klaster Anda secara permanen. Untuk langkah-langkah pemecahan masalah, lihat Status klaster merah.

Prasyarat

Untuk membuat snapshot secara manual, Anda perlu bekerja dengan IAM dan Amazon S3. Pastikan Anda memenuhi prasyarat berikut sebelum Anda mencoba untuk mengambil snapshot:

Prasyarat Deskripsi
Bucket S3

Buat bucket S3 untuk menyimpan snapshot manual untuk domain OpenSearch Layanan Anda. Untuk petunjuknya, lihat Membuat Bucket di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

Ingat nama bucket untuk menggunakannya di tempat-tempat berikut:

  • Pernyataan Resource dari kebijakan IAM yang dilampirkan pada IAM role Anda

  • Klien Python digunakan untuk mendaftarkan repositori snapshot (jika Anda menggunakan metode ini)

penting

Jangan menerapkan aturan siklus hidup S3 Glacier ke bucket ini. Snapshot manual tidak mendukung kelas penyimpanan S3 Glacier.

Peran IAM

Buat peran IAM untuk mendelegasikan izin ke Layanan. OpenSearch Untuk petunjuk, lihat Membuat IAM role (konsol) di Panduan Pengguna IAM. Sisa dari bab ini mengacu pada peran ini sebagai TheSnapshotRole.

Lampirkan kebijakan IAM

Lampirkan kebijakan berikut ke TheSnapshotRole untuk mengizinkan akses ke bucket S3:

{ "Version": "2012-10-17", "Statement": [{ "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::s3-bucket-name" ] }, { "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::s3-bucket-name/*" ] } ] }

Untuk petunjuk guna melampirkan kebijakan ke peran, lihat Menambahkan Izin Identitas IAM di Panduan Pengguna IAM.

Edit hubungan kepercayaan

Edit hubungan kepercayaan TheSnapshotRole untuk menentukan OpenSearch Layanan dalam Principal pernyataan seperti yang ditunjukkan pada contoh berikut:

{ "Version": "2012-10-17", "Statement": [{ "Sid": "", "Effect": "Allow", "Principal": { "Service": "es.amazonaws.com" }, "Action": "sts:AssumeRole" }] }

Untuk petunjuk guna mengedit hubungan kepercayaan, lihat Mengubah kebijakan kepercayaan peran di Panduan Pengguna IAM.

Izin

Untuk mendaftarkan repositori snapshot, Anda harus dapat meneruskan TheSnapshotRole ke Layanan. OpenSearch Anda juga memerlukan akses ke tindakan es:ESHttpPut. Untuk memberikan kedua izin ini, lampirkan kebijakan berikut ke peran IAM yang kredensialnya digunakan untuk menandatangani permintaan:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::123456789012:role/TheSnapshotRole" }, { "Effect": "Allow", "Action": "es:ESHttpPut", "Resource": "arn:aws:es:region:123456789012:domain/domain-name/*" } ] }

Jika pengguna atau peran Anda tidak memiliki iam:PassRole izin untuk diteruskanTheSnapshotRole, Anda mungkin mengalami kesalahan umum berikut saat mencoba mendaftarkan repositori di langkah berikutnya:

$ python register-repo.py {"Message":"User: arn:aws:iam::123456789012:user/MyUserAccount is not authorized to perform: iam:PassRole on resource: arn:aws:iam::123456789012:role/TheSnapshotRole"}

Menghapus snapshot manual

Untuk menghapus snapshot manual, jalankan perintah berikut:

DELETE _snapshot/repository-name/snapshot-name

Mengotomatisasi snapshot dengan Manajemen State Indeks

Anda dapat menggunakan snapshot operasi Index State Management (ISM) untuk secara otomatis memicu snapshot indeks berdasarkan perubahan usia, ukuran, atau jumlah dokumen. ISM adalah yang terbaik ketika Anda membutuhkan satu snapshot per indeks. Jika Anda perlu memotret sekelompok indeks, lihat. Mengotomatiskan snapshot dengan Manajemen Snapshot

Untuk menggunakan SM in OpenSearch Service, Anda harus mendaftarkan repositori Amazon S3 Anda sendiri. Untuk contoh kebijakan ISM yang menggunakan operasi snapshot, lihat Sampel Kebijakan.

Menggunakan Curator untuk snapshot

Jika ISM tidak berfungsi untuk manajemen indeks dan snapshot, Anda dapat menggunakan Kurator sebagai gantinya. Ini menawarkan fungsionalitas penyaringan lanjutan yang dapat membantu menyederhanakan tugas manajemen pada cluster yang kompleks. Gunakan pip untuk menginstal Curator:

pip install elasticsearch-curator

Anda dapat menggunakan Curator sebagai antarmuka baris perintah (CLI) atau API Python. Jika Anda menggunakan Python API, Anda harus menggunakan versi 7.13.4 atau sebelumnya dari klien elasticsearch-py lama. Itu tidak mendukung klien opensearch-py.

Jika Anda menggunakan CLI, ekspor kredensial Anda pada baris perintah dan konfigurasikan curator.yml sebagai berikut:

client: hosts: search-my-domain.us-west-1.es.amazonaws.com port: 443 use_ssl: True aws_region: us-west-1 aws_sign_request: True ssl_no_validate: False timeout: 60 logging: loglevel: INFO