CockroachDB adalah database SQL terdistribusi open-source dan skalabel untuk aplikasi cloud. CockroachDB menyediakan konsistensi tingkat berikutnya, database SQL yang direplikasi, dan penyimpanan data transaksional. CockroachDB menyimpan data Anda di beberapa lokasi sehingga pengiriman data lebih cepat. Selain itu, mudah untuk menskalakan dan menyediakan ketersediaan tinggi dan toleransi kesalahan untuk aplikasi Anda.
Dalam tutorial ini, kami akan menunjukkan cara menginstal cluster CockroachDB di server Debian 11.
Prasyarat
- Dua atau lebih Server Debian 11.
- Kata sandi root dikonfigurasi di server.
Menginstal CockroachDB di Ketiga Server
Untuk pemasangannya, cockroachdb mudah dipasang. Itu karena cockroachdb menyediakan file biner untuk sistem Linux yang dapat Anda unduh ke sistem Anda.
Unduh file biner cockroachdb untuk Linux menggunakan perintah berikut. Perintah ini akan mengunduh file biner cockroachdb, mengekstrak file terkompresi, lalu memindahkan file biner cockroachdb ke /usr/local/bin direktori.
curl https://binaries.cockroachdb.com/cockroach-v21.2.8.linux-amd64.tgz | tar -xz && sudo cp -i cockroach-v21.2.8.linux-amd64/cockroach /usr/local/bin/
cockroachdb menggunakan pustaka GEOS bawaan khusus. Pustaka GEOS disertakan pada file terkompresi cockroachdb dan harus dipasang di lib direktori.
Buat direktori baru /usr/local/lib/cockroach menggunakan perintah di bawah ini.
mkdir -p /usr/local/lib/cockroach
Sekarang salin perpustakaan GEOS ke /usr/local/lib/cockroach direktori.
cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos.so /usr/local/lib/cockroach/
cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos_c.so /usr/local/lib/cockroach/
Instalasi dasar cockroachdb diinstal pada server Debian.
Jalankan perintah berikut untuk memeriksa file biner cockroachdb dan versi terbaru cockroachdb yang baru saja Anda instal.
which cockroach
cockroach version
Anda akan mendapatkan output berikut.
Menyiapkan Firewall
Jika Anda menjalankan Firewall di server Debian, Anda perlu menambahkan port cockroachdb ke konfigurasi firewall.
cockroachdb menggunakan port 8080 untuk cockroachdb administrasi berbasis web, dan port 26257 untuk koneksi pengguna dan konfigurasi cluster.
Tambahkan port 8080 dan 25267 ke firewall UFW menggunakan perintah berikut.
sudo ufw allow 8080/tcp
sudo ufw allow 26257/tcp
Sekarang muat ulang aturan firewall UFW dan verifikasi status aturan firewall saat ini.
sudo ufw reload
sudo ufw status
Di bawah ini Anda dapat melihat port 8080 dan 25267 ditambahkan ke firewall UFW.
Menginisialisasi Cluster CockroachDB
Untuk menginisialisasi cluster cockroachdb, jalankan perintah di bawah ini pada server11.
Anda perlu mengubah nilai opsi berikut:
- --toko: untuk menyimpan data cluster CockroachDB.
- --listen-addr :alamat IP mana yang akan dijalankan cockroachdb di server. Port default untuk cockroachdb adalah port 25267.
- --http-addr: alamat IP mana yang akan dijalankan administrasi berbasis web cockroachdb. Administrasi cockroachdb berbasis web default adalah port 8080.
cockroach start \
--insecure \
--store=server11 \
--listen-addr=192.168.10.11:26257 \
--http-addr=192.168.10.11:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background
Anda akan mendapatkan output berikut.
Sekarang pindah ke server2 dan jalankan perintah berikut untuk memulai cockroachdb dan bergabung dengan cluster. Ubah alamat IP di --listen-addr dan --http-addr ke alamat IP server2.
cockroach start \
--insecure \
--store=server2 \
--listen-addr=192.168.10.13:26257 \
--http-addr=192.168.10.13:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background
Anda akan mendapatkan output berikut dari server2.
Selanjutnya, pindah ke server3 dan jalankan perintah berikut untuk memulai cockroachdb dan bergabung dengan cluster cockroachdb. Juga, ubah alamat IP --listen-addr dan --http-addr ke alamat IP server3.
cockroach start \
--insecure \
--store=server3 \
--listen-addr=192.168.10.14:26257 \
--http-addr=192.168.10.14:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background
Anda akan mendapatkan output berikut dari server3.
Setelah semua selesai, kembali ke server11 dan jalankan perintah di bawah ini untuk menginisialisasi cluster cockroachdb.
cockroach init --insecure --host=192.168.10.11:26257
Anda akan mendapatkan pesan keluaran 'cluster berhasil diinisialisasi ', yang berarti cluster cockroachdb berhasil diinisialisasi.
Anda dapat menjalankan perintah grep di bawah ini untuk memeriksa log inisialisasi cockroachdb. Ubah direktori server11 dengan --store . Anda direktori cockroachdb.
grep 'node starting' server11/logs/cockroach.log -A 11
Di bawah ini Anda dapat melihat log dari inisialisasi cluster cockroachdb server11.
Terakhir, buka browser web Anda dan kunjungi alamat IP server diikuti oleh port 8080.
http://192.168.10.11:8080/
Di bawah ini Anda dapat melihat ada tiga node pada cluster cockroachdb.
Menguji Buat Database Baru di CockroachDB
Sekarang Anda memiliki cluster cockroachdb yang sedang berjalan, Anda dapat menggunakan server apa pun sebagai gateway SQL untuk mengakses cockroachdb.
Jalankan perintah cockroach di server11 untuk terhubung ke cluster cockroachdb.
cockroach sql --insecure --host=192.168.10.11:26257
Setelah Anda terhubung ke shell SQL, jalankan kueri di bawah ini untuk membuat database baru.
CREATE DATABASE bank;
Sekarang buat tabel baru di database menggunakan kueri berikut.
CREATE TABLE bank.accounts (id INT PRIMARY KEY, balance DECIMAL);
Selanjutnya, impor data sampel ke tabel.
INSERT INTO bank.accounts (1, 1000.50);
Verifikasi data pada database menggunakan kueri berikut.
SELECT * FROM bank.accounts;
Anda akan mendapatkan output berikut.
Selanjutnya, pindah ke server2 atau server3 dan masuk ke shell SQL cockroachdb menggunakan perintah berikut.
cockroach sql --insecure --host=192.168.10.14:26257
Setelah Anda terhubung ke shell SQL di server3, jalankan kueri berikut untuk memeriksa dan memverifikasi replikasi database.
SELECT * FROM bank.accounts;
Anda akan melihat database dan data dari server11 secara otomatis direplikasi ke server2 dan server3.
Kesimpulan
Selamat! Anda sekarang telah menginstal dan mengonfigurasi klaster cockroachdb di server Debian 11. Selain itu, Anda telah mempelajari cara menghubungkan ke cockroachdb shell dan perintah SQL dasar untuk membuat database dan memasukkan data.