Bileşen yapılandırma dosyalarınızdaki IP adreslerini senkronize etmezseniz bileşenleri bir makineden diğerine taşımak yapılandırma uyuşmazlığına neden olabilir.
Bu bölümde, yapılandırma uyuşmazlıklarının nasıl teşhis edilip düzeltileceği açıklanmaktadır.
IP adresleri ve ana makine adları
Bileşen yapılandırma dosyalarınızda ana makine adları yerine IP adresleri kullanmanız gerekir.
Bazı bileşen yapılandırma dosyaları IP adresleri yerine ana makine adlarını kullanmanıza izin verse de ana makine adlarını kullanmak sorun gidermeyi zorlaştırabilir. Örneğin, ana makine adları DNS sunucusu bağlantısı, arama hataları ve senkronizasyonla ilgili sorunların kaynağı olabilir.
Bu nedenle Apigee, tüm bileşen yapılandırmaları için IP adreslerinin kullanılmasını kesinlikle önerir. Cassandra gibi bazı durumlarda IP adresleri kullanmanız gerekir ve ana makine adlarını kullanamazsınız. Belgelerdeki örneklerin çoğunda, bileşen yapılandırması için IP adresleri kullanılır.
Ana makine adları ve IP adresleri için Apigee sunucularını taşırken aşağıdaki senaryoların etkilerini göz önünde bulundurun:
| Senaryo | Sunucuları taşımanın etkisi |
|---|---|
| IP adresinde değişiklik | Orijinal IP adresine referans veren tüm ilgili dosyaları güncelleyin. |
| IP adresi değişmeden ana makine adının değişmesi | Etkili olmadı |
| IP adresi değişikliğiyle birlikte ana makine adı değişikliği | IP adresi değişikliğiyle aynıdır. |
Cassandra düğümünün IP adresini değiştirme
Bir Cassandra düğümünün IP adresini değiştirmek için aşağıdaki adımları uygulayın:
Tek bir Cassandra düğümü içeren yapılandırmalar için
- Değiştirilen sistemde
/opt/apigee/customer/application/cassandra.propertiesdosyasını düzenleyin. Dosya yoksa oluşturun. - Aşağıdaki parametreleri değiştirin:
- Sistemin yeni IP adresini belirtmek için
conf_cassandra_seedsveconf_cassandra_listen_addressparametrelerini ayarlayın. conf_cassandra_rpc_addressdeğerini yeni IP adresini veya 0.0.0.0'ı (Cassandra Thrift'in tüm arayüzleri dinlemesine olanak tanır) kullanacak şekilde değiştirin.
- Sistemin yeni IP adresini belirtmek için
/opt/apigee/apigee-cassandra/conf/cassandra-topology.propertiesdosyasını bir düzenleyicide açın. Eski IP adresini ve varsayılan ayarı şu biçimde görürsünüz:192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
Bu bilgileri kaydedin.
- Belirtilen eski IP adresini yeni IP adresiyle değiştirmek için
/opt/apigee/customer/application/cassandra.propertiesdosyasını düzenleyin:conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n
IP adresinden sonra "\n" eklediğinizden ve yukarıdaki 3. adımda bulduğunuz varsayılan ayarları belirttiğinizden emin olun.
- Cassandra'yı yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Gerekirse ZooKeeper'ı da onarın (aşağıya bakın). Aksi takdirde, Yönetim Sunucusu'ndan başlayarak her Apigee platform bileşenini yeniden başlatın.
Birden fazla Cassandra düğümü (halka) içeren yapılandırmalar için
- Değiştirilen düğüm bir çekirdek düğümse halkadaki her sistemde
/opt/apigee/customer/application/cassandra.propertiesdosyasını düzenleyin veconf_cassandra_seedsparametresini, değiştirilen sistemin yeni IP'sini içerecek şekilde değiştirin. cassandra.properties dosyası yoksa oluşturun. - Değiştirilen sistemde
/opt/apigee/customer/application/cassandra.propertiesdosyasını düzenleyin ve aşağıdaki parametreleri değiştirin:conf_cassandra_listen_addressayarını yeni IP adresini kullanacak şekilde yapın.conf_cassandra_rpc_addressdeğerini yeni IP adresini veya "0.0.0.0" değerini (Cassandra Thrift'in tüm arayüzleri dinlemesine olanak tanır) kullanacak şekilde ayarlayın.
/opt/apigee/apigee-cassandra/conf/cassandra-topology.propertiesdosyasını bir düzenleyicide açın. Tüm Cassandra IP adreslerini ve varsayılan ayarı şu biçimde görmeniz gerekir:192.168.56.101=dc-1:ra-1 192.168.56.102=dc-1:ra-1 192.168.56.103=dc-1:ra-1 default=dc-1:ra-1
Bu bilgileri kaydedin.
- Belirtilen eski IP adresini yeni IP adresiyle değiştirmek için
/opt/apigee/customer/application/cassandra.propertiesdosyasını düzenleyin:conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n
Her IP adresinden sonra "\n" eklediğinizden ve yukarıda 3. adımda kaydettiğiniz varsayılan ayarları kullandığınızdan emin olun.
- Değiştirilen sistemde Cassandra'yı yeniden başlatın. Değiştirilen sistem bir çekirdek düğümse değiştirilen çekirdek düğümü kullanan her sistemi de yeniden başlatın.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Halkanın tamamlandığından emin olmak için değiştirilen düğümde
nodetool ringkomutunu çalıştırın. Yardımcı programı/opt/apigee/apigee-cassandra/binadresinde bulabilirsiniz.nodetool [-u username -pw password] -h localhost ring
Yalnızca Cassandra için JMX kimlik doğrulamasını etkinleştirdiyseniz kullanıcı adınızı ve şifrenizi iletmeniz gerekir.
- Değiştirilen düğümde
nodetool repairkomutunu çalıştırın. Bu işlemin biraz zaman alabileceğini unutmayın. Bu nedenle, işlemin API trafiğinin yoğun olduğu saatlerde yapılmaması önemle tavsiye edilir.nodetool [-u username -pw password] -h localhost repair -pr
- Gerekirse ZooKeeper'ı onarın (aşağıya bakın), ardından Yönetim Sunucusu'ndan başlayarak her Apigee platform bileşenini yeniden başlatın.
Veri deposu kayıtlarını güncelleme
- Aşağıdaki komutları kullanarak eski IP adresini belirten veri deposu kayıtlarının UUID'lerini bulun. "type" ve "UUID" parametrelerini not edin:
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics®ion=DC" | egrep -i '[type|internalip|uuid|region]'
DC, veri merkezinin adıdır. Tek bir veri merkezi kurulumunda değer genellikle "dc-1" olur.
-
- Aşağıdaki komutlardan birini kullanarak yeni IP adreslerini kaydedin. Gerekli komut, değiştirilen düğümün türüne bağlıdır.
- type="application-datastore" için:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP®ion=REGION&pod=central" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- type="kms-datastore" için:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \ &InternalIP=NEWIP®ion=REGION&pod=GATEWAY_POD" -H 'content-type: \ application/x-www-form-urlencoded' -X POST
- type="reportcrud-datastore" için:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \ "Type=reportcrud-datastore&InternalIP=NEW_IP®ion=REGION&pod=analytics" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- type="application-datastore" için:
- IP adresinin değiştirildiği sistemin UUID'si için eski kayıtları silin. Bu UUID'lerin her biri için:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
ZooKeeper düğümünün IP adresini değiştirme
Bir ZooKeeper düğümünün IP adresini değiştirmek için aşağıdaki adımları uygulayın:
IP adresini değiştirme ve ZooKeeper topluluğunu yeniden başlatma (yalnızca çok düğümlü topluluk yapılandırmaları için)
/opt/apigee/apigee-zookeeper/conf/zoo.cfgdosyasını bir düzenleyicide açın. Tüm ZooKeeper IP adreslerini ve varsayılan ayarı şu biçimde görmeniz gerekir:server.1=192.168.56.101:2888:3888 server.2=192.168.56.102:2888:3888 server.3=192.168.56.103:2888:3888
Bu bilgileri kaydedin.
- Her ZooKeeper düğümünde
/opt/apigee/customer/application/zookeeper.propertiesdosyasını düzenleyerekconf_zoo_quorumözelliğini doğru IP adreslerine ayarlayın. Dosya yoksa oluşturun.conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n
Her IP adresinden sonra "\n" eklediğinizden ve girişlerin her düğümde aynı sırada olduğundan emin olun.
- Aşağıdaki komutu kullanarak ZooKeeper topluluğunun liderini bulun (node ifadesini Zookeeper makinesinin IP adresiyle değiştirin):
echo srvr | nc node 2181
Çıkıştaki Mode satırında "leader" yazmalıdır.
- Liderden başlayıp IP adresinin değiştirildiği düğümle biten ZooKeeper'ları birbiri ardına yeniden başlatın. Birden fazla zookeeper düğümünün IP adresi değiştiyse tüm düğümleri yeniden başlatmanız gerekebilir.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- Her bir ZooKeeper düğümünü doğrulamak için yukarıda açıklanan
echokomutunu kullanın.
Apigee düğümlerini, değiştirilen yapılandırma hakkında bilgilendirme
- Her Router düğümünde
/opt/apigee/customer/application/router.propertiesdosyasını aşağıdaki gibi düzenleyin. Dosya yoksa oluşturun.conf_zookeeper_connection.stringparametresini yeni IP adresini içerecek şekilde değiştirin.conf_zookeeper_zk1.hostparametresini yeni IP adresini içerecek şekilde değiştirin.
- Her Mesaj İşleyici düğümünde
/opt/apigee/customer/application/message-processor.propertiesdosyasını aşağıdaki gibi düzenleyin. Dosya yoksa oluşturun.conf_zookeeper_connection.stringparametresini yeni IP adresini içerecek şekilde değiştirin.conf_zookeeper_zk1.hostparametresini yeni IP adresini içerecek şekilde değiştirin.
- Yönetim Sunucusu düğümünde
/opt/apigee/customer/application/management-server.propertiesdosyasını aşağıdaki gibi düzenleyin. Dosya yoksa oluşturun.conf_zookeeper_connection.stringparametresini yeni IP adresini içerecek şekilde değiştirin.conf_zookeeper_zk1.hostparametresini yeni IP adresini içerecek şekilde değiştirin.
- Her düğümde aşağıdaki komutu çalıştırarak tüm Apigee platform bileşenlerini yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-all restart
LDAP sunucusunun IP adresini değiştirme (OpenLDAP)
Bir OpenLDAP düğümünün IP adresini değiştirmek için aşağıdakileri yapın:
- Yönetim Sunucusu düğümünde
/opt/apigee/customer/application/management-server.propertiesdosyasını düzenleyin. Dosya yoksa oluşturun. management-server.propertiesdosyasındaconf_security_ldap.server.hostparametresini yeni IP adresine ayarlayın.- Yönetim sunucusunu yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Diğer Apigee düğüm türlerinin IP adresini değiştirme
Bu düğüm türlerinden herhangi birinin (Yönlendirici, Mesaj İşlemcisi, Postgres Sunucusu (postgresql değil) ve Qpid Sunucusu (qpidd değil)) IP adresini değiştirmek için:
- Yeni dahili ve harici IP adresini kaydetmek için aşağıdaki
curlkomutunu kullanın:curl -u ADMINEMAIL:PW -X PUT \ http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
curl -u ADMINEMAIL:PW -X PUT \ http://$MSIP:8080/v1/servers/uuid -d InternalIP=ipBuradaki uuid, düğümün UUID'sidir.
Bir bileşenin UUID'sini nasıl alacağınız hakkında bilgi için UUID'leri alma başlıklı makaleyi inceleyin.