Bu belgede, Özel Bulut için Apigee Edge'in şirket içi dağıtımı tarafından desteklenen bileşenlerin izleme teknikleri açıklanmaktadır.
Genel Bakış
Edge, hizmetlerle ilgili ayrıntıları öğrenmenin ve durumlarını kontrol etmenin çeşitli yollarını destekler. Aşağıdaki tabloda, uygun her hizmette yapabileceğiniz denetim türleri listelenmiştir:
Yönetici API'si | |||||||
Bileşen | Bellek Kullanımı [JMX*] | Hizmet Kontrolü | Kullanıcı/Kuruluş/ Dağıtım Durumu | axstatus | Veritabanı kontrolü | apigee-service Durum |
apigee-monit ** |
Yönetim sunucusu | |||||||
Mesaj İşleyici | |||||||
Yönlendirici | |||||||
Qpid | |||||||
Postgres | |||||||
Daha fazla bilgi | Daha fazla bilgi | Daha fazla bilgi | Daha fazla bilgi | Daha fazla bilgi | Daha fazla bilgi | Daha fazla bilgi | |
* JMX'yi kullanabilmek için JMX'yi etkinleştirme bölümünde açıklandığı şekilde etkinleştirmeniz gerekir. ** |
Bağlantı noktalarını ve yapılandırma dosyalarını izleme
Her bileşen, farklı bağlantı noktalarında Java Management Extensions (JMX) ve Management API izleme çağrılarını destekler. Aşağıdaki tabloda, her sunucu türü için JMX ve Yönetim API bağlantı noktaları ve yapılandırma dosyası konumları listelenmiştir:
Bileşen | JMX Bağlantı Noktası | Management API Bağlantı Noktası | Yapılandırma dosyası konumu |
---|---|---|---|
Yönetim sunucusu | 1099 | 8080 | $APIGEE_ROOT/customer/application/management-server.properties |
Mesaj İşleyici | 1101 | 8082 | $APIGEE_ROOT/customer/application/message-processor.properties |
Yönlendirici | 1100 | 8081 | $APIGEE_ROOT/customer/application/router.properties |
Qpid | 1102 | 8083 | $APIGEE_ROOT/customer/application/qpid-server.properties |
Postgres | 1103 | 8084 | $APIGEE_ROOT/customer/application/postgres-server.properties |
Bileşenleri izlemek için JMX'i kullanma
Aşağıdaki bölümlerde, Edge bileşenlerini izlemek için JMX'in nasıl kullanılacağı açıklanmaktadır.
JMX'yi etkinleştirme
JMX'yi kimlik doğrulaması veya SSL tabanlı iletişim olmadan etkinleştirmek için aşağıdaki adımları uygulayın. Not: Üretim sistemlerinde güvenlik için hem şifrelenmiş kimlik doğrulama hem de SSL etkinleştirilmelidir.
- Uygun yapılandırma dosyasını düzenleyin (
Yapılandırma dosyası referansı bölümüne bakın). Yapılandırma dosyası yoksa oluşturun.
conf_system_jmxremote_enable=true
- Yapılandırma dosyasını kaydedin ve dosyanın sahibinin
apigee:apigee
olduğundan emin olun. - Uygun Edge bileşenini yeniden başlatın
apigee-service edge-management-server restart
JMX'yi devre dışı bırakmak için conf_system_jmxremote_enable
özelliğini kaldırın veya değerini false
olarak değiştirin. Ardından, ilgili Edge bileşenini yeniden başlatın.
JMX'de kimlik doğrulama
Edge for Private Cloud, dosyalarda depolanan ayrıntıları kullanarak şifre tabanlı kimlik doğrulamayı destekler. Daha fazla güvenlik için şifreleri karma oluşturma işlemiyle saklayabilirsiniz.
- edge-* bileşeninde JMX kimlik doğrulamasını etkinleştirmek için ilgili yapılandırma dosyasını düzenleyin (
Yapılandırma dosyası referansı bölümüne bakın). Yapılandırma dosyası yoksa dosyayı oluşturun:
conf_system_jmxremote_enable=true conf_system_jmxremote_authenticate=true conf_system_jmxremote_encrypted_auth=true conf_system_jmxremote_access_file=/opt/apigee/customer/application/management-server/jmxremote.access conf_system_jmxremote_password_file=/opt/apigee/customer/application/management-server/jmxremote.password
Yapılandırma dosyasını kaydedin ve dosyanın sahibininapigee:apigee
olduğundan emin olun. - Şifrenin SHA256 karmasını oluşturun:
echo -n '
' | openssl dgst -sha256 - JMX kullanıcı kimlik bilgilerini içeren bir
jmxremote.password
dosyası oluşturun:- Aşağıdaki dosyaları
$JAVA_HOME
dizininizden/opt/apigee/customer/application/<component>/
dizinine kopyalayın:cp ${JAVA_HOME}/lib/management/jmxremote.password.template $APIGEE_ROOT/customer/application/management-server/jmxremote.password
- Dosyayı düzenleyin ve aşağıdaki söz dizimini kullanarak JMX kullanıcı adınızı ve şifrenizi ekleyin:
USERNAME <HASH-PASSWORD>
- Dosyanın sahibinin
apigee
olduğundan ve dosya modunun 400 olduğundan emin olun:chown apigee:apigee $APIGEE_ROOT/customer/application/management-server/jmxremote.password chmod 400 $APIGEE_ROOT/customer/application/management-server/jmxremote.password
- Aşağıdaki dosyaları
- JMX kullanıcı izinlerine sahip bir
jmxremote.access
dosyası oluşturun:- Aşağıdaki dosyaları $JAVA_HOME dizininizden
/opt/apigee/customer/application/<component>/
dizine kopyalayıncp ${JAVA_HOME}/lib/management/jmxremote.access$APIGEE_ROOT/customer/application/management-server/jmxremote.password/jmxremote.access
- Dosyayı düzenleyin ve JMX kullanıcı adınızı, ardından bir izin (READONLY/READWRITE) ekleyin
USERNAME READONLY
- Dosyanın sahibinin
apigee
olduğundan ve dosya modunun 400 olduğundan emin olun:chown apigee:apigee $APIGEE_ROOT/customer/application/management-server/jmxremote.password chmod 400 $APIGEE_ROOT/customer/application/management-server/jmxremote.access
- Aşağıdaki dosyaları $JAVA_HOME dizininizden
- Uygun Edge bileşenini yeniden başlatın:
apigee-service edge-management-server restart
JMX kimlik doğrulamasını devre dışı bırakmak için conf_system_jmxremote_authenticate
mülkünü kaldırın veya değerini false
olarak değiştirin ve ilgili Edge bileşenini yeniden başlatın.
JMX'de SSL
edge-* bileşeninde SSL tabanlı JMX'yi etkinleştirmek için:
- Uygun yapılandırma dosyasını düzenleyin (
Yapılandırma dosyası referansı bölümüne bakın). Yapılandırma dosyası yoksa dosyayı oluşturun:
conf_system_jmxremote_enable=true conf_system_jmxremote_ssl=true conf_system_javax_net_ssl_keystore=/opt/apigee/customer/application/management-server/jmxremote.keystore conf_system_javax_net_ssl_keystorepassword=<keystore-password>
Yapılandırma dosyasını kaydedin ve dosyanın sahibininapigee:apigee
olduğundan emin olun. - Sunucu anahtarını içeren bir anahtar mağazası hazırlayın ve yukarıdaki
conf_system_javax_net_ssl_keystore
yapılandırmasında sağlanan yola yerleştirin. Anahtar mağazası dosyasınınapigee:apigee
tarafından okunabilir olduğundan emin olun. - Uygun Edge bileşenini yeniden başlatın:
apigee-service edge-management-server restart
SSL tabanlı JMX'yi devre dışı bırakmak için conf_system_jmxremote_ssl
özelliğini kaldırın veya değerini false
olarak değiştirin. İlgili Edge bileşenini yeniden başlatın.
Jconsole üzerinden izleme
jconsole aracılığıyla izleme talimatları, https://docs.apigee.com/private-cloud/v4.52.01/how-monitor#jconsole adresinde açıklananla aynıdır.
"JMX için SSL etkinleştirildiyse jconsole'un truststore ve truststore şifresiyle başlatılması gerekir" yazan bir satır eklenebilir. Referans: https://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.htmlJConsole ile izleme
Sağlık kontrolü ve işlem istatistiklerini yönetmek ve izlemek için JConsole'u (JMX uyumlu bir araç) kullanın. JConsole ile sunucularınız tarafından sunulan JMX istatistiklerini kullanabilir ve bunları grafik bir arayüzde görüntüleyebilirsiniz. Daha fazla bilgi için JConsole'u kullanma başlıklı makaleyi inceleyin.
JMX için SSL etkinse JConsole'u truststore ve truststore şifresiyle başlatmanız gerekir. JConsole'u kullanma başlıklı makaleyi inceleyin.
JConsole, JMX aracılığıyla sunulan JMX özelliklerini (MBean'ler) izlemek için aşağıdaki hizmet URL'sini kullanır:
service:jmx:rmi:///jndi/rmi://IP_address:port_number/jmxrmi
Burada:
- IP_address, izlemek istediğiniz sunucunun IP adresidir.
- port_number, izlemek istediğiniz sunucunun JMX bağlantı noktası numarasıdır.
Örneğin, Yönetim Sunucusu'nu izlemek için aşağıdaki gibi bir komut verin (sunucunun IP adresinin 216.3.128.12 olduğu varsayılır):
service:jmx:rmi:///jndi/rmi://216.3.128.12:1099/jmxrmi
Bu örnekte, Yönetim Sunucusu JMX bağlantı noktası olan 1099 bağlantı noktasının belirtildiğini unutmayın. Diğer bağlantı noktaları için JMX ve Management API izleme bağlantı noktaları başlıklı makaleyi inceleyin.
Aşağıdaki tabloda genel JMX istatistikleri gösterilmektedir:
JMX MBean'leri | JMX Özellikleri |
---|---|
Bellek |
HeapMemoryUsage |
NonHeapMemoryUsage |
|
Kullanım |
|
Yapılandırma dosyası referansı
Aşağıdaki bölümlerde, JMX ile ilgili yapılandırmalar için Edge bileşeni yapılandırma dosyalarında yapmanız gerekebilecek değişiklikler açıklanmaktadır. Daha fazla bilgi için Bağlantı noktalarını ve yapılandırma dosyalarını izleme başlıklı makaleyi inceleyin.
Uygun bileşenin yapılandırma dosyasına eklenecek JMX yapılandırması
- Kenar bileşeninde JMX aracısını etkinleştirin. Varsayılan olarak yanlıştır.
conf_system_jmxremote_enable=true
Şifre tabanlı kimlik doğrulama yapılandırmaları
- Şifre tabanlı kimlik doğrulamayı etkinleştirin. Varsayılan olarak yanlıştır.
conf_system_jmxremote_authenticate=true
- Dosyaya erişme yolu. Yalnızca Apigee kullanıcısı tarafından sahiplenilmeli ve okunabilmelidir.
conf_system_jmxremote_access_file=/opt/apigee/customer/application/management-server/jmxremote.access
- Şifre dosyasının yolu. Yalnızca Apigee kullanıcısı tarafından sahiplenilmeli ve okunabilmelidir.
conf_system_jmxremote_password_file=/opt/apigee/customer/application/management-server/jmxremote.password
- Şifrenin şifrelenmiş biçimde saklanmasını etkinleştirin. Varsayılan olarak yanlıştır.
conf_system_jmxremote_encrypted_auth=true
SSL tabanlı JMX yapılandırmaları
- JMX iletişimi için SSL'yi etkinleştirin. Varsayılan olarak yanlıştır.
conf_system_jmxremote_ssl=true
- Anahtar deposunun yolu. Yalnızca Apigee kullanıcısı tarafından sahiplenilmeli ve okunabilmelidir.
conf_system_javax_net_ssl_keystore=/opt/apigee/customer/application/management-server/jmxremote.keystore
- Anahtar deposu şifresi:
conf_system_javax_net_ssl_keystorepassword=changeme
İsteğe bağlı JMX yapılandırmaları
Listelenen değerler varsayılan değerlerdir ve değiştirilebilir.
- JMX bağlantı noktası. Varsayılan değerler aşağıdaki tabloda listelenmiştir.
conf_system_jmxremote_port=
- JMX RMI bağlantı noktası. Java işlemi varsayılan olarak rastgele bir bağlantı noktası seçer.
conf_system_jmxremote_rmi_port=
- Uzak stub'ların ana makine adı. Yerel makinenin varsayılan IP adresi.
conf_system_java_rmi_server_hostname=
- JMX kayıt defterini SSL ile koruyun. Varsayılan değer yanlıştır. Yalnızca SSL etkinse geçerlidir.
conf_system_jmxremote_registry_ssl=false
Management API ile izleme
Edge, sunucularınızda hizmet kontrolleri yapmak ve kullanıcılarınızı, kuruluşlarınızı ve dağıtımlarınızı kontrol etmek için kullanabileceğiniz çeşitli API'ler içerir. Bu bölümde bu API'ler açıklanmaktadır.
Hizmet kontrolleri gerçekleştirme
Management API, hizmetlerinizle ilgili sorunları izlemek ve teşhis etmek için çeşitli uç noktalar sağlar. Bu uç noktalar şunlardır:
Uç nokta | Açıklama |
---|---|
/servers/self/up |
Bir hizmetin çalışıp çalışmadığını kontrol eder. Bu API çağrısı için kimlik doğrulama yapmanız gerekmez. Hizmet çalışıyorsa bu uç nokta aşağıdaki yanıtı döndürür: <ServerField> <Up>true</Up> </ServerField> Hizmet çalışmıyorsa aşağıdakine benzer bir yanıt alırsınız (hangi hizmete bağlı olarak ve nasıl kontrol ettiğinize göre): curl: Failed connect to localhost:port_number; Connection refused |
/servers/self |
Aşağıdakiler dahil olmak üzere hizmetle ilgili bilgileri döndürür:
Bu API çağrısı için Apigee yönetici kimlik bilgilerinizle kimlik doğrulamanız gerekir. |
Bu uç noktaları kullanmak için aşağıdaki söz dizimini kullanan komutlarla curl
gibi bir yardımcı programı çağırın:
curl http://host:port_number/v1/servers/self/up -H "Accept: [application/json|application/xml]"
curl http://host:port_number/v1/servers/self -u username:password -H "Accept: [application/json|application/xml]"
Burada:
- host, kontrol etmek istediğiniz sunucunun IP adresidir. Sunucuya giriş yaptıysanız "localhost" kullanabilirsiniz. Aksi takdirde, kullanıcı adı ve şifrenin yanı sıra sunucunun IP adresini de belirtin.
- port_number, kontrol etmek istediğiniz sunucunun Management API bağlantı noktasıdır. Bu, her bileşen türü için farklı bir bağlantı noktasıdır. Örneğin, Yönetim Sunucusu'nun Yönetim API bağlantı noktası 8080'dir. Kullanılacak Management API bağlantı noktası numaralarının listesi için JMX ve Management API izleme bağlantı noktaları başlıklı makaleyi inceleyin.
Yanıtın biçimini değiştirmek için Accept
üstbilgisini "application/json" veya "application/xml" olarak belirtebilirsiniz.
Aşağıdaki örnekte, localhost'teki (8081 bağlantı noktası) yönlendiricinin durumu alınır:
curl http://localhost:8081/v1/servers/self/up -H "Accept: application/xml"
Aşağıdaki örnekte, 216.3.128.12 adresindeki (8082 numaralı bağlantı noktası) Mesaj İşleyen hakkında bilgi alınmaktadır:
curl http://216.3.128.12:8082/v1/servers/self -u sysAdminEmail:password -H "Accept: application/xml"
Kullanıcı, kuruluş ve dağıtım durumunu izleme
Yönetim sunucuları ve mesaj işleyicilerdeki proxy'lerinizin kullanıcı, kuruluş ve dağıtım durumunu izlemek için aşağıdaki komutları göndererek Yönetim API'yi kullanabilirsiniz:
curl http://host:port_number/v1/users -u sysAdminEmail:passwordcurl http://host:port_number/v1/organizations -u sysAdminEmail:password
curl http://host:port_number/v1/organizations/orgname/deployments -u sysAdminEmail:password
Burada port_number, Yönetim Sunucusu için 8080 veya İleti İşlemcisi için 8082 değerini alır.
Bu görüşme için sistem yöneticisi kullanıcı adınız ve şifrenizle kimliğinizi doğrulamanız gerekir.
Sunucu, tüm çağrılar için "dağıtıldı" durumunu döndürmelidir. Bu yöntemler işe yaramazsa aşağıdakileri yapın:
- Hata olup olmadığını görmek için sunucu günlüklerini kontrol edin. Günlükler şu konumda bulunur:
- Yönetim sunucusu:
opt/apigee/var/log/edge-management-server
- Mesaj İşleyici:
opt/apigee/var/log/edge-message-processor
- Yönetim sunucusu:
- Düzgün çalışıp çalışmadığını kontrol etmek için sunucuya çağrı yapın.
- Sunucuyu ELB'den kaldırın ve ardından yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service service_name restart
Buradaki service_name:
edge-management-server
edge-message-processor
apigee-service
komutuyla durumu kontrol etme
Hizmeti çalıştıran sunucuya giriş yaptığınızda apigee-service
komutunu kullanarak Edge hizmetlerinizle ilgili sorunları giderebilirsiniz.
apigee-service
ile bir hizmetin durumunu kontrol etmek için:
- Sunucuya giriş yapın ve aşağıdaki komutu çalıştırın:
/opt/apigee/apigee-service/bin/apigee-service service_name status
Burada service_name aşağıdakilerden biri olmalıdır:
- Yönetim sunucusu:
edge-management-server
- Mesaj İşleyici:
edge-message-processor
- Postgres:
edge-postgres-server
- Qpid:
edge-qpid-server
- Yönlendirici:
edge-router
Örneğin:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor status
- Yönetim sunucusu:
- Hizmet çalışmıyorsa hizmeti başlatın:
/opt/apigee/apigee-service/bin/apigee-service service_name start
- Hizmeti yeniden başlattıktan sonra, daha önce kullandığınız
apigee-service status
komutunu veya Management API ile izleme bölümünde açıklanan Management API'yi kullanarak hizmetin çalıştığından emin olun.Örneğin:
curl -v http://localhost:port_number/v1/servers/self/up
Burada port_number, hizmetin Management API bağlantı noktasıdır.
Bu örnekte, sunucuya giriş yaptığınız ve ana makine adı olarak "localhost"u kullanabileceğiniz varsayılmaktadır. Durumu Management API ile uzaktan kontrol etmek için sunucunun IP adresini belirtmeniz ve API çağrınıza sistem yöneticisi kullanıcı adını ve şifresini eklemeniz gerekir.
Postgres izleme
Postgres, durumunu kontrol etmek için kullanabileceğiniz çeşitli yardımcı programları destekler. Bu yardımcı programlar sonraki bölümlerde açıklanmıştır.
Postgres'te kuruluşları ve ortamları kontrol etme
Aşağıdaki curl
komutunu uygulayarak Postgres sunucusuna dahil edilen kuruluş ve ortam adlarını kontrol edebilirsiniz:
curl -v http://postgres_IP:8084/v1/servers/self/organizations
Sistem, kuruluş ve ortam adını gösterir.
Analiz durumunu doğrulama
Aşağıdaki curl
komutunu uygulayarak Postgres ve Qpid analiz sunucularının durumunu doğrulayabilirsiniz:
curl -u userEmail:password http://host:port_number/v1/organizations/orgname/environments/envname/provisioning/axstatus
Sistem, aşağıdaki örnekte gösterildiği gibi tüm analiz sunucuları için bir başarı durumu göstermelidir:
{ "environments" : [ { "components" : [ { "message" : "success at Thu Feb 28 10:27:38 CET 2013", "name" : "pg", "status" : "SUCCESS", "uuid" : "[c678d16c-7990-4a5a-ae19-a99f925fcb93]" }, { "message" : "success at Thu Feb 28 10:29:03 CET 2013", "name" : "qs", "status" : "SUCCESS", "uuid" : "[ee9f0db7-a9d3-4d21-96c5-1a15b0bf0adf]" } ], "message" : "", "name" : "prod" } ], "organization" : "acme", "status" : "SUCCESS" }
PostgreSQL veritabanı
Bu bölümde, özellikle Postgres veritabanını izlemek için kullanabileceğiniz teknikler açıklanmaktadır.
check_postgres.pl
komut dosyasını kullanma
PostgreSQL veritabanını izlemek için standart bir izleme komut dosyası (check_postgres.pl
) kullanabilirsiniz. Daha fazla bilgi için http://bucardo.org/wiki/Check_postgres adresine bakın.
Komut dosyasını çalıştırmadan önce:
- check_postgres.pl komut dosyasını her Postgres düğümüne yüklemeniz gerekir.
- Yüksek çözünürlüklü alarm, uyku, gettimeofday ve aralık zamanlayıcıları uygulayan bir Perl modülü olan
perl-Time-HiRes.x86_64
'ü yüklediğinizden emin olun. Örneğin, aşağıdaki komutu kullanarak yükleyebilirsiniz:
yum install perl-Time-HiRes.x86_64
- CentOS 7: CentOS 7'de check_postgres.pl'yi kullanmadan önce
perl-Data-Dumper.x86_64
RPM'yi yükleyin.
check_postgres.pl çıkışı
check_postgres.pl
kullanan API çağrılarının varsayılan çıkışı Nagios ile uyumludur. Komut dosyasını yükledikten sonra aşağıdaki kontrolleri yapın:
- Veritabanı boyutunu kontrol edin:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -include=apigee -action database_size --warning='800 GB' --critical='900 GB'
- Veritabanına gelen bağlantıların sayısını kontrol edin ve izin verilen maksimum bağlantı sayısıyla karşılaştırın:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action backends
- Veritabanının çalışıp çalışmadığını ve kullanılabilir olup olmadığını kontrol edin:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action connection
- Disk alanını kontrol edin:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action disk_space --warning='80%' --critical='90%'
- Bir Postgres düğümüne dahil edilen kuruluş ve ortam sayısını kontrol edin:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action=custom_query --query="select count(*) as result from pg_tables where schemaname='analytics' and tablename like '%fact'" --warning='80' --critical='90' --valtype=integer
Veritabanı kontrolleri yapma
PostgreSQL veritabanında doğru tabloların oluşturulduğunu doğrulayabilirsiniz. Aşağıdaki komutu kullanarak PostgreSQL veritabanına giriş yapın:
psql -h /opt/apigee/var/run/apigee-postgresql/ -U apigee -d apigee
Ardından şu komutu çalıştırın:
\d analytics."org.env.fact"
Postgres işleminin sağlık durumunu kontrol etme
Aşağıdaki curl
komutunu çağırarak Postgres makinesinde API kontrolleri yapabilirsiniz:
curl -v http://postgres_IP:8084/v1/servers/self/health
Bu komut, postgres işlemi etkinken ACTIVE
durumunu döndürür. Postgres işlemi çalışmıyorsa INACTIVE
durumunu döndürür.
Postgres kaynakları
Postgres hizmetini izleme hakkında daha fazla bilgi için aşağıdakilere bakın:
- http://www.postgresql.org/docs/9.0/static/monitoring.html
- http://www.postgresql.org/docs/9.0/static/diskusage.html
- http://bucardo.org/check_postgres/check_postgres.pl.html
Apache Cassandra
JMX, Cassandra için varsayılan olarak etkindir ve Cassandra'ya uzak JMX erişimi için şifre gerekmez.
Cassandra için JMX kimlik doğrulamasını etkinleştirme
Cassandra için JMX kimlik doğrulamasını etkinleştirebilirsiniz. Bunu yaptıktan sonra, nodetool yardımcı programına yapılan tüm çağrılara kullanıcı adı ve şifre iletmeniz gerekir.
Cassandra için JMX kimlik doğrulamasını etkinleştirmek üzere:
cassandra.properties
dosyasını oluşturun ve düzenleyin:/opt/apigee/customer/application/cassandra.properties
dosyasını düzenleyin. Dosya yoksa oluşturun.- Dosyaya aşağıdakileri ekleyin:
conf_cassandra_env_com.sun.management.jmxremote.authenticate=true conf_cassandra_env_com.sun.management.jmxremote.password.file=${APIGEE_ROOT}/customer/application/apigee-cassandra/jmxremote.password conf_cassandra_env_com.sun.management.jmxremote.access.file=${APIGEE_ROOT}/customer/application/apigee-cassandra/jmxremote.access
cassandra.properties
dosyasını kaydedin.- Dosyanın sahibini aşağıdaki örnekte gösterildiği gibi
apigee:apigee
olarak değiştirin:chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
Jeton ayarlamak için mülk dosyalarını kullanma hakkında daha fazla bilgi edinmek isterseniz Edge'i yapılandırma başlıklı makaleyi inceleyin.
jmx_auth.sh
oluşturma ve düzenleme:- Aşağıdaki konumda dosya yoksa dosya oluşturun:
/opt/apigee/customer/application/jmx_auth.sh
- Dosyaya aşağıdaki özellikleri ekleyin:
export CASS_JMX_USERNAME=JMX_USERNAME export CASS_JMX_PASSWORD=JMX_PASSWORD
jmx_auth.sh
dosyasını kaydedin.- Dosyayı kaynak olarak ekleyin:
source /opt/apigee/customer/application/jmx_auth.sh
- Aşağıdaki konumda dosya yoksa dosya oluşturun:
jmxremote.password
dosyasını kopyalayıp düzenleyin:- Aşağıdaki dosyayı
$JAVA_HOME
dizininizden/opt/apigee/customer/application/apigee-cassandra/
'a kopyalayın:cp ${JAVA_HOME}/lib/management/jmxremote.password.template $APIGEE_ROOT/customer/application/apigee-cassandra/jmxremote.password
jmxremote.password
dosyasını düzenleyin ve aşağıdaki söz dizimini kullanarak JMX kullanıcı adınızı ve şifrenizi ekleyin:JMX_USERNAME JMX_PASSWORD
Burada JMX_USERNAME ve JMX_PASSWORD, daha önce belirlediğiniz JMX kullanıcı adı ve
- Dosyanın sahibinin "apigee" olduğundan ve dosya modunun 400 olduğundan emin olun:
chown apigee:apigee /opt/apigee/customer/application/apigee-cassandra/jmxremote.password
chmod 400 /opt/apigee/customer/application/apigee-cassandra/jmxremote.password
- Aşağıdaki dosyayı
jmxremote.access
dosyasını kopyalayıp düzenleyin:- Aşağıdaki dosyayı
$JAVA_HOME
dizininizden/opt/apigee/customer/application/apigee-cassandra/
'a kopyalayın:cp ${JAVA_HOME}/lib/management/jmxremote.access
$APIGEE_ROOT/customer/application/apigee-cassandra/jmxremote.access
jmxremote.access
dosyasını düzenleyip aşağıdaki rolü ekleyin:JMX_USERNAME readwrite
- Dosyanın sahibinin "apigee" olduğundan ve dosya modunun 400 olduğundan emin olun:
chown apigee:apigee /opt/apigee/customer/application/apigee-cassandra/jmxremote.access
chmod 400 /opt/apigee/customer/application/apigee-cassandra/jmxremote.access
- Aşağıdaki dosyayı
- Cassandra'da
configure
çalıştırma:/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
- Cassandra'yı yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Bu işlemi diğer tüm Cassandra düğümlerinde tekrarlayın.
JMX şifre şifrelemeyi etkinleştirme
JMX şifre şifrelemeyi etkinleştirmek için aşağıdaki adımları uygulayın:
source/conf/casssandra-env.sh
dosyasını açın.cassandra.properties
dosyasını oluşturun ve düzenleyin:/opt/apigee/customer/application/cassandra.properties
dosyasını düzenleyin. Dosya yoksa oluşturun.- Dosyaya aşağıdakileri ekleyin:
conf_cassandra_env_com.sun.management.jmxremote.encrypted.authenticate=true
- cassandra.properties dosyasını kaydedin.
- Aşağıdaki örnekte gösterildiği gibi dosyanın sahibini apigee:apigee olarak değiştirin:
chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
- Komut satırında, istenen şifrelerin SHA1 karmalarını oluşturmak için şu komutu girin:
echo -n 'Secret' | openssl dgst -sha1
$APIGEE_ROOT/customer/application/apigee-cassandra/jmxremote.password
(önceki bölümde oluşturulmuştur) içindeki kullanıcı adına göre şifreleri ayarlayın.- Cassandra'da configure komutunu çalıştırın:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
- Cassandra'yı yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Bu işlemi diğer tüm Cassandra düğümlerinde tekrarlayın.
Cassandra için SSL ile JMX'yi etkinleştirme
JMX'yi SSL ile etkinleştirmek, Cassandra ile JMX tabanlı iletişim için ek güvenlik ve şifreleme sağlar. SSL ile JMX'yi etkinleştirmek için Cassandra'ya SSL tabanlı JMX bağlantılarını kabul etmesi için bir anahtar ve sertifika sağlamanız gerekir. Ayrıca nodetool'u (ve JMX üzerinden Cassandra ile iletişim kuran diğer tüm araçları) SSL için yapılandırmanız gerekir.
SSL özellikli JMX hem düz metin hem de şifrelenmiş JMX şifrelerini destekler.
Cassandra için SSL ile JMX'yi etkinleştirmek üzere aşağıdaki prosedürü uygulayın:
- JMX'yi etkinleştirin. Gerekirse şifre şifrelemeyi etkinleştirin.
- Cassandra için JMX kimlik doğrulamasını etkinleştirin.
yukarıda açıklandığı şekilde. nodetool'un yapılandırılmış kullanıcı adı ve şifreyle çalıştığından emin olun.
/opt/apigee/apigee-cassandra/bin/nodetool -u <JMX_USER> -pw <JMX_PASS> ring
Anahtar deposunu ve güven deposunu hazırlayın.
Anahtar mağazası bir anahtar ve sertifika içermelidir ve Cassandra sunucusunu yapılandırmak için kullanılır. Anahtar mağazası birden fazla anahtar çifti içeriyorsa Cassandra, SSL'yi etkinleştirmek için ilk anahtar çiftini kullanır.
Anahtar deposu ve anahtar şifrelerinin aynı olması gerektiğini unutmayın (anahtarı keytool'u kullanarak oluşturduğunuzda varsayılan ayar budur).
- Truststore yalnızca sertifikayı içermelidir ve istemciler (apigee-service tabanlı komutlar veya nodetool) tarafından JMX üzerinden bağlantı kurmak için kullanılır.
Yukarıdaki koşulları doğruladıktan sonra:
- Anahtar deposu dosyasını
/opt/apigee/customer/application/apigee-cassandra/
içine yerleştirin. - Aşağıdakileri girerek anahtar mağazası dosyasının yalnızca Apigee kullanıcısı tarafından okunabilir olduğundan emin olun:
chown apigee:apigee /opt/apigee/customer/application/apigee-cassandra/keystore.node1
chmod 400 /opt/apigee/customer/application/apigee-cassandra/keystore.node1
- Aşağıdaki adımları uygulayarak Cassandra'yı SSL ile JMX için yapılandırın:
-
apigee-service apigee-cassandra stop
komutunu girerek Cassandra düğümünü durdurun /opt/apigee/customer/application/cassandra.properties
dosyasını açarak ve aşağıdaki satırları ekleyerek Cassandra'da SSL'yi etkinleştirin:conf_cassandra_env_com.sun.management.jmxremote.ssl=true conf_cassandra_env_javax.net.ssl.keyStore=/opt/apigee/customer/application/apigee-cassandra/keystore.node1 conf_cassandra_env_javax.net.ssl.keyStorePassword=keystore-password
- Aşağıdaki örnekte gösterildiği gibi dosyanın sahibini apigee:apigee olarak değiştirin:
chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
- Cassandra'da configure komutunu çalıştırın:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
- Cassandra'yı yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Bu işlemi diğer tüm Cassandra düğümlerinde tekrarlayın.
-
apigee-service apigee-cassandra start
yazarak Cassandra düğümünü başlatın
-
apigee-service
Cassandra komutlarını yapılandırın. Aşağıdakiler dahil olmak üzereapigee-service
komutlarını çalıştırırken belirli ortam değişkenlerini ayarlamanız gerekir:apigee-service apigee-cassandra stop apigee-service apigee-cassandra wait_for_ready apigee-service apigee-cassandra ring apigee-service apigee-cassandra backup
JMX kimlik doğrulaması ve SSL için
apigee-service
'ü yapılandırmayla ilgili birkaç seçenek vardır. Kullanılabilirliğe ve güvenlik uygulamalarınıza göre bir seçenek belirleyin.- 1. seçenek (SSL bağımsız değişkenleri dosyada depolanır)
- 2. seçenek (SSL bağımsız değişkenleri ortam değişkenlerinde depolanır)
- 3. seçenek (SSL bağımsız değişkenleri doğrudan
apigee-service
'a iletilir)
1. seçenek (SSL bağımsız değişkenleri dosyada depolanır)
Aşağıdaki ortam değişkenlerini ayarlayın:
export CASS_JMX_USERNAME=ADMIN # Provide encrypted password here if you have setup JMX password encryption export CASS_JMX_PASSWORD=PASSWORD export CASS_JMX_SSL=Y
Apigee kullanıcısının ana dizininde (
/opt/apigee
) bir dosya oluşturun.$HOME/.cassandra/nodetool-ssl.properties
Dosyayı düzenleyip aşağıdaki satırları ekleyin:
-Djavax.net.ssl.trustStore=<path-to-truststore.node1> -Djavax.net.ssl.trustStorePassword=<truststore-password> -Dcom.sun.management.jmxremote.registry.ssl=true
Trustore dosyasının Apigee kullanıcısı tarafından okunabilir olduğundan emin olun.
Aşağıdaki
apigee-service
komutunu çalıştırın. Hatasız çalışırsa yapılandırmalarınız doğrudur.apigee-service apigee-cassandra ring
2. seçenek (ortam değişkenlerinde depolanan SSL bağımsız değişkenleri)
Aşağıdaki ortam değişkenlerini ayarlayın:
export CASS_JMX_USERNAME=ADMIN # Provide encrypted password here if you have setup JMX password encryption export CASS_JMX_PASSWORD=PASSWORD export CASS_JMX_SSL=Y # Ensure the truststore file is accessible by Apigee user. export CASS_JMX_TRUSTSTORE=<path-to-trustore.node1> export CASS_JMX_TRUSTSTORE_PASSWORD=<truststore-password>
Aşağıdaki
apigee-service
komutunu çalıştırın. Hatasız çalışırsa yapılandırmalarınız doğrudur.apigee-service apigee-cassandra ring
3. seçenek (SSL bağımsız değişkenleri doğrudan
apigee-service
adresine iletilir)Aşağıdaki gibi bir
apigee-service
komutu çalıştırın. Herhangi bir ortam değişkenini yapılandırmanız gerekmez.CASS_JMX_USERNAME=ADMIN CASS_JMX_PASSWORD=PASSWORD CASS_JMX_SSL=Y CASS_JMX_TRUSTSTORE=<path-to-trustore.node1> CASS_JMX_TRUSTSTORE_PASSWORD=<trustore-password> /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra ring
nodetool'u ayarlayın. Nodetool, kendisine JMX parametrelerinin iletilmesini gerektirir. nodetool'u, aşağıdaki yapılandırma seçeneklerinde açıklandığı gibi SSL özellikli JMX ile çalıştırmak için iki şekilde yapılandırabilirsiniz:
Seçenekler, SSL ile ilgili yapılandırmaların nodetool'a iletilme biçiminde farklılık gösterir. Her iki durumda da nodetool'u çalıştıran kullanıcının, güven mağazası dosyasında OKUMA iznine sahip olması gerekir. Kullanılabilirliğe ve güvenlik uygulamalarınıza göre uygun bir seçenek belirleyin.
nodetool parametreleri hakkında daha fazla bilgi edinmek için DataStax belgelerine göz atın.
1. Yapılandırma Seçeneği
nodetool'u çalıştıran kullanıcının ana dizininde bir dosya oluşturun.
$HOME/.cassandra/nodetool-ssl.properties
Dosyaya aşağıdaki satırları ekleyin:
-Djavax.net.ssl.trustStore=<path-to-truststore.node1> -Djavax.net.ssl.trustStorePassword=<truststore-password> -Dcom.sun.management.jmxremote.registry.ssl=true
Yukarıda belirtilen güven mağazası yoluna, nodetool çalıştıran tüm kullanıcılar erişebilmelidir.
nodetool
'ü--ssl
seçeneğiyle çalıştırın./opt/apigee/apigee-cassandra/bin/nodetool --ssl -u <jmx-user-name> -pw <jmx-user-password> -h localhost ring
2. yapılandırma seçeneği
nodetool
'ü aşağıda listelenen ek parametrelerle tek bir komut olarak çalıştırın./opt/apigee/apigee-cassandra/bin/nodetool -Djavax.net.ssl.trustStore=<path-to-truststore.node1> -Djavax.net.ssl.trustStorePassword=<truststore-password> -Dcom.sun.management.jmxremote.registry.ssl=true -Dssl.enable=true -u <jmx-user-name> -pw <jmx-user-password> -h localhost ring
SSL yapılandırmalarını geri döndürme
Yukarıdaki prosedürde açıklanan SSL yapılandırmalarını geri almanız gerekiyorsa aşağıdaki adımları uygulayın:
-
apigee-service apigee-cassandra stop
yazarakapigee-cassandra
'ü durdurun /opt/apigee/customer/application/cassandra.properties
dosyasındanconf_cassandra-env_com.sun.management.jmxremote.ssl=true
satırını kaldırın./opt/apigee/apigee-cassandra/source/conf/cassandra-env.sh
dosyasında aşağıdaki satırları yorumlayın# JVM_OPTS="$JVM_OPTS -Djavax.net.ssl.keyStore=/opt/apigee/data/apigee-cassandra/keystore.node0" # JVM_OPTS="$JVM_OPTS -Djavax.net.ssl.keyStorePassword=keypass" # JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.registry.ssl=true”
apigee-cassandra
'ü başlatmak için- Ayarlanmışsa
CASS_JMX_SSL
ortam değişkenini kaldırın.unset CASS_JMX_SSL
ring
,stop
,backup
vb.apigee-service
tabanlı komutların çalıştığından emin olun.- nodetool ile
--ssl
anahtarını kullanmayı bırakma
apigee-service apigee-cassandra start
Cassandra için JMX kimlik doğrulamasını devre dışı bırakma
Cassandra için JMX kimlik doğrulamasını devre dışı bırakmak üzere:
/opt/apigee/customer/application/cassandra.properties
öğesini düzenle.- Dosyadaki şu satırı kaldırın:
conf_cassandra-env_com.sun.management.jmxremote.authenticate=true
- Cassandra'da configure komutunu çalıştırın:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
- Cassandra'yı yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Bu işlemi diğer tüm Cassandra düğümlerinde tekrarlayın.
JConsole'u kullanma: Görev istatistiklerini izleme
JMX aracılığıyla sunulan JMX özelliklerini (MBean'ler) izlemek için JConsole'u ve aşağıdaki hizmet URL'sini kullanın:
service:jmx:rmi:///jndi/rmi://IP_address:7199/jmxrmi
Buradaki IP_address, Cassandra sunucusunun IP adresidir.
Cassandra JMX istatistikleri
JMX MBean'leri | JMX Özellikleri |
---|---|
ColumnFamilies/apprepo/environments ColumnFamilies/apprepo/organizations ColumnFamilies/apprepo/apiproxy_revisions ColumnFamilies/apprepo/apiproxies ColumnFamilies/audit/audits ColumnFamilies/audit/audits_ref |
PendingTasks |
MemtableColumnsCount |
|
MemtableDataSize |
|
ReadCount |
|
RecentReadLatencyMicros |
|
TotalReadLatencyMicros |
|
WriteCount |
|
RecentWriteLatencyMicros |
|
TotalWriteLatencyMicros |
|
TotalDiskSpaceUsed |
|
LiveDiskSpaceUsed |
|
LiveSSTableCount |
|
BloomFilterFalsePositives |
|
RecentBloomFilterFalseRatio |
|
BloomFilterFalseRatio |
Küme düğümlerini yönetmek için nodetool'u kullanma
nodetool yardımcı programı, Cassandra için küme düğümlerini yöneten bir komut satırı arayüzüdür. Yardımcı programı /opt/apigee/apigee-cassandra/bin
adresinde bulabilirsiniz.
Aşağıdaki çağrılar tüm Cassandra küme düğümlerinde yapılabilir:
- Genel halka bilgileri (tek Cassandra düğümü için de mümkündür): Tüm düğümlerde "Yüksek" ve "Normal" seçeneklerini arayın.
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.
Yukarıdaki komutun çıktısı aşağıdaki gibi görünür:
Datacenter: dc-1 ========== Address Rack Status State Load Owns Token 192.168.124.201 ra1 Up Normal 1.67 MB 33,33% 0 192.168.124.202 ra1 Up Normal 1.68 MB 33,33% 5671...5242 192.168.124.203 ra1 Up Normal 1.67 MB 33,33% 1134...0484
- Düğümler hakkında genel bilgiler (düğüm başına çağrı)
nodetool [-u username -pw password] -h localhost info
Yukarıdaki komutun çıktısı aşağıdaki gibi görünür:
ID : e2e42793-4242-4e82-bcf0-oicu812 Gossip active : true Thrift active : true Native Transport active: true Load : 273.71 KB Generation No : 1234567890 Uptime (seconds) : 687194 Heap Memory (MB) : 314.62 / 3680.00 Off Heap Memory (MB) : 0.14 Data Center : dc-1 Rack : ra-1 Exceptions : 0 Key Cache : entries 150, size 13.52 KB, capacity 100 MB, 1520781 hits, 1520923 requests, 1.000 recent hit rate, 14400 save period in seconds Row Cache : entries 0, size 0 bytes, capacity 0 bytes, 0 hits, 0 requests, NaN recent hit rate, 0 save period in seconds Counter Cache : entries 0, size 0 bytes, capacity 50 MB, 0 hits, 0 requests, NaN recent hit rate, 7200 save period in seconds Token : 0
- Thrift sunucusunun durumu (istemci API'sini sunma)
nodetool [-u username -pw password] -h localhost statusthrift
Yukarıdaki komutun çıktısı aşağıdaki gibi görünür:
running
- Veri akış işlemleri durumu: Cassandra düğümlerinin trafiğini gözlemleyin:
nodetool [-u username -pw password] -h localhost netstats
Yukarıdaki komutun çıktısı aşağıdaki gibi görünür:
Mode: NORMAL Not sending any streams. Read Repair Statistics: Attempted: 151612 Mismatch (Blocking): 0 Mismatch (Background): 0 Pool Name Active Pending Completed Dropped Commands n/a 0 0 0 Responses n/a 0 0 n/a
nodetool hakkında daha fazla bilgi için nodetool yardımcı programı hakkında başlıklı makaleyi inceleyin.
Cassandra kaynağı
Aşağıdaki URL'ye bakın: http://www.datastax.com/docs/1.0/operations/monitoring.
Apache Qpid Broker-J'yi izleme
Qpid Broker-J'yi Qpid yönetim konsolundan izleyebilirsiniz. Bu bölümde, konsola nasıl erişeceğiniz ve temel izleme işlevlerini gerçekleştirmek için nasıl kullanacağınız açıklanmaktadır. Yönetim konsolunu kullanma hakkında daha ayrıntılı bilgi için Apache Qpid dokümanlarında Web Yönetim Konsolu'na bakın.
Yönetim Konsolu'na erişme
Varsayılan yönetim konsolu bağlantı noktası 8090'dır. Bu varsayılan bağlantı noktasındaki konsola erişmek için web tarayıcınızı şu adrese yönlendirin:
http://QPID_NODE_IP:8090
Konsola giriş yapmak için Apigee tarafından ayarlanan varsayılan kimlik bilgilerini veya Edge yapılandırma dosyasında ayarlanan kimlik bilgilerini kullanın. Ayrıntılar için Edge yapılandırma dosyası referansı başlıklı makaleyi inceleyin.
Sıraları ve mesajları izleme
Sol gezinme panelinde Java-Broker > virtualhosts > queues'a gidin. Kullanıcı arayüzünün ana bölümünde ayrıntılarını görüntülemek için bir sıra seçin. Ayrıntılar görünümünde, teslim edilen, sıraya eklenen iletiler ve ileti oranları gibi bilgiler de dahil olmak üzere sıra özelliklerini ve istatistiklerini görebilirsiniz.
Günlük dosyalarını görüntüleme ve indirme
Sol gezinme panelinde Java-Broker > brokerloggers > logfile'e gidin. Ana kullanıcı arayüzü ayrıntıları görünümünde günlük dosyası ayrıntılarını görüntüleyebilir ve günlük dosyalarını indirebilirsiniz.
Qpid yönetim API'sini kullanma
Yönetim görevlerini otomatikleştirmek ve aracıyı izlemek için Apache Qpid Broker-J REST API'yi kullanabilirsiniz. Ayrıntılar için Apache Qpid Broker REST API belgelerine bakın.
Aracıyı izlemek için komut satırı araçlarını da kullanabilirsiniz. Örneğin:
curl "QPID_NODE_IP":"8090"/api/latest/broker -u "USERNAME":"PASSWORD"
Apache ZooKeeper
ZooKeeper durumunu kontrol etme
- ZooKeeper sürecinin çalıştığından emin olun. ZooKeeper,
opt/apigee/var/run/apigee-zookeeper/apigee-zookeeper.pid
dosyasına bir PID dosyası yazar. - Her ZooKeeper sunucusunda 2181 ve 3888 bağlantı noktalarına TCP bağlantısı kurabildiğinizden emin olmak için ZooKeeper bağlantı noktalarını test edin.
- ZooKeeper veritabanındaki değerleri okuyabildiğinizden emin olun. ZooKeeper istemci kitaplığı (veya
/opt/apigee/apigee-zookeeper/bin/zkCli.sh
) kullanarak bağlanın ve veritabanından bir değer okuyun. - Durumu kontrol edin:
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper status
ZooKeeper dört harfli kelimeleri kullanma
ZooKeeper, netcat (nc) veya telnet kullanılarak 2181 bağlantı noktasına gönderilen küçük bir komut grubu (dört harfli kelimeler) aracılığıyla izlenebilir.
ZooKeeper komutları hakkında daha fazla bilgi için: Apache ZooKeeper komut referansı başlıklı makaleyi inceleyin.
Örneğin:
srvr
: Sunucunun tüm ayrıntılarını listeler.stat
: Sunucu ve bağlı istemciler hakkında kısa ayrıntıları listeler.
ZooKeeper bağlantı noktasına aşağıdaki komutlar gönderilebilir:
- Sunucunun hata durumunda çalışıp çalışmadığını test etmek için dört harfli ruok komutunu çalıştırın. Başarılı bir yanıtta "imok" döndürülür.
echo ruok | nc host 2181
Şunu döndürür:
imok
- Sunucu performansını ve bağlı istemci istatistiklerini listelemek için dört harfli
stat
komutunu çalıştırın:echo stat | nc host 2181
Şunu döndürür:
Zookeeper version: 3.4.5-1392090, built on 09/30/2012 17:52 GMT Clients: /0:0:0:0:0:0:0:1:33467[0](queued=0,recved=1,sent=0) /192.168.124.201:42388[1](queued=0,recved=8433,sent=8433) /192.168.124.202:42185[1](queued=0,recved=1339,sent=1347) /192.168.124.204:39296[1](queued=0,recved=7688,sent=7692) Latency min/avg/max: 0/0/128 Received: 26144 Sent: 26160 Connections: 4 Outstanding: 0 Zxid: 0x2000002c2 Mode: follower Node count: 283
- netcat (nc) kullanılamıyorsa alternatif olarak python'u kullanabilirsiniz. Aşağıdakileri içeren
zookeeper.py
adlı bir dosya oluşturun:import time, socket, sys c = socket.socket(socket.AF_INET, socket.SOCK_STREAM) c.connect((sys.argv[1], 2181)) c.send(sys.argv[2]) time.sleep(0.1) print c.recv(512)
Ardından aşağıdaki Python satırlarını çalıştırın:
python zookeeper.py 192.168.124.201 ruok
python zookeeper.py 192.168.124.201 stat
LDAP düzeyinde test
Belirli isteklerin düzgün şekilde yayınlanıp yayınlanmadığını görmek için OpenLDAP'ı izleyebilirsiniz. Diğer bir deyişle, doğru sonucu döndüren belirli bir arama olup olmadığını kontrol edin.
- Sistem yöneticisinin girişini sorgulamak için
ldapsearch
(yum install openldap-clients
) değerini kullanın. Bu giriş, tüm API çağrılarının kimliğini doğrulamak için kullanılır.ldapsearch -b "uid=admin,ou=users,ou=global,dc=apigee,dc=com" -x -W -D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -LLL
Ardından LDAP yönetici şifresi istenir:
Enter LDAP Password:
Şifre girdikten sonra formda bir yanıt görürsünüz:
dn: uid=admin,ou=users,ou=global,dc=apigee,dc=com objectClass: organizationalPerson objectClass: person objectClass: inetOrgPerson objectClass: top uid: admin cn: admin sn: admin userPassword:: e1NTSEF9bS9xbS9RbVNXSFFtUWVsU1F0c3BGL3BQMkhObFp2eDFKUytmZVE9PQ= = mail: opdk@google.com
- Yönetim sunucusunun hâlâ LDAP'ye bağlı olup olmadığını aşağıdaki komutla kontrol edin:
curl -u userEMail:password http://localhost:8080/v1/users/ADMIN
Şunu döndürür:
{ "emailId" : ADMIN, "firstName" : "admin", "lastName" : "admin" }
Disk erişimleri sayısını azaltarak sistemin performansını artırmaya yardımcı olan OpenLDAP önbellekleri de izleyebilirsiniz. OpenLDAP sunucusunda önbellek boyutunu izlemek ve ardından ayarlamak, dizin sunucusunun performansını büyük ölçüde etkileyebilir. Önbellekle ilgili bilgi edinmek için günlük dosyalarını (opt/apigee/var/log
) görüntüleyebilirsiniz.