Cara Setup Cassandra Cluster pada Banyak Node
⚡ Ringkasan Cerdas
Cassandra Cluster Mengelompokkan beberapa node sehingga data terdistribusi dan tidak ada satu mesin pun yang menyimpan semuanya. Halaman ini menjelaskan komponen klaster, partisi dan token ring, prasyarat, pengaturan konfigurasi yang menggabungkan node, dan cara memverifikasi hasilnya.
Apa itu Cassandra Cluster?
A Cassandra cluster adalah salah satu shell dalam keseluruhan Cassandra basis data. NS Cassandra Klaster tersebut berisi banyak lapisan unit penyimpanan yang berbeda, dan setiap lapisan berisi lapisan lainnya.
Organisasi besar seperti AmazonFacebook, dan lain-lain, memiliki sejumlah besar data untuk dikelola. Oleh karena itu, organisasi-organisasi ini tidak dapat menyimpan data dalam jumlah besar tersebut pada satu mesin saja. Di sinilah mereka menggunakan basis data seperti... Cassandra dengan arsitektur terdistribusi.
Organisasi-organisasi ini menyimpan sejumlah besar data tersebut pada banyak node. Node-node ini saling berkomunikasi. Untuk tujuan ini, Cassandra klaster terbentuk.
- Cluster Pada dasarnya, ini adalah sekelompok node, sehingga node-node tersebut dapat berkomunikasi satu sama lain dengan mudah.
- Node koordinator adalah node yang menerima permintaan klien dan berkomunikasi dengan replika atas nama klien tersebut. Node mana pun dapat bertindak sebagai koordinator untuk permintaan apa pun.
Partisi
Pemartisi menentukan bagaimana data harus didistribusikan di cluster. Partitioner menggunakan fungsi hash untuk mendistribusikan data pada cluster. Dibutuhkan kunci partisi untuk menghitung hash. Hash itu disebut token. Data didistribusikan berdasarkan token ini.
Partisi default adalah Murmur3Partitioner, yang menghasilkan token yang tersebar merata di seluruh rentang tetap. Setiap node memiliki satu atau lebih rentang dari rentang tersebut, dan kumpulan rentang tersebut membentuk cincin tokenKarena penugasan dilakukan berdasarkan hash dan bukan berdasarkan nilai, menambahkan sebuah node hanya memindahkan rentang yang diambil alihnya, bukan mengacak ulang seluruh dataset.
Prasyarat untuk Cassandra Cluster
Ada persyaratan berikut untuk pengaturan klaster.
- Anda harus memiliki beberapa mesin, fisik atau virtual, yang bertindak sebagai node.
- Node harus dapat saling terhubung di jaringan. Port 7000 untuk lalu lintas antar node, 7001 jika TLS diaktifkan, dan 9042 untuk koneksi klien harus terbuka di antara mereka.
- Linux harus diinstal pada setiap node. Ini adalah platformnya. Cassandra diuji dan didukung pada.
- Apache Cassandra Harus diinstal pada setiap node, dengan versi yang sama. Versi campuran tidak dapat menyelesaikan kesepakatan skema.
- Sebuah dukungan JDK harus diinstal pada setiap mesin, dengan JAVA_HOME diatur.
- Jam harus disinkronkan dengan NTP. Cassandra Menyelesaikan penulisan yang bertentangan berdasarkan stempel waktu, sehingga pergeseran waktu secara diam-diam menghasilkan hasil yang salah.
Persyaratan terakhir adalah yang paling sering terlewatkan, dan hal ini menyebabkan masalah data daripada kegagalan saat memulai aplikasi.
.
Cara Install Cassandra Cluster di Linux
Cassandra Perangkat lunak ini harus diinstal pada setiap mesin sebelum salah satu dari mereka dapat bergabung dengan klaster. Tangkapan layar di bawah ini berasal dari penginstal grafis DataStax Enterprise, yang merupakan cara umum saat panduan ini ditulis. Penginstal tersebut tidak lagi didistribusikan untuk penggunaan umum, jadi pendekatan saat ini diberikan terlebih dahulu dan wizard selanjutnya sebagai referensi.
Metode saat ini: menginstal Apache Cassandra Instal paket atau file tarball biner pada setiap node secara identik, kemudian verifikasi bahwa masing-masing dapat berjalan sendiri sebelum mencoba menggabungkannya.
tar -xzf apache-cassandra-x.y.z-bin.tar.gz -C /opt/ export CASSANDRA_HOME=/opt/apache-cassandra-x.y.z $CASSANDRA_HOME/bin/cassandra -f
Setelah satu node berhasil dijalankan dengan bersih, hentikan node tersebut, bersihkan direktori datanya, dan lanjutkan ke bagian konfigurasi klaster di bawah ini.
Langkah 1) Jalankan Cassandra Pengaturan edisi perusahaan. Pada Linux Buka terminal, jalankan program setup. Halaman berikut akan ditampilkan.
Halaman ini tidak memberikan informasi apa pun yang diperlukan. Itu hanya memberikan informasi tentang Cassandra Versi: kapan. Jadi lewati halaman ini dan tekan tombol berikutnya.
Langkah 2) Setujui perjanjian lisensi. Setelah menekan tombol berikutnya, halaman berikut akan ditampilkan.
Halaman ini memberikan informasi tentang paket dan sub paket di Cassandra yang akan diinstal. Di bawahnya akan muncul pertanyaan tentang lisensi. Centang kotak centang 'Saya menerima perjanjian' dan tekan tombol berikutnya.
Langkah 3) Instal Builder dan klik Berikutnya. Setelah menekan tombol berikutnya, Anda akan melihat halaman berikut.
Halaman ini menanyakan Anda tentang opsi instalasi.
- Pertama-tama, ia akan menanyakan direktori instalasi. Secara default, ini diinstal di direktori home.
- Selanjutnya ditanyakan tentang jenis instalasi, pilih Simple Install.
- Selanjutnya, ia menanyakan tentang pembaruan sistem, centang 'tidak'.
- Selanjutnya, akan muncul pilihan antarmuka default. Ada dua opsi, Anda dapat menginstal di localhost atau memilih alamat IP. Pilih alamat IP untuk instalasi.
- Tekan tombol berikutnya.
Langkah 4) Atur Node dan Klik Berikutnya. Setelah menekan tombol berikutnya, halaman berikut akan ditampilkan.
Halaman ini menanyakan tentang pengaturan node.
- Pertama, pilih tipe Node 'Cassandra Node'.
- Berikutnya, pada Ring Name, berikan nama klaster Anda. Cluster nama harus sama untuk semua node dalam klaster yang sama.
- Selanjutnya, pilih seed. Seed adalah node yang dihubungi oleh node non-seed lainnya saat mereka mulai beroperasi.
- Setelah memberikan informasi ini, tekan tombol berikutnya.
Langkah 5) Instal agen pemantauan. Setelah menekan tombol berikutnya, halaman berikut akan ditampilkan. Halaman ini meminta alamat IP tempat agen harus diinstal.
- Agen diperlukan untuk konsol pemantauan, di mana semua node dapat diamati di satu tempat.
- Setelah memberikan informasi ini, tekan tombol berikutnya.
Langkah 6) Tekan tombol Berikutnya untuk Instalasi. Setelah menekan tombol Berikutnya, halaman berikut akan ditampilkan.
Sekarang setup siap untuk diinstal. Tekan tombol berikutnya.
Langkah 7) Tunggu proses instalasi. Setelah menekan tombol berikutnya, halaman berikut akan ditampilkan.
Proses instalasi akan dimulai.
Langkah 8) Klik tombol Selesai. Setelah instalasi, halaman berikut akan ditampilkan. Pada halaman yang sama, Anda akan melihat tanda centang untuk opsi yang muncul secara default.
Mengonfigurasi cassandra.yaml untuk Menggabungkan Node
Instalasi saja tidak akan membuat klaster. Node hanya akan saling menemukan setelah empat pengaturan dalam file cassandra.yaml disepakati, dan file inilah yang seringkali salah dalam pengaturan klaster.
cluster_name: 'Guru99 Cluster' seed_provider: - class_name: org.apache.cassandra.locator.SimpleSeedProvider parameters: - seeds: "192.168.1.10,192.168.1.11" listen_address: 192.168.1.10 rpc_address: 0.0.0.0 broadcast_rpc_address: 192.168.1.10 endpoint_snitch: GossipingPropertyFileSnitch
- nama_kluster Harus cocok di setiap node. Ketidakcocokan adalah penyebab paling umum sebuah node menolak untuk bergabung.
- biji Daftar ini mencantumkan titik kontak yang dihubungi oleh node awal. Dua atau tiga node awal per pusat data sudah cukup; menjadikan setiap node sebagai node awal mencegah bootstrap otomatis.ping.
- alamat_mendengarkan adalah alamat yang digunakan node lain untuk mencapai node ini. Alamat tersebut harus berupa alamat yang dapat dirutekan, bukan localhost.
- endpoint_snitch mengatakan Cassandra Tata letak rak dan pusat data. GossipingPropertyFileSnitch adalah pilihan yang umum, dengan nilai yang ditetapkan dalam cassandra-rackdc.properties.
Mengubah nama snitch atau cluster setelah data ada memerlukan langkah tambahan, jadi keduanya harus diputuskan sebelum node pertama dimulai.
Mulai Cassandra Node
Setelah menginstal Cassandra Pada setiap node, jalankan server dan ikuti langkah-langkah di bawah ini. Urutan penting: jalankan node seed terlebih dahulu, satu per satu, tunggu hingga masing-masing node melaporkan status aktif sebelum menjalankan node berikutnya. Menjalankan beberapa node secara bersamaan dapat menyebabkan konflik rentang token.
Langkah 1) Pergi ke Cassandra direktori instalasi dan mulai server.
bin/cassandra -f
Dengan menjalankan perintah ini, maka Cassandra Server akan dimulai. Berikut tangkapan layarnya. Cassandra Server sedang dimulai.
Setelah kurang lebih satu menit, server akan aktif. Mulai setiap server node satu per satu. Setelah semua server node dimulai, Anda Cassandra cluster siap digunakan.
Langkah 2) Verifikasi bahwa setiap node telah bergabung dengan memeriksa cincin dari salah satu node tersebut.
nodetool status nodetool describecluster
Setiap node harus muncul dengan status UN, yang berarti Up dan Normal, dan kolom Owns seharusnya menunjukkan persentase yang kurang lebih sama. Satu versi skema dalam output describecluster mengkonfirmasi bahwa semua node menyetujui skema tersebut.
Tiga gejala mencakup sebagian besar kegagalan. Node yang tidak pernah muncul biasanya memiliki cluster_name yang tidak cocok atau port 7000 yang diblokir. Node yang macet di UJProses penggabungan masih mengalirkan data dan hanya membutuhkan waktu pada klaster besar. Kepemilikan yang sangat tidak merata menunjukkan kesalahan konfigurasi snitch, di mana node ditempatkan di rak atau pusat data yang salah.
Dengan kondisi ring yang sehat, pengaturan replikasi untuk setiap keyspace menentukan bagaimana data menyebar di dalamnya, seperti yang dijelaskan dalam Cassandra ruang kunci tutorial dan Cassandra arsitektur kerusakan.











