Product check klien
Klien ES 8.x menolak OpenSearch. Pakai klien OpenSearch.
OpenSearch lahir dari fork Elasticsearch 7.10 setelah perubahan lisensi pada 2021. Memindahkan beban kerja ke OpenSearch bisa mulus bila Anda memahami kompatibilitas versi, memilih metode yang tepat, dan mengganti klien. nusabet88 mendukung keduanya.
| Sumber | Target OpenSearch | Metode disarankan |
|---|---|---|
| Elasticsearch 6.x | OpenSearch 1.x | Reindex-from-remote / Logstash |
| Elasticsearch 7.0–7.9 | OpenSearch 1.x | Reindex-from-remote |
| Elasticsearch 7.10 | OpenSearch 1.x | Snapshot-restore (paling mulus) |
| Elasticsearch 8.x | OpenSearch 2.x/3.x | Reindex-from-remote / Logstash |
# di ES 7.10: buat snapshot ke repository S3 bersama PUT /_snapshot/shared_s3/migrate_snap?wait_for_completion=true { "indices": "*", "include_global_state": false } # di OpenSearch: daftarkan repo yang sama lalu restore POST /_snapshot/shared_s3/migrate_snap/_restore { "indices": "*" }
# dijalankan DI cluster OpenSearch, menarik dari ES
POST /_reindex
{
"source": {
"remote": { "host": "https://es-lama:9200", "username": "user", "password": "pass" },
"index": "pages_*"
},
"dest": { "index": "pages_migrated" }
}
Tambahkan host ES ke reindex.remote.whitelist di opensearch.yml agar diizinkan.
# pipeline: input elasticsearch -> output opensearch
input { elasticsearch { hosts => ["https://es-lama:9200"] index => "pages_*" } }
output { opensearch { hosts => ["https://opensearch:9200"] index => "%{[@metadata][_index]}" } }
| Aspek | Elasticsearch | OpenSearch |
|---|---|---|
| Klien resmi | elasticsearch-py / -js (8.x ketat) | opensearch-py / -js |
| Product check | Klien 8.x menolak non-ES | Tidak ada penolakan |
| Keamanan | X-Pack Security | OpenSearch Security plugin |
| Visualisasi | Kibana | OpenSearch Dashboards |
| Lisensi | SSPL / Elastic License | Apache 2.0 |
Klien ES 8.x menolak OpenSearch. Pakai klien OpenSearch.
Tidak kompatibel ke OpenSearch. Gunakan reindex-from-remote.
Beberapa fitur X-Pack tak ada padanan; rencanakan ulang.
Pada 2021 Elastic mengubah lisensi Elasticsearch dari Apache 2.0 menjadi SSPL/Elastic License. AWS lalu mem-fork versi Apache 2.0 terakhir (7.10) menjadi OpenSearch agar tetap open source murni. Jadi OpenSearch 1.x berakar dari Elasticsearch 7.10, lalu berkembang sendiri.
Bisa untuk versi yang kompatibel. Snapshot dari Elasticsearch 7.10 umumnya dapat direstore ke OpenSearch 1.x karena format-nya sama. Untuk versi Elasticsearch yang lebih baru (8.x), snapshot tidak kompatibel langsung; gunakan reindex-from-remote atau Logstash.
Klien Elasticsearch 7.x lama sering masih bisa, tetapi klien resmi 8.x menerapkan pemeriksaan versi/product yang menolak OpenSearch. Solusinya memakai klien OpenSearch resmi (opensearch-py, opensearch-js, dll.) yang dirancang untuk endpoint OpenSearch.
Tiga yang sering: (1) klien resmi ES 8.x menolak OpenSearch karena product check; (2) fitur X-Pack/komersial Elastic tidak ada padanannya di OpenSearch; (3) perbedaan nama plugin keamanan dan API security. Selalu jalankan checklist kompatibilitas sebelum cutover.
Repository S3 bersama mempermudah migrasi via snapshot. Pelajari cara menyiapkannya.
Backup Snapshot ke S3