Anda dapat mengonfigurasi parameter YML pada instans Alibaba Cloud Elasticsearch untuk mengaktifkan pembuatan indeks otomatis, menentukan nama indeks yang akan dihapus, mengaktifkan Auditlog dan Watcher, serta mengonfigurasi pengaturan lainnya. Topik ini menjelaskan cara mengonfigurasi parameter YML, akses Berbagi Sumber Daya Lintas Asal (CORS), daftar putih Reindex, Auditlog, dan ukuran antrian.
Perhatian
Sejak Oktober 2020, arsitektur jaringan Alibaba Cloud Elasticsearch telah disesuaikan, sehingga beberapa skenario migrasi data lintas kluster yang menggunakan reindex dibatasi. Untuk menggunakan reindex dalam migrasi data lintas kluster, ikuti petunjuk pada bagian perhatian di Migrasi data dari kluster Elasticsearch self-managed ke instans Alibaba Cloud Elasticsearch melalui jaringan pribadi.
Jadwal penyesuaian arsitektur jaringan tidak pasti untuk wilayah China (Zhangjiakou) dan wilayah di luar China. Anda harus mengajukan tiket kepada tim dukungan teknis Alibaba Cloud Elasticsearch untuk memverifikasi konektivitas jaringan.
Ubah Konfigurasi
Anda dapat menuju halaman konfigurasi file YML.
Pada panel navigasi di sebelah kiri, klik .
Pada halaman konfigurasi kluster ES, di samping YML File Configuration, klik Modify Configuration.
Pada kotak dialog YML File Configuration, konfigurasikan parameter-parameter tersebut.
CatatanUntuk melihat isi file
elasticsearch.yml, login ke Konsol Kibana dan jalankan perintahGET _cluster/settings?include_defaults.Parameter
Deskripsi
Auto Indexing
Menentukan apakah sistem dapat secara otomatis membuat indeks jika belum ada saat instans Elasticsearch menerima dokumen baru.
Ini sesuai dengan item konfigurasi action.auto_create_index dalam file YML. Nilai default-nya adalah false.
Secara default, Alibaba Cloud Elasticsearch tidak mengizinkan pembuatan indeks otomatis. Anda dapat mengaktifkannya dengan salah satu cara berikut:
PentingIndeks yang dibuat secara otomatis mungkin tidak sesuai harapan Anda. Kami menyarankan agar Anda mengevaluasi dampaknya sebelum mengaktifkan fitur ini.
Aktifkan melalui halaman Cluster Configuration di konsol. Ini merupakan konfigurasi YML statis dan memicu restart instans.
Aktifkan secara cepat menggunakan metode dinamis tanpa perlu restart. Login ke Konsol Kibana dan gunakan perintah berikut untuk mengizinkan pembuatan indeks otomatis:
Izinkan pembuatan otomatis semua indeks
PUT /_cluster/settings { "persistent": { "action": { "auto_create_index": "true" } } }PentingMetode ini mengaktifkan pembuatan otomatis untuk semua indeks. Untuk menonaktifkannya, ubah
truemenjadifalse.Izinkan pembuatan otomatis hanya untuk indeks tertentu. Contoh berikut hanya mengizinkan pembuatan otomatis indeks sistem:
PUT /_cluster/settings { "persistent": { "action": { "auto_create_index": "+.*,-*" } } }
Index Deletion
Menentukan apakah Anda harus secara eksplisit menentukan nama indeks saat menghapus indeks. Jika Anda memilih Allow Wildcards, Anda dapat menggunakan karakter wildcard untuk menghapus indeks secara batch. Indeks yang telah dihapus tidak dapat dipulihkan. Gunakan konfigurasi ini dengan hati-hati.
Ini sesuai dengan item konfigurasi action.destructive_requires_name dalam file YML. Nilai default-nya adalah true.
Audit Log Indexing
Jika diaktifkan, sistem mencatat log audit untuk operasi seperti create, delete, update, dan query pada instans Elasticsearch. Informasi log ini mengonsumsi disk space dan memengaruhi performa. Kami menyarankan agar Anda tidak mengaktifkannya. Gunakan konfigurasi ini dengan hati-hati. Untuk informasi lebih lanjut tentang parameter-parameter tersebut, lihat Konfigurasi Auditlog (audit log).
PentingUntuk Elasticsearch 7.x dan versi setelahnya, Anda dapat melihat audit log di konsol. Fitur ini hanya tersedia di beberapa wilayah. Untuk informasi selengkapnya, lihat Batasan. Untuk melihat log tersebut, Anda harus terlebih dahulu mengaktifkan Auditlog. Untuk informasi selengkapnya, lihat Kueri log. Untuk versi lainnya, Anda harus melihat audit log di dalam kluster. Misalnya, Anda dapat melihat audit log dengan memeriksa indeks yang dimulai dengan .security_audit_log-* di Konsol Kibana.
Ini sesuai dengan item konfigurasi xpack.security.audit.enabled dalam file YML. Nilai default-nya adalah false.
Watcher
Jika diaktifkan, Anda dapat menggunakan fitur Watcher dari X-Pack. Secara berkala purge indeks .watcher-history* untuk menghindari penggunaan disk space yang besar.
Ini sesuai dengan item konfigurasi xpack.watcher.enabled dalam file YML. Nilai default-nya adalah false.
Other Configurations
Berikut adalah beberapa item konfigurasi yang didukung. Kecuali jika ditentukan versi Elasticsearch tertentu, item-item ini kompatibel dengan Elasticsearch 5.x, 6.x, dan 7.x.
http.cors.enabled
http.cors.allow-origin
http.cors.max-age
http.cors.allow-methods
http.cors.allow-headers
http.cors.allow-credentials
Konfigurasi daftar putih Reindex
reindex.remote.whitelist
Konfigurasi Auditlog (audit log)
Versi Elasticsearch 7.x dan 8.x hanya mendukung konfigurasi parameter xpack.security.audit.logfile.events.include. Versi 5.x dan 6.x mendukung parameter berikut:
xpack.watcher.enabled
xpack.notification
xpack.security.audit.enabled
xpack.security.audit.index.bulk_size
xpack.security.audit.index.flush_interval
xpack.security.audit.index.rollover
xpack.security.audit.index.events.include
xpack.security.audit.index.events.exclude
xpack.security.audit.index.events.emit_request_body
xpack.security.audit.index.settings.index
Fitur LDAP
Didukung oleh semua versi kecuali 5.x:
xpack.security.authc.realms.ldap1
xpack.security.authc.realms.active_directory1
xpack.security.authc.realms.pki1
xpack.security.authc.realms.saml1
xpack.security.authc.realms.kerberos1
xpack.security.authc.token.enabled
thread_pool.bulk.queue_size (untuk versi 5.x dan 6.x)
thread_pool.write.queue_size (untuk versi 6.x, 7.x, dan 8.x)
thread_pool.search.queue_size
Konfigurasi plugin SQL kustom
xpack.sql.enabled
Secara default, instans Elasticsearch mengaktifkan plugin SQL bawaan X-Pack. Untuk mengunggah plugin SQL kustom, atur xpack.sql.enabled ke false.
Forced Update
Mengontrol apakah perubahan konfigurasi YML diterapkan secara paksa. Nilai yang valid:
Close: Opsi ini tidak memaksa perubahan. Anda dapat memilih metode perubahan yang diinginkan, seperti in-place atau blue-green. Sistem memverifikasi status kesehatan kluster, termasuk ketersediaan node dan alokasi shard, untuk memastikan keamanan operasi.
Enable: Perubahan diterapkan secara paksa. Sistem mengabaikan status kesehatan kluster, seperti kegagalan node atau shard yang tidak ditugaskan. Hal ini dapat menyebabkan ketidakstabilan layanan selama fase restart.
Update Mode
Mengontrol metode yang digunakan untuk menerapkan perubahan konfigurasi file YML. Nilai yang valid:
CatatanAnda hanya perlu mengonfigurasi metode perubahan ketika parameter Forced Update diatur ke Close.
In-place Update (Default): Menerapkan perubahan ke node-node dalam kluster satu per satu secara bergulir. Metode ini tidak memerlukan penyalinan data dan durasi tidak dipengaruhi oleh volume data, tetapi memiliki dampak tertentu terhadap performa kluster.
Blue-green Update: Menambahkan jumlah node baru yang sama ke kluster, menyalin data ke node tersebut, lalu beralih secara mulus ke node baru. Proses ini relatif lancar tetapi memakan waktu lebih lama, dan alamat IP node akan berubah.
Untuk informasi selengkapnya tentang metode perubahan, lihat Metode perubahan.
PentingMengonfigurasi file YML memicu restart bergulir kluster. Jika indeks dalam kluster memiliki replika dan beban kluster normal (penggunaan CPU sekitar 60%, penggunaan heap memory sekitar 50%, dan load_1m kurang dari jumlah core CPU), layanan tetap tersedia selama restart. Durasi restart tergantung pada skala kluster, volume data, dan beban. Kami menyarankan agar Anda melakukan operasi ini pada jam sepi.
Jika beban kluster tinggi atau indeks tidak memiliki replika, atau jika bisnis Anda melibatkan banyak operasi write atau query, timeout akses sesekali dapat terjadi selama proses modifikasi. Kami menyarankan agar Anda mengonfigurasi mekanisme retry dalam skrip akses client untuk mengurangi dampak terhadap bisnis Anda.
Jika sedang berlangsung perubahan blue-green, seperti scale-out atau scale-in, untuk konfigurasi YML instans dan status instans adalah "Applying", Anda hanya dapat menggunakan metode modifikasi in-place untuk perubahan tambahan. Anda dapat melihat riwayat perubahan untuk memeriksa apakah sedang berlangsung perubahan blue-green untuk konfigurasi YML.
Pilih This operation will restart the cluster. Continue? dan klik OK.
Setelah Anda mengonfirmasi, instans Elasticsearch akan restart. Anda dapat melihat progresnya di Task List. Setelah instans restart, konfigurasi file YML selesai.
Konfigurasi Akses CORS
Konfigurasikan CORS untuk menentukan apakah browser dari domain lain diizinkan mengirim permintaan ke instans Alibaba Cloud Elasticsearch Anda. Anda dapat mengonfigurasi parameter CORS berikut di YML File Configuration.
Parameter dalam tabel ini merupakan konfigurasi kustom yang disediakan oleh Alibaba Cloud Elasticsearch untuk mendukung protokol HTTP.
Parameter dalam tabel ini hanya mendukung konfigurasi statis. Agar konfigurasi berlaku, Anda harus menulis informasi konfigurasi ke file elasticsearch.yml.
Parameter dalam tabel ini bergantung pada Pengaturan jaringan kluster.
Parameter | Nilai default | Deskripsi |
http.cors.enabled | false | Menentukan apakah akses sumber daya lintas domain diaktifkan, yaitu apakah Elasticsearch mengizinkan browser dari domain lain mengirim permintaan kepadanya.
|
http.cors.allow-origin | "" | Item konfigurasi sumber daya domain yang menentukan domain mana yang diizinkan mengirim permintaan. Secara default, permintaan lintas asal tidak diizinkan dan tidak ada konfigurasi. Ekspresi reguler didukung. Misalnya, /https?:\/\/localhost(:[0-9]+)?/ menunjukkan bahwa permintaan yang cocok dengan ekspresi reguler ini dapat direspons. Peringatan * adalah konfigurasi valid yang menunjukkan kluster mendukung permintaan lintas asal dari domain apa pun. Konfigurasi ini menimbulkan risiko keamanan dan tidak disarankan. |
http.cors.max-age | 1728000 (20 hari) | Browser dapat mengirim permintaan OPTIONS untuk mendapatkan informasi konfigurasi CORS. Item konfigurasi ini mengatur waktu cache untuk informasi yang diperoleh di browser, dalam satuan detik. |
http.cors.allow-methods | OPTIONS, HEAD, GET, POST, PUT, DELETE | Item konfigurasi metode permintaan. |
http.cors.allow-headers | X-Requested-With, Content-Type, Content-Length | Item konfigurasi informasi header permintaan. |
http.cors.allow-credentials | false | Item konfigurasi informasi kredensial yang menentukan apakah informasi Access-Control-Allow-Credentials diizinkan dikembalikan dalam header respons.
|
Konfigurasi Daftar Putih Reindex API
Untuk memastikan keamanan migrasi data lintas kluster, Anda harus menambahkan alamat koneksi jaringan pribadi dan nomor port komunikasi kluster ES_2 ke daftar putih Reindex API ES_1.
Anda dapat menuju halaman ES_1. Kemudian, klik Configure Private Connection, lalu klik Edit. Di sidebar Configure Private Connection, klik Endpoint ID yang dituju.

