AWS ES Domain

Jika Elasticsearch cluster kamu berada didalam sebuah VPC, maka langkah pertama adalah mengkonfigurasi Security Group yang terpilih untuk Elasticsearch domain kamu.

1: Security Group


Misalkan Security Group yang terpilih untuk Elasticsearch cluster kamu namanya adalah Elasticsearch, maka edit Inbound rules pada Security Group tersebut, kemudian tambah seperti terlihat pada gambar berikut.

AWS ES Security Group Inbound

2: SSH Tunnel


Pergunakan SSH Tunnel dari komputer lokal kamu, ke sebuah Instance EC2 yang kamu miliki, dimana instance tersebut berada didalam sebuah VPC yang sama dengan target Elasticsearch cluster.

ssh -i ~/path/to/key-pair.pem <ec2_instance_public_ip> \
-l <ec2_user> \
-N -L 9200:<ganti_dengan_elasticsearch_domain_endpoint_kamu_tanpa_https>:443

3: Coba mengakses


Silahkan coba mengakses https://localhost:9200 atau https://localhost:9200/_plugin/kibana melalui web browser. Masukan kredensial master user kamu jika diminta.

4: SSL Error


Ketika mengakses Elasticsearch cluster melalui aplikasi yang kamu punya / develop, dan muncul error berhubungan dengan SSL. Bisa coba akali sebagai berikut.

4.1: Tambahkan host

Tambahkan host endpoint Elasticsearch domain kamu didalam file hosts, kalau saya memakai Linux berarti /etc/hosts, sebagai berikut:

127.0.0.1       <ganti_dengan_host_elasticsearch_domain_endpoint_kamu_tanpa_https>

4.2: Root CA

Terdapat aplikasi / tools yang membutuhkan sertifikat Root CA supaya SSL dapat terverifikasi, contohnya cURL, maka kamu bisa mengunduh sertifikatnya dari Amazon Trust Repository. Pilih PEM dari Root CA yang sesuai. Kalau saya mememakai Amazon Root CA 1.

Copy PEM dan pergunakan untuk aplikasi kamu yang membutuhkannya.