setup cockcroachdb cluster pada ubuntu 18.x

0
315

halo sobat sekolahlinux kali ini saya akan sedikit memberikan sebuah artikel tentang bagaimana cara setup cockcroachdb cluster pada ubuntu 18.x, artikel ini sendiri saya buat dikarenakan official doc dari cockcroachdb sendiri menurut saya kurang begitu jelas, oke langsung saja.

pada tutorial kali ini saya beranggapan sobat sudah menyiapkan 3 buah vm dengan detail ip address sebagai berikut

  • node1 = 192.168.10.5
  • node2 = 192.168.10.6
  • node3 = 192.168.10.7

setup install cockroachdb

oh iya untuk cockcroachdb ini sendiri akan saya setup di dalam folder /opt/, jalankan perintah dibawah ini pada ke 3 node

cd /opt/
mkdir certs

selanjutnya jalankan perintah installasi dibawah ini pada ke 3 node

wget -qO- https://binaries.cockroachdb.com/cockroach-v19.1.5.linux-amd64.tgz | tar  xvz
cp -i cockroach-v19.1.5.linux-amd64/cockroach /usr/local/bin

generate the certificate authority

selanjutnya jika sudah jalankan perintah dibawah ini hanya pada node1 saja

cockroach cert create-ca --certs-dir=/opt/certs --ca-key=/opt/certs/ca.key

jika sudah jalankan perintah dibawah dari node1 untuk copy hasil generate security certificates diatas ke node2 dan node3

scp /opt/certs/* root@192.168.10.6:/opt/certs/
scp /opt/certs/* root@192.168.10.7:/opt/certs/

generate client certificate and key

jika sudah jalankan perintah dibawah ini pada node1, node2 & node3 untuk generate client certificate and key

cockroach cert create-client root --certs-dir=/opt/certs --ca-key=/opt/certs/ca.key

lalu jalankan perintah dibawah ini pada node1 untuk generate node certificate and key

cockroach cert create-node localhost $(hostname) 192.168.10.5 --certs-dir=/opt/certs --ca-key=/opt/certs/ca.key

lalu jalankan perintah dibawah ini pada node2 untuk generate node certificate and key

cockroach cert create-node localhost $(hostname) 192.168.10.6 --certs-dir=/opt/certs --ca-key=/opt/certs/ca.key

lalu jalankan perintah dibawah ini pada node3 untuk generate node certificate and key

cockroach cert create-node localhost $(hostname) 192.168.10.7 --certs-dir=/opt/certs --ca-key=/opt/certs/ca.key

start cluster cockroachdb

jika sudah maka lakukan perintah dibawah ini untuk mulai menjalankan cluster cockcroachdb, lakukan di node1

cockroach start --background --certs-dir=/opt/certs --store=/opt/cockroach-data --advertise-host=192.168.10.5 --listen-addr=192.168.10.5 --join=192.168.10.5:26257,192.168.10.6:26257,192.168.10.7:26257 --log-dir=/opt/cockroach-log --log-dir-max-size=4GiB --log-file-max-size=1GiB;

lalu jalankan perintah ini pada node2

cockroach start --background --certs-dir=/opt/certs --store=/opt/cockroach-data --advertise-host=192.168.10.6 --listen-addr=192.168.10.6 --join=192.168.10.5:26257,192.168.10.6:26257,192.168.10.7:26257 --log-dir=/opt/cockroach-log --log-dir-max-size=4GiB --log-file-max-size=1GiB;

lalu jalankan perintah ini pada node3

cockroach start --background --certs-dir=/opt/certs --store=/opt/cockroach-data --advertise-host=192.168.10.7 --listen-addr=192.168.10.7 --join=192.168.10.5:26257,192.168.10.6:26257,192.168.10.7:26257 --log-dir=/opt/cockroach-log --log-dir-max-size=4GiB --log-file-max-size=1GiB;

jika sudah dijalankan perintah-perintah diatas sekarang jalankan perintah dibawah ini pada node1 untuk initialization cluster untuk pertama kali

cockroach init --certs-dir=/opt/certs --host=192.168.10.5:26257

check cluster status

jalankan perintah dibawah pada node1, untuk ip yang digunakan pada paramater --host menyesuaikan dengan ip vm dimana perintah dibawah ini dijalankan, karena ini saya jalankan di node1 maka ip yang saya gunakan di --host adalah ip 192.168.10.5

cockroach node --certs-dir=/opt/certs status --host=192.168.10.5

jika sudah menjalankan perintah diatas maka akan muncul output seperti dibawah ini

  id |      address       |  build  |            started_at            |            updated_at            | is_available | is_live  
+----+--------------------+---------+----------------------------------+----------------------------------+--------------+---------+
   1 | 192.168.10.5:26257 | v19.1.5 | 2019-11-30 08:37:23.56232+00:00  | 2019-11-30 08:37:33.495189+00:00 | true         | true     
   2 | 192.168.10.6:26257 | v19.1.5 | 2019-11-30 08:28:48.974302+00:00 | 2019-11-30 08:37:31.17658+00:00  | true         | true     
   3 | 192.168.10.7:26257 | v19.1.5 | 2019-11-30 08:28:55.444789+00:00 | 2019-11-30 08:37:33.087236+00:00 | true         | true     
(3 rows)

use cockroachdb sql client cli

jalankan perintah dibawah pada node1, untuk ip yang digunakan pada paramater --host menyesuaikan dengan ip vm dimana perintah dibawah ini dijalankan, karena ini saya jalankan di node1 maka ip yang saya gunakan di --host adalah ip 192.168.10.5

cockroach sql --certs-dir=/opt/certs --host=192.168.10.5

jalankan perintah dibawah ini untuk membuat user admin dan password, yang mana user ini nanti bisa kamu gunakan untuk authentication pada web-ui

CREATE USER admin WITH PASSWORD 'sekolahlinux2019!';

admin web-ui

jika sudah maka kalian bisa membuka web-ui admin untuk check cluster, web-ui bisa di lihat dari web browser dengan url https://ip_node_cockroachdb:8080

oke sekian tutorial kali ini, semoga bermanfaat jika ada yang ditanyakan silahkan comment atau bisa japri di linkedin saya