Bir kümeye Cassandra düğümü eklerken aşağıdaki iki önemli noktayı göz önünde bulundurmanız gerekir:
- Akışlamayı en aza indirmek ve dengeli bir halka sağlamak için Cassandra halkasındaki düğümlerin mevcut konumları değiştirilmemelidir.
- Tüm veri merkezlerindeki düğüm sayısı tutarlı olmalıdır.
İlk hedefi sağlamak için her yeni düğüm eklediğinizde Cassandra kümesindeki düğüm sayısını ikiye katlamanız çok önemlidir.
Örneğin, iki veri merkezine dağıtılmış standart bir 12 düğümlü küme kurulumu topolojisiyle başlarsanız her veri merkezinde üç tane olmak üzere toplam altı Cassandra düğümünüz olur. Bu kümeyi genişletmek için her veri merkezine üç düğüm eklemeniz gerekir. Böylece toplam düğüm sayısı 12'ye (her veri merkezinde altı düğüm) çıkar. Daha fazla genişleme gerekiyorsa her veri merkezine altı düğüm daha eklemeniz gerekir. Böylece toplam düğüm sayısı 24 olur (her veri merkezinde 12 düğüm).
Bu dokümanda, mevcut bir Edge for Private Cloud kurulumuna üç yeni Cassandra düğümü ekleme talimatları verilmektedir. Başka düğümler eklemek için aynı adımları uygulayabilirsiniz. Kümenizi genişletirken düğüm sayısını her zaman ikiye katladığınızdan emin olun.
Cassandra düğümüne yönelik sistem gereksinimlerinin listesi için Yükleme Şartları bölümüne bakın.
Mevcut Edge yapılandırması
Üretim sistemi için desteklenen tüm Edge topolojileri üç Cassandra düğümü kullanılmasını belirtir. Üç düğüm, yapılandırma dosyasında CASS_HOSTS
mülküne aşağıdaki gibi belirtilir:
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
REGION
mülkünün bölge adını "dc-1" olarak belirttiğini unutmayın. Yeni Cassandra düğümlerini eklerken bu bilgilere ihtiyacınız vardır.
Üç yeni Cassandra düğümünü eklemek için yapılandırma dosyasını değiştirme
Bu örnekte, üç yeni Cassandra düğümü aşağıdaki IP adreslerindedir:
- 10.10.0.14
- 10.10.0.15
- 10.10.0.16
Yeni düğümleri eklemek için öncelikle Edge yapılandırma dosyasını güncellemeniz gerekir:
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"
Bu sayede mevcut düğümler ilk jeton ayarlarını korur ve her yeni düğümün ilk jetonu, mevcut düğümlerin jeton değerleri arasında olur.
Edge'i yapılandırma
Yapılandırma dosyasını düzenledikten sonra:
- Mevcut Cassandra düğümlerini yeniden yapılandırma
- Cassandra'yı yeni düğümlere yükleme
- Yönetim sunucusunu yeniden yapılandırma
Mevcut Cassandra düğümlerini yeniden yapılandırın
Mevcut Cassandra düğümlerinde:
- setup.sh dosyasını "-p c" profiliyle ve yeni yapılandırma dosyasıyla yeniden çalıştırın:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
Cassandra'yı yeni düğümlere yükleme
Cassandra'yı yeni düğümlere yüklemek için aşağıdaki prosedürü uygulayın.
Her yeni Cassandra düğümünde:
- Cassandra'yı üç düğüme yükleyin:
apigee-setup
'yi Edge apigee kurulum yardımcı programını yükleme bölümünde açıklandığı şekilde ilk düğüme yükleyin.- Güncellenen yapılandırma dosyasını kullanarak Cassandra'yı ilk düğüme yükleyin:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
- Kalan yeni Cassandra düğümleri için bu iki adımı tekrarlayın.
- Üç yeni Cassandra düğümünü yeniden oluşturun. Bölge adını, düğümü eklediğiniz veri merkezi olarak belirtin (
dc-1
,dc-2
vb.). Bu örnektedc-1
:- İlk düğümde şunları çalıştırın:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h nodeIP rebuild dc-1
Buradaki nodeIP, Cassandra düğümünün IP adresidir.
Yalnızca Cassandra için JMX kimlik doğrulamasını etkinleştirdiyseniz kullanıcı adınızı ve şifrenizi iletmeniz gerekir.
- Bu adımı kalan yeni Cassandra düğümlerinde tekrarlayın.
- İlk düğümde şunları çalıştırın:
Yönetim sunucusunu yeniden yapılandırma
Yönetim sunucusu düğümünde
- Yeni eklenen Cassandra düğümleri için Yönetim Sunucusu'nu güncellemek üzere setup.sh dosyasını yeniden çalıştırın:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile
Tüm Yönlendiricileri ve Mesaj İşleme
- Tüm yönlendiricilerde:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Tüm Mesaj İşleyicilerde:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Mevcut Cassandra düğümlerinde disk alanını boşaltma
Yeni bir düğüm ekledikten sonra, disk alanında yer açmak için önceden var olan düğümlerde nodetool cleanup
komutunu kullanabilirsiniz. Bu komut, artık mevcut Cassandra düğümüne ait olmayan yapılandırma jetonlarını temizler.
Yeni bir düğüm ekledikten sonra önceden var olan Cassandra düğümlerinde disk alanı açmak için aşağıdaki komutu yürütün:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h cassandraIP cleanup
Yalnızca Cassandra için JMX kimlik doğrulamasını etkinleştirdiyseniz kullanıcı adınızı ve şifrenizi iletmeniz gerekir.
Yeniden oluşturmayı doğrulama
Yeniden oluşturma işleminin başarılı olduğunu doğrulamak için aşağıdaki komutları kullanın:
nodetool [-u username -pw password] -h nodeIP netstats
Bu komut, yerel aktarımın (veya ikili protokolün) çalışıp çalışmadığını gösterir. Bu sayede Cassandra yeni istemci isteklerini kabul edebilir.
nodetool [-u username -pw password] -h nodeIP statusbinary
Bu komut, yerel aktarımın (veya ikili protokolün) çalışıp çalışmadığını belirtir.
nodetool [-u username -pw password] -h nodeIP describecluster
Bu komut, yeni düğümlerin eski düğümlerle aynı şema sürümünü kullanıp kullanmadığını gösterir.
nodetool
kullanımı hakkında daha fazla bilgi için nodetool kullanım dokümanlarını inceleyin.