Saat menambahkan node Cassandra ke cluster, penting untuk mempertimbangkan dua poin utama berikut:
- Posisi node yang ada di cincin Cassandra tidak boleh berubah untuk meminimalkan streaming dan mempertahankan lingkaran yang seimbang.
- Jumlah node di semua pusat data harus tetap konsisten.
Untuk memastikan tujuan pertama, penting untuk menggandakan jumlah node di cluster Cassandra setiap kali Anda menambahkan node baru.
Misalnya, jika Anda memulai dengan topologi penginstalan cluster 12 node standar yang didistribusikan di dua pusat data, Anda akan memiliki total enam node Cassandra—tiga node di setiap pusat data. Untuk memperluas cluster ini, Anda harus menambahkan tiga node ke setiap pusat data, sehingga meningkatkan jumlah total node menjadi 12 (enam node di setiap pusat data). Jika diperlukan perluasan lebih lanjut, Anda harus menambahkan enam node tambahan ke setiap pusat data, sehingga menghasilkan jumlah total 24 node (12 node di setiap pusat data).
Dokumen ini memberikan petunjuk untuk menambahkan tiga node Cassandra baru ke penginstalan Edge untuk Private Cloud yang sudah ada. Langkah yang sama dapat diikuti untuk menambahkan node tambahan. Selalu pastikan bahwa saat memperluas cluster, Anda menggandakan jumlah node.
Untuk daftar persyaratan sistem untuk node Cassandra, lihat bagian Persyaratan Penginstalan.
Konfigurasi Edge yang ada
Semua topologi Edge yang didukung untuk sistem produksi menentukan untuk menggunakan tiga Cassandra
node. Tiga node ditetapkan ke properti CASS_HOSTS
di file konfigurasi
sebagaimana ditunjukkan di bawah ini:
IP1=10.10.0.1 IP2=10.10.0.2 IP3=10.10.0.3 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=1 APIGEE_LDAPPW=secret MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd
Perhatikan bahwa properti REGION
menentukan nama wilayah sebagai "dc-1". Anda memerlukannya
saat menambahkan node Cassandra baru.
Memodifikasi file konfigurasi untuk menambahkan tiga node Cassandra baru
Dalam contoh ini, tiga node Cassandra baru berada di alamat IP berikut:
- 10.10.0.14
- 10.10.0.15
- 10.10.0.16
Anda harus memperbarui file konfigurasi Edge terlebih dahulu untuk menambahkan node baru:
IP1=10.10.0.1 IP2=10.10.0.2 IP3=10.10.0.3 # Add the new node IP addresses. IP14=10.10.0.14 IP15=10.10.0.15 IP16=10.10.0.16 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com ... # Update CASS_HOSTS to add each new node after an existing nodes. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP14:1,1 $IP2:1,1 $IP15:1,1 $IP3:1,1 $IP16:1,1"
Cara ini memastikan bahwa node yang ada mempertahankan setelan token awal mereka, dan token awal setiap simpul baru berada di antara nilai token dari simpul yang ada.
Konfigurasi Edge
Setelah mengedit file konfigurasi, Anda harus:
- Mengonfigurasi ulang node Cassandra yang ada
- Menginstal Cassandra di node baru
- Mengonfigurasi ulang Server Pengelolaan
Mengonfigurasi ulang Cassandra yang ada node
Pada node Cassandra yang ada:
- Jalankan ulang setup.sh dengan "-p c" dan file konfigurasi baru:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
Menginstal Cassandra di node baru
Gunakan prosedur di bawah untuk menginstal Cassandra pada node baru.
Pada setiap node Cassandra baru:
- Instal Cassandra di ketiga node:
- Instal
apigee-setup
di node pertama seperti yang dijelaskan di bagian Menginstal Utilitas penyiapan edge apigee. - Instal Cassandra pada node pertama menggunakan file konfigurasi yang diupdate:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
- Ulangi kedua langkah ini untuk node Cassandra baru yang tersisa.
- Instal
- Membuat ulang tiga node Cassandra baru, dengan menentukan nama region untuk menjadi pusat data
tempat Anda menambahkan node (
dc-1
,dc-2
, dan seterusnya). Dalam contoh ini, parameternya adalahdc-1
:- Pada node pertama, jalankan:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h nodeIP rebuild dc-1
Dengan nodeIP adalah alamat IP node Cassandra.
Anda hanya perlu memasukkan nama pengguna dan {i>password<i} jika Anda mengaktifkan autentikasi JMX untuk Cassandra.
- Ulangi langkah ini pada node Cassandra baru yang tersisa.
- Pada node pertama, jalankan:
Mengonfigurasi ulang Server Pengelolaan
Pada node Management-Server
- Jalankan kembali setup.sh untuk mengupdate Server Pengelolaan untuk node Cassandra yang baru ditambahkan:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile
Mulai ulang semua Router dan Message Prosesor
- Di semua Router:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Di semua Pemroses Pesan:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Kosongkan kapasitas disk yang ada Node Cassandra
Setelah menambahkan node baru, Anda dapat menggunakan perintah nodetool cleanup
di
{i>node<i} yang sudah ada sebelumnya
untuk mengosongkan ruang {i>disk<i}. Perintah ini menghapus token konfigurasi yang tidak
lagi dimiliki oleh {i>node<i}
Cassandra yang sudah ada.
Untuk mengosongkan ruang {i>disk<i} pada simpul Cassandra yang sudah ada setelah menambahkan {i>node<i} baru, jalankan perintah berikut:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h cassandraIP cleanup
Anda hanya perlu memasukkan nama pengguna dan {i>password<i} jika Anda mengaktifkan autentikasi JMX untuk Cassandra.
Memverifikasi pembuatan ulang
Gunakan perintah berikut untuk memastikan bahwa build ulang berhasil:
nodetool [-u username -pw password] -h nodeIP netstats
Perintah ini harus menunjukkan MODE: Normal
saat node naik dan indeksnya
dibuat.
nodetool [-u username -pw password] -h nodeIP statusthrift
Harus menunjukkan bahwa server barang bekas sedang berjalan, yang memungkinkan Cassandra menerima klien baru permintaan.
nodetool [-u username -pw password] -h nodeIP statusbinary
Harus menunjukkan bahwa transportasi native (atau protokol biner) sedang berjalan.
nodetool [-u username -pw password] -h nodeIP describecluster
Harus menunjukkan bahwa node baru menggunakan versi skema yang sama dengan node lama.
Untuk informasi selengkapnya tentang penggunaan nodetool
, lihat referensi
dokumentasi penggunaan nodetool.