Di tab Endpoint Connections konsol VPC, klik ikon
di samping Endpoint ID untuk melihat nama domain yang sesuai.PentingAnda harus menghapus informasi zona dari nama domain sebelum mengonfigurasi daftar putih Reindex API.
Misalnya, jika nama domain lengkapnya adalah “ep-bp1****************-cn-hangzhou-i.epsrv-bp1****************.cn-hangzhou.privatelink.aliyuncs.com”, hapus informasi zona, yaitu “-cn-hangzhou-i”, untuk mendapatkan nama domain akhir “ep-bp1bp1****************.epsrv-bp1****************.cn-hangzhou.privatelink.aliyuncs.com”.

Anda dapat mengonfigurasi daftar putih Reindex API di file YML ES_1. Daftar putih harus mencakup nama domain endpoint dan port komunikasi.
reindex: remote: whitelist: >- ep-bp1bp1****************.epsrv-bp1****************.cn-hangzhou.privatelink.aliyuncs.com:9200
Konfigurasi Auditlog (audit log)
Auditlog dinonaktifkan secara default. Sebelum Anda dapat melihat audit log, Anda harus mengaktifkan Auditlog. Saat diaktifkan, sistem mencatat log untuk operasi seperti create, delete, update, dan query pada instans Elasticsearch. Prosedur untuk mengaktifkan, mengonfigurasi, dan melihat audit log bervariasi tergantung pada versi instans Alibaba Cloud Elasticsearch Anda.
Untuk informasi selengkapnya tentang Auditlog, lihat Auditing Security Settings.
7.x dan versi setelahnya
Buka panel YML File Configuration.
Untuk informasi selengkapnya, lihat Ubah Konfigurasi.
Pilih Enable untuk parameter Audit Log Indexing untuk mengaktifkan pencatatan audit log.
Sesuaikan konfigurasi Auditlog.
Setelah Anda mengaktifkan Auditlog, Anda dapat mengonfigurasi parameter xpack.security.audit.logfile.events.include di Other Configurations. Berikut contohnya:
xpack: security: audit: logfile: events: include the following: >- access_denied,anonymous_access_denied,authentication_failed,connection_denied,tampered_request,run_as_denied,run_as_grantedPentingUntuk instans 7.x dan versi setelahnya, Anda hanya dapat mengonfigurasi parameter xpack.security.audit.logfile.events.include.
Konfigurasi Auditlog default hanya mencetak audit log untuk permintaan yang ditolak atau gagal. Untuk mendapatkan audit log untuk permintaan yang berhasil, Anda harus menambahkan event access_granted. Setelah menambahkannya, semua informasi akses disimpan di disk, yang dapat menyebabkan penggunaan disk tinggi. Kami menyarankan agar Anda menonaktifkan fitur audit log setelah selesai troubleshooting.
Lihat audit log.
5.x dan 6.x
Buka panel YML File Configuration.
Untuk informasi selengkapnya, lihat YML File Configuration.
Untuk mengaktifkan pencatatan audit log, pilih Enable untuk parameter Audit Log Indexing.
Berikut adalah konfigurasi default untuk pengindeksan Auditlog. Anda dapat menyesuaikannya sesuai kebutuhan.
xpack.security.audit.index.bulk_size: 5000 xpack.security.audit.index.events.emit_request_body: false xpack.security.audit.index.events.exclude: run_as_denied,anonymous_access_denied,realm_authentication_failed,access_denied,connection_denied xpack.security.audit.index.events.include the following: authentication_failed,access_granted,tampered_request,connection_granted,run_as_granted xpack.security.audit.index.flush_interval: 180s xpack.security.audit.index.rollover: hourly xpack.security.audit.index.settings.index.number_of_replicas: 1 xpack.security.audit.index.settings.index.number_of_shards: 10Konfigurasi
Pengaturan default
Deskripsi
xpack.security.audit.index.bulk_size
1000
Saat Anda menulis beberapa event audit ke indeks Auditlog secara batch, Anda dapat menggunakan parameter ini untuk mengatur jumlah event yang ditulis.
xpack.security.audit.index.flush_interval
1s
Mengontrol frekuensi event yang dibuffer di-flush ke indeks.
xpack.security.audit.index.rollover
daily
Mengontrol frekuensi pergantian ke indeks baru. Anda dapat mengaturnya ke hourly, daily, weekly, atau monthly.
xpack.security.audit.logfile.events.include
access_denied,anonymous_access_denied,authentication_failed, connection_denied,tampered_request,run_as_denied,run_as_granted
Mengontrol event Auditlog mana yang dapat dikumpulkan dalam log audit. Fitur log audit hanya tersedia di beberapa wilayah. Untuk informasi selengkapnya, lihat Batasan. Untuk daftar lengkap jenis event, lihat Audit event types (7.x).
xpack.security.audit.index.events.include
access_denied, access_granted, anonymous_access_denied, authentication_failed, connection_denied, tampered_request, run_as_denied, run_as_granted
Mengontrol event Auditlog mana yang dapat ditulis ke indeks. Ini hanya didukung untuk instans 5.x dan 6.x. Untuk daftar lengkap jenis event, lihat Audit event types (6.x).
xpack.security.audit.index.events.exclude
null (Secara default, tidak ada event yang diproses)
Event Auditlog yang dikecualikan selama pembuatan indeks.
xpack.security.audit.index.events.emit_request_body
false
Menentukan apakah body permintaan yang dikirim melalui REST diabaikan atau disertakan saat jenis event tertentu, seperti authentication_failed, dipicu.
PeringatanJika Auditlog berisi informasi RequestBody, informasi sensitif dapat terekspos dalam file log.
Lihat audit log.
Untuk instans 5.x dan 6.x, saat Auditlog diaktifkan, file Auditlog di-output ke instans Elasticsearch menggunakan nama indeks yang dimulai dengan .security_audit_log-*. Oleh karena itu, Anda dapat melihat audit log dengan memeriksa indeks yang dimulai dengan .security_audit_log-* di Konsol Kibana.
PentingIndeks Auditlog mengonsumsi storage space pada instans. Karena Elasticsearch tidak mendukung kebijakan kedaluwarsa dan purge otomatis, Anda harus secara manual purge indeks Auditlog lama.
Opsional: Konfigurasi shard indeks untuk menyimpan audit log.
Untuk instans 5.x dan 6.x, Anda dapat menggunakan xpack.security.audit.index.settings untuk mengonfigurasi shard indeks penyimpanan Auditlog. Konfigurasi berikut mengatur jumlah shard dan replika untuk indeks Auditlog menjadi 1.
xpack.security.audit.index.settings: index: number_of_shards: 1 number_of_replicas: 1CatatanJika Anda ingin menghasilkan indeks Auditlog dengan melewatkan parameter konfigurasi, sertakan konfigurasi ini saat Anda mengaktifkan pengindeksan Auditlog (atur xpack.security.audit.enabled ke true). Jika tidak, indeks Auditlog akan menggunakan konfigurasi default
number_of_shards: 5dannumber_of_replicas: 1.
Konfigurasi Ukuran Antrian
Anda dapat menyesuaikan ukuran antrian untuk penulisan dan pencarian dokumen. Anda dapat mengonfigurasi ukuran antrian di YML File Configuration. Contoh berikut mengonfigurasi ukuran antrian penulisan dan pencarian dokumen masing-masing menjadi 500 dan 1000. Sesuaikan nilai-nilai ini sesuai kebutuhan bisnis aktual Anda.
Versi 5.x dan 6.x
thread_pool.bulk.queue_size: 500 thread_pool.search.queue_size: 1000Versi 6.x, 7.x, dan 8.x
thread_pool.write.queue_size: 500 thread_pool.search.queue_size: 1000
Parameter | Nilai default | Deskripsi |
thread_pool.bulk.queue_size | 200 | Ukuran antrian penulisan dokumen. Berlaku untuk Alibaba Cloud Elasticsearch versi 5.x dan 6.x. |
thread_pool.write.queue_size | 200 | Ukuran antrian penulisan dokumen. Berlaku untuk Alibaba Cloud Elasticsearch versi 6.x, 7.x, dan 8.x. |
thread_pool.search.queue_size | 1000 | Ukuran antrian pencarian dokumen. |
Contoh di atas memberikan nilai yang direkomendasikan. Untuk skenario khusus, ajukan tiket untuk menghubungi dukungan teknis guna melakukan modifikasi.
Saat ini, jika Anda mengatur thread_pool.search.queue_size ke nilai lebih dari 1000 di konfigurasi YML konsol, nilai yang digunakan tetap 1000. Untuk skenario khusus, ajukan tiket untuk menghubungi dukungan teknis guna melakukan modifikasi. Untuk informasi tentang cara mengajukan tiket, lihat Cakupan dan metode dukungan teknis.