Topik ini menjelaskan cara menghubungkan ke kluster Alibaba Cloud Elasticsearch dari command line menggunakan curl.
Sebelum memulai
Dapatkan titik akhir kluster
Anda dapat menghubungkan ke kluster Elasticsearch melalui titik akhir internal dalam jaringan pribadi VPC atau melalui titik akhir publik.
-
Titik akhir internal: Menyediakan koneksi berlatensi rendah dan stabilitas tinggi ke kluster Elasticsearch Anda. Titik akhir ini diaktifkan secara default saat pembuatan kluster.
-
Titik akhir publik: Memungkinkan Anda menghubungkan ke kluster Elasticsearch melalui internet. Anda harus mengaktifkan titik akhir ini secara manual.
Aktifkan akses publik
-
Login ke Konsol Elasticsearch dan buka halaman Basic Information instans Anda.
-
Pada panel navigasi, pilih Configuration and Management > Security Settings dan aktifkan akses publik. Akses publik diaktifkan setelah status kluster berubah dari Initializing menjadi Valid.
Setelah Anda mengaktifkan akses publik, titik akhir publik memiliki format
es-cn-<instance_ID>.public.elasticsearch.aliyuncs.com. Daftar putih IP publik kosong secara default dan harus dikonfigurasi.PentingPenggunaan titik akhir publik dapat membahayakan keamanan kluster Elasticsearch Anda. Jika Anda menggunakan titik akhir publik, pastikan untuk mengonfigurasi daftar putih IP dan menonaktifkan akses publik setelah selesai.
Konfigurasikan daftar putih IP
Untuk mengamankan kluster Anda, tambahkan alamat IP perangkat yang akan digunakan untuk mengakses kluster ke daftar putih jaringan pribadi VPC atau daftar putih IP publik kluster Elasticsearch. Hanya perangkat dengan alamat IP dalam daftar putih yang dapat mengakses kluster.
-
Dapatkan alamat IP perangkat yang akan digunakan untuk akses.
Tabel berikut menjelaskan cara mendapatkan alamat IP untuk berbagai skenario.
Skenario
Alamat IP
Metode
Menghubungkan ke kluster Elasticsearch dari perangkat lokal
Alamat IP publik perangkat lokal Anda.
Jika perangkat lokal Anda berada dalam jaringan area lokal (LAN), seperti jaringan rumah atau perusahaan, tambahkan alamat IP publik gerbang LAN ke daftar putih IP publik kluster.
Jalankan perintah
curl ipinfo.io/ipuntuk menemukan IP publik perangkat lokal Anda.Menghubungkan ke kluster Elasticsearch dari Instance ECS di VPC berbeda
IP publik Instance ECS tersebut.
Login ke Konsol ECS untuk melihatnya dalam daftar instans.
Menghubungkan ke kluster Elasticsearch dari Instance ECS di VPC yang sama
IP privat Instance ECS tersebut.
Login ke Konsol ECS untuk melihatnya dalam daftar instans.
-
Tambahkan alamat IP tersebut ke grup daftar putih.
-
Masuk ke konsol Elasticsearch. Pada halaman Basic Information instans Anda, pilih Configuration and Management > Security Settings di panel navigasi, lalu klik Modify untuk mengonfigurasi jaringan pribadi VPC atau daftar putih IP publik.
-
Klik Configure di sebelah kanan grup default. Pada kotak dialog yang muncul, tambahkan alamat IP ke daftar putih jaringan pribadi VPC atau daftar putih IP publik. Anda dapat menambahkan hingga 300 alamat IP atau Blok CIDR ke kluster. Pisahkan beberapa entri dengan koma (,) tanpa spasi di sekitarnya.
-
Anda juga dapat mengklik Add IP address whitelist Group untuk membuat grup kustom.
-
Grup daftar putih hanya digunakan untuk manajemen alamat IP dan tidak memengaruhi izin akses. Semua alamat IP di semua grup memiliki izin yang sama.
Jenis konfigurasi
Format dan contoh
Catatan penting
Format alamat IPv4
-
IP tunggal:
192.168.0.1 -
Blok CIDR:
192.168.0.0/24
-
Tolak semua akses:
127.0.0.1 -
Izinkan semua akses:
0.0.0.0/0PentingIni menimbulkan risiko keamanan tinggi. Kami sangat menyarankan agar Anda tidak mengonfigurasi
0.0.0.0/0.Beberapa versi kluster (seperti 7.16 dan 8.5) dan wilayah tidak mendukung
0.0.0.0/0. Lihat UI konsol atau pesan error untuk detailnya.
Format alamat IPv6
(Didukung hanya untuk kluster arsitektur penerapan v2 di wilayah Tiongkok (Hangzhou))
-
IP tunggal:
2401:XXXX:1000:24::5 -
Blok CIDR:
2401:XXXX:1000::/48
-
Tolak semua akses:
::1 -
Izinkan semua akses:
::/0PentingIni menimbulkan risiko keamanan tinggi. Kami sangat menyarankan agar Anda tidak mengonfigurasi
::/0.Beberapa versi kluster tidak mendukung
::/0. Lihat UI konsol atau prompt konfigurasi untuk detailnya.
-
-
Klik OK.
-
Protokol dan sertifikat
-
HTTPS Publik: Menggunakan sertifikat yang dikeluarkan oleh Otoritas Sertifikat (CA) tepercaya. Tidak diperlukan konfigurasi klien khusus. Terhubung langsung menggunakan protokol
https://. -
HTTPS Privat: Menggunakan sertifikat tanda tangan sendiri untuk transmisi terenkripsi. Karena jaringan pribadi VPC aman dari serangan man-in-the-middle, Anda dapat mengakses kluster dengan aman menggunakan parameter
-kuntuk melewati validasi sertifikat.
Hubungkan ke kluster
Sintaksis perintah
# HTTPS Publik
curl -u '<UserName>:<YourPassword>' 'https://<YourEsHost>:port'
# HTTP Privat
curl -u '<UserName>:<YourPassword>' 'http://<YourEsHost>:port'
# HTTPS Privat (gunakan -k untuk melewati validasi sertifikat)
curl -k -u '<UserName>:<YourPassword>' 'https://<YourEsHost>:port'
|
Parameter |
Deskripsi |
|
UserName |
Username default, elastic, adalah akun administrator dengan izin tertinggi pada kluster. Karena alasan keamanan, kami menyarankan agar Anda tidak menggunakan akun administrator default ini di lingkungan produksi. Anda dapat menggunakan mekanisme Role-Based Access Control (RBAC) Elasticsearch X-Pack untuk membuat role kustom, menetapkan izin, lalu menetapkan role tersebut kepada pengguna guna kontrol akses detail halus. Untuk informasi selengkapnya, lihat Kelola izin pengguna dengan role Elasticsearch X-Pack. |
|
YourPassword |
Password untuk UserName yang ditentukan. |
|
https |
Protokol akses. Protokol HTTP diaktifkan secara default. Kami menyarankan agar Anda mengaktifkan dan menggunakan protokol HTTPS untuk memastikan kerahasiaan, keamanan, dan integritas data saat transit. Untuk mengaktifkan HTTPS, login ke Konsol Elasticsearch. Pada halaman Basic Information instans Anda, pilih Configuration and Management > Security Settings pada panel navigasi, lalu aktifkan protokol HTTPS. Penting
|
|
YourEsHost |
Titik akhir kluster yang Anda peroleh di bagian "Sebelum memulai":
|
|
port |
Port untuk mengakses kluster. Port default adalah 9200 baik untuk jaringan pribadi VPC maupun akses publik. |
Contoh
# Akses HTTPS publik
curl -u 'user123:Passw0rd!' 'https://es-xx-xxxxxxxxxxxxxxxxx.public.elasticsearch.aliyuncs.com:9200'
# Akses HTTP privat
curl -u 'user123:Passw0rd!' 'http://es-cn-0pp1****.elasticsearch.aliyuncs.com:9200'
# Akses HTTPS privat (-k untuk melewati validasi sertifikat)
curl -k -u 'user123:Passw0rd!' 'https://es-cn-0pp1****.elasticsearch.aliyuncs.com:9200'
Koneksi yang berhasil akan mengembalikan informasi kluster berikut. Anda kemudian dapat menggunakan Elasticsearch REST APIs untuk mengelola kluster atau melakukan operasi pengindeksan.
{
"name" : "es-cn-aic**************-master-i-2",
"cluster_name" : "es-cn-aic**************",
"cluster_uuid" : "InmpfI1oQB2ijtdZ******",
"version" : {
"number" : "8.17.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "0bdf7********************************50279ae7c",
"build_date" : "2025-03-05T02:31:55.853663566Z",
"build_snapshot" : false,
"lucene_version" : "10.0.0",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "You Know, for Search"
}
Pemecahan masalah kegagalan koneksi
Jika Anda tidak dapat terhubung ke kluster Elasticsearch, periksa hal-hal berikut secara berurutan:
-
Konektivitas jaringan: Pastikan kluster Elasticsearch dan klien berada dalam VPC yang sama. Jika tidak berada dalam VPC yang sama, hubungkan kedua jaringan menggunakan Cloud Enterprise Network (CEN) atau NAT gateway.
-
Aturan security group: Periksa apakah aturan inbound ECS security group membuka port 9200. Dalam skenario sinkronisasi data RDS for MySQL, pastikan kluster Elasticsearch dan instans RDS for MySQL saling menambahkan alamat IP satu sama lain ke daftar putih IP publik atau daftar putih jaringan pribadi VPC mereka.
-
Tabel rute Docker: Jika klien berjalan dalam kontainer Docker, Docker mungkin memodifikasi tabel rute host dan mengganggu konektivitas antar-host dalam VPC yang sama. Jalankan perintah
route -npada klien untuk memeriksa tabel rute dan mengidentifikasi masalah routing. -
Nama domain dan port: Verifikasi bahwa titik akhir kluster (nama domain) dan port ditulis dengan benar. Untuk informasi lebih lanjut tentang cara mendapatkan titik akhir, lihat bagian "Sebelum memulai" dalam topik ini.
-
Pembatasan firewall dan routing: Periksa apakah firewall perusahaan atau pembatasan routing lainnya di jaringan Anda memblokir port 9200.
-
Pengaturan timeout: Tingkatkan parameter
ConnectTimeoutdanSocketTimeoutdi sisi klien untuk menghindari kegagalan koneksi akibat timeout palsu.
Untuk konfigurasi terkait, lihat bagian-bagian berikut dalam topik ini:
-
Jika Anda lupa kata sandi kluster, Anda dapat mengatur ulang di Konsol Elasticsearch.
-
Jika Anda mengaktifkan akses publik untuk pertama kalinya, hapus
127.0.0.1dari grup daftar putih default dan tambahkan alamat IP egress publik perangkat Anda. Untuk informasi selengkapnya, lihat bagian "Konfigurasikan daftar putih IP" dalam topik ini.