Bu belgede, Private Cloud için Apigee Edge'in şirket içi dağıtımının desteklediği bileşenlerin izleme teknikleri açıklanmaktadır.
Genel bakış
Edge, hizmetlerle ilgili ayrıntıları almanın ve durumlarını kontrol etmenin çeşitli yollarını destekler. Aşağıdaki tabloda, uygun olan her bir hizmette gerçekleştirebileceğiniz kontrol türleri listelenmiştir:
Yönetim API'sı | |||||||
Bileşen | Bellek Kullanımı [JMX*] | Hizmet Kontrolü | Kullanıcı/Kuruluş/ Dağıtım Durumu | aksdurum | Veritabanı kontrolü | apigee-service Durum |
apigee-monit ** |
Management Server | |||||||
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'i kullanabilmek için öncelikle JMX'i etkinleştirme bölümünde açıklandığı gibi JMX'i 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 Management API bağlantı noktaları ile yapılandırma dosyası konumları listelenmiştir:
Bileşen | JMX Bağlantı Noktası | Management API Bağlantı Noktası | Yapılandırma dosyasının 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 kullanın
Aşağıdaki bölümlerde Edge bileşenlerini izlemek için JMX'in nasıl kullanılacağı açıklanmaktadır.
JMX'i etkinleştir
JMX'i kimlik doğrulama 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 (bkz.
Yapılandırma dosyası referansı). Yapılandırma dosyası yoksa oluşturun.
conf_system_jmxremote_enable=true
- Yapılandırma dosyasını kaydedin ve sahibinin
apigee:apigee
olduğundan emin olun. - Uygun Edge bileşenini yeniden başlatın
apigee-service edge-management-server restart
JMX'i 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 uygun Edge bileşenini yeniden başlatın.
JMX'te kimlik doğrulama
Edge for Private Cloud, dosyalarda depolanan ayrıntıları kullanarak şifre tabanlı kimlik doğrulamayı destekler. Güvenliği artırmak için şifreleri Karma olarak depolayabilirsiniz.
- Edge* bileşeninde JMX kimlik doğrulamasını 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ını yoksa 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 sahibininapigee:apigee
dosyası olduğundan emin olun. - Şu şifrenin SHA256 karmasını oluşturun:
echo -n '
' | openssl dgst -sha256 - JMX kullanıcı kimlik bilgileriyle 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üzenleyerek JMX kullanıcı adınızı ve şifrenizi aşağıdaki söz dizimini kullanarak 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 dizine kopyalayın
/opt/apigee/customer/application/<component>/
cp ${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ı ve ardından bir izin (SALT OKUNUR/YAZMA) 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 dizine kopyalayın
- 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
özelliğini kaldırın veya değeri false
olarak değiştirip ilgili Edge bileşenini yeniden başlatın.
JMX'te SSL
Edge* bileşeninde SSL tabanlı JMX'i etkinleştirmek için:
- Uygun yapılandırma dosyasını düzenleyin (bkz.
Yapılandırma dosyası referansı). Yapılandırma dosyasını yoksa 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 sahibininapigee:apigee
olduğundan emin olun. - Sunucu anahtarını içeren bir anahtar deposu hazırlayın ve bunu yukarıdaki
conf_system_javax_net_ssl_keystore
yapılandırmasında sağlanan yola yerleştirin. Anahtar deposu dosyasınınapigee:apigee
tarafından okunabildiğinden emin olun. - Uygun Edge bileşenini yeniden başlatın:
apigee-service edge-management-server restart
SSL tabanlı JMX'i devre dışı bırakmak için conf_system_jmxremote_ssl
özelliğini kaldırın veya değeri false
olarak değiştirin. İlgili Edge bileşenini yeniden başlatın.
Jconsole aracılığıyla izleme
jconsole aracılığıyla izleme talimatları, https://docs.apigee.com/private-cloud/v4.52.01/how-monitor#jconsole adresinde açıklandığı gibi aynıdır.
"JMX için SSL etkinse jconsole'un güven deposu ve güven deposu şifresiyle başlatılması gerekir" ifadesini içeren bir satır eklenebilir. Referans: https://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.htmlJConsole ile izleme
Durum denetimi ve işlem istatistiklerini yönetip izlemek için JConsole'u (JMX uyumlu bir araç) kullanın. JConsole ile, sunucularınızın gösterdiği JMX istatistiklerini kullanabilir ve grafik arayüzde görüntüleyebilirsiniz. Daha fazla bilgi için JConsole'u Kullanma bölümüne bakın.
JMX için SSL etkinse JConsole'u güven deposu ve güven deposu şifresiyle başlatmanız gerekir. JConsole'u kullanma sayfasını inceleyin.
JConsole, JMX aracılığıyla sunulan JMX özelliklerini (MBeans'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 yayınlayın (sunucunun IP adresinin 216.3.128.12 olduğu varsayılarak):
service:jmx:rmi:///jndi/rmi://216.3.128.12:1099/jmxrmi
Bu örneğin, Yönetim Sunucusu JMX bağlantı noktası olan 1099 numaralı bağlantı noktasını belirttiğini unutmayın. Diğer bağlantı noktaları için JMX ve Management API izleme bağlantı noktaları sayfasına göz atın.
Aşağıdaki tabloda genel JMX istatistikleri gösterilmektedir:
JMX MBeans | 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şen 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 bölümüne bakın.
Uygun bileşenin yapılandırma dosyasına eklenecek JMX yapılandırması
- Uç bileşende JMX aracısını etkinleştirin. Varsayılan olarak False (yanlış) değerini alır.
conf_system_jmxremote_enable=true
Şifre tabanlı kimlik doğrulama yapılandırmaları
- Şifre tabanlı kimlik doğrulamayı etkinleştir. Varsayılan olarak False (yanlış) değerini alır.
conf_system_jmxremote_authenticate=true
- Dosyaya erişim yolu. Sahip olunması ve yalnızca Apigee kullanıcısı tarafından okunabilmesi gerekir.
conf_system_jmxremote_access_file=/opt/apigee/customer/application/management-server/jmxremote.access
- Şifre dosyasının yolu. Sahip olunması ve yalnızca Apigee kullanıcısı tarafından okunabilmesi gerekir.
conf_system_jmxremote_password_file=/opt/apigee/customer/application/management-server/jmxremote.password
- Şifreyi şifrelenmiş biçimde depolamayı etkinleştir. Varsayılan olarak False (yanlış) değerini alı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 False (yanlış) değerini alır.
conf_system_jmxremote_ssl=true
- Anahtar deposu yolu. Sahip olunması ve yalnızca Apigee kullanıcısı tarafından okunabilmesi gerekir.
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ı. Varsayılan olarak, Java işlemi rastgele bir bağlantı noktası seçer.
conf_system_jmxremote_rmi_port=
- Uzak saplamalar için ana makine adı. localhost'un varsayılan IP adresi.
conf_system_java_rmi_server_hostname=
- JMX kayıt defterini SSL ile koruyun. Varsayılan değer false'tur. Yalnızca SSL etkinse geçerlidir.
conf_system_jmxremote_registry_ssl=false
Management API ile izleme
Edge; sunucularınızda hizmet kontrolleri gerçekleştirmenin yanı sıra 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 sunar. Bu bölümde söz konusu API'ler açıklanmaktadır.
Hizmet kontrolleri gerçekleştirin
Management API, hizmetlerinizle ilgili sorunların izlenmesi ve teşhis edilmesi için çeşitli uç noktalar sağlar. Bu uç noktalar şunları içerir:
Uç nokta | Açıklama |
---|---|
/servers/self/up |
Bir hizmetin çalışıp çalışmadığını kontrol eder. Bu API çağrısı, kimlik doğrulaması yapmanızı gerektirmiyor. 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 (hizmetin hangi hizmete ve nasıl kontrol ettiğinize bağlı olarak): curl: Failed connect to localhost:port_number; Connection refused |
/servers/self |
Aşağıdakiler de dahil olmak üzere hizmetle ilgili bilgileri döndürür:
Bu API çağrısı için Apigee yöneticisi kimlik bilgilerinizle kimlik doğrulaması yapmanız gerekiyor. |
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"u 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, Management Server'ın Management 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ı makaleye bakın.
Yanıtın biçimini değiştirmek için Accept
üst bilgisini "application/json" veya "application/xml" olarak belirtebilirsiniz.
Aşağıdaki örnek, localhost'ta (bağlantı noktası 8081) Yönlendiricinin durumunu alır:
curl http://localhost:8081/v1/servers/self/up -H "Accept: application/xml"
Aşağıdaki örnekte 216.3.128.12 (bağlantı noktası 8082) adresindeki Mesaj İşleyici hakkında bilgi verilmiştir:
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
Aşağıdaki komutları yayınlayarak Yönetim Sunucuları ve Mesaj İşleyicilerinde proxy'lerinizin kullanıcı, kuruluş ve dağıtım durumunu izlemek için Management 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
port_number, Yönetim Sunucusu için 8080 veya İleti İşleyici için 8082'dir.
Bu çağrı, sistem yöneticisi kullanıcı adınız ve şifrenizle kimlik doğrulaması yapmanızı gerektiriyor.
Sunucunun tüm çağrılar için "dağıtıldı" durumunu döndürmesi gerekir. Bunlar işe yaramazsa aşağıdakileri yapın:
- Sunucu günlüklerinde hata olup olmadığını 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ıp yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service service_name restart
Burada service_name:
edge-management-server
edge-message-processor
apigee-service
komutuyla durumu kontrol edin
Edge hizmetlerinizdeki sorunları, hizmeti çalıştıran sunucuya giriş yaptığınızda apigee-service
komutunu kullanarak 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 şunlardan biridir:
- Yönetim Sunucusu:
edge-management-server
- Mesaj İşleyici:
edge-message-processor
- Postgre'ler:
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'yi kullanarak izleme bölümünde açıklanan Management API'yi kullanarak hizmetin çalışıp çalışmadığını kontrol edin.Örneğin:
curl -v http://localhost:port_number/v1/servers/self/up
port_number, hizmetin Management API bağlantı noktasıdır.
Bu örnekte, sunucuya giriş yaptığınız ve ana makine adı olarak "localhost" kullanabileceğiniz varsayılmıştır. Management API ile durumu uzaktan kontrol etmek için sunucunun IP adresini belirtmeniz ve sistem yöneticisi kullanıcı adı ile şifresini API çağrınıza 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'de kuruluşları ve ortamları kontrol edin
Aşağıdaki curl
komutunu yayınlayarak Postgres sunucusuna eklenmiş kuruluş ve ortam adlarını kontrol edebilirsiniz:
curl -v http://postgres_IP:8084/v1/servers/self/organizations
Sistem, kuruluş ve ortam adını görüntülemelidir.
Analiz durumunu doğrulayın
Postgres ve Qpid analiz sunucularının durumunu aşağıdaki curl
komutunu göndererek doğrulayabilirsiniz:
curl -u userEmail:password http://host:port_number/v1/organizations/orgname/environments/envname/provisioning/axstatus
Aşağıdaki örnekte gösterildiği gibi, sistem tüm analiz sunucuları için başarı durumunu 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ı kullanın
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:
- Her Postgres düğümüne check_postgres.pl komut dosyasını 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
uygulamasını yüklediğinizden emin olun. Örneğin, aşağıdaki komutu kullanarak yükleyebilirsiniz:
yum install perl-Time-HiRes.x86_64
- CentOS 7: CentOS v7'de check_postgres.pl'i kullanmadan önce
perl-Data-Dumper.x86_64
BGBG'yi yükleyin.
check_postgres.pl çıkışı
check_postgres.pl
kullanan API çağrılarının varsayılan çıkışı Nagios 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 eder ve izin verilen maksimum bağlantı sayısıyla karşılaştırır:
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%'
- Postgres düğümünde yerleşik olarak bulunan kuruluş ve ortamın 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ı kontrollerini çalıştır
PostgreSQL veritabanında uygun 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"
Postres sürecinin sağlık durumunu kontrol etme
Aşağıdaki curl
komutunu çağırarak Postgres makinesinde API denetimleri gerçekleştirebilirsiniz:
curl -v http://postgres_IP:8084/v1/servers/self/health
Bu komut, postgres işlemi etkin olduğunda ACTIVE
durumunu döndürür. Postgres işlemi çalışır durumda değilse 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
Cassandra için JMX, varsayılan olarak etkindir. Cassandra'ya uzaktan JMX erişimi ise şifre gerektirmez.
Cassandra için JMX kimlik doğrulamasını etkinleştir
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 bir kullanıcı adı ve şifre iletmeniz istenir.
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 mevcut değilse oluşturun.- Dosyaya şunu 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
Jetonları ayarlamak için özellik dosyalarını kullanma hakkında daha fazla bilgi edinmek isterseniz Edge'yi yapılandırma bölümüne bakın.
jmx_auth.sh
oluşturun ve düzenleyin:- Şu konumda mevcut değilse bir dosya oluşturun:
/opt/apigee/customer/application/jmx_auth.sh
- Aşağıdaki özellikleri dosyaya ekleyin:
export CASS_JMX_USERNAME=JMX_USERNAME export CASS_JMX_PASSWORD=JMX_PASSWORD
jmx_auth.sh
dosyasını kaydedin.- Dosyayı kaynak olarak kaydedin:
source /opt/apigee/customer/application/jmx_auth.sh
- Şu konumda mevcut değilse bir dosya oluşturun:
jmxremote.password
dosyasını kopyalayıp düzenleyin:- Aşağıdaki dosyayı
$JAVA_HOME
dizininizden/opt/apigee/customer/application/apigee-cassandra/
hedefine 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 JMX kullanıcı adınız ile şifrenizi aşağıdaki söz dizimini kullanarak ekleyin:JMX_USERNAME JMX_PASSWORD
Burada JMX_USERNAME ve JMX_PASSWORD, daha önce ayarladığınız JMX kullanıcı adı ve şifresidir.
- 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/
hedefine kopyalayın:cp ${JAVA_HOME}/lib/management/jmxremote.access
$APIGEE_ROOT/customer/application/apigee-cassandra/jmxremote.access
jmxremote.access
dosyasını düzenleyin ve şu 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
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
- Diğer tüm Cassandra düğümlerinde bu işlemi tekrarlayın.
JMX şifre şifrelemesini etkinleştir
JMX şifre şifrelemesini 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 mevcut değilse oluşturun.- Dosyaya şunu 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
echo -n 'Secret' | openssl dgst -sha1
komutunu girerek istediğiniz şifrelerin SHA1 karmalarını oluşturun. - Şifreleri, önceki bölümde oluşturulan
$APIGEE_ROOT/customer/application/apigee-cassandra/jmxremote.password
dilindeki kullanıcı adına göre ayarlayın. - Cassandra'da yapılandırmayı ç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
- Diğer tüm Cassandra düğümlerinde bu işlemi tekrarlayın.
Cassandra için SSL ile JMX'i etkinleştir
JMX'in SSL ile etkinleştirilmesi, Cassandra ile JMX tabanlı iletişim için ek güvenlik ve şifreleme sağlar. JMX'i SSL ile etkinleştirmek için Cassandra'ya SSL tabanlı JMX bağlantılarını kabul edecek bir anahtar ve sertifika sağlamanız gerekir. Ayrıca, SSL için Nodetool'u (ve JMX üzerinden Cassandra ile iletişim kuran diğer araçları) yapılandırmanız gerekir.
SSL özellikli JMX, hem düz metin hem de şifrelenmiş JMX şifrelerini destekler.
Cassandra için SSL ile JMX'i etkinleştirmek üzere aşağıdaki prosedürü kullanın:
- JMX'i etkinleştirin. Gerekirse şifre şifrelemeyi etkinleştirin.
- Cassandra için JMX kimlik doğrulamasını etkinleştirin.
yukarıda belirtildiği ş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 deposu ve güven deposu hazırlayın.
Anahtar deposu bir anahtar ve sertifika içermelidir ve Cassandra sunucusunu yapılandırmak için kullanılır. Anahtar deposu 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 (keytool kullanarak anahtarı oluştururken varsayılandır).
- 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 gereksinimleri doğruladıktan sonra:
- Anahtar deposu dosyasını
/opt/apigee/customer/application/apigee-cassandra/
içine yerleştirin. - Anahtar deposu dosyasının yalnızca Apigee kullanıcısı tarafından okunabildiğinden 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 JMX için Cassandra'yı SSL ile yapılandırın:
-
apigee-service apigee-cassandra stop
girerek Cassandra düğümünü durdurun /opt/apigee/customer/application/cassandra.properties
dosyasını açıp şu 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 yapılandırmayı ç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
- Diğer tüm Cassandra düğümlerinde bu işlemi tekrarlayın.
-
apigee-service apigee-cassandra start
girerek Cassandra düğümünü başlatın
-
apigee-service
Cassandra komutlarını yapılandırın.apigee-service
komutlarını çalıştırırken aşağıdakiler de dahil olmak üzere 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
ürününün yapılandırılmasına yönelik çeşitli seçenekler mevcuttur. Kullanılabilirliğe ve güvenlik yöntemlerinize göre bir seçenek belirleyin.- 1. Seçenek (Dosyada depolanan SSL bağımsız değişkenleri)
- 2. Seçenek (ortam değişkenlerinde depolanan SSL bağımsız değişkenleri)
- 3. Seçenek (SSL bağımsız değişkenleri doğrudan
apigee-service
ürününe geçirilir)
1. Seçenek (Dosyada 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
Apigee kullanıcısının ana dizininde (
/opt/apigee
) bir dosya oluşturun.$HOME/.cassandra/nodetool-ssl.properties
Dosyayı düzenleyin ve 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
Güvenilen dosyanın Apigee kullanıcısı tarafından okunabildiğinden emin olun.
Aşağıdaki
apigee-service
komutunu çalıştırın. Hatasız çalışıyorsa 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ışıyorsa 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
öğesine aktarılır)Aşağıdakine benzer herhangi bir
apigee-service
komutunu çalıştırın. Herhangi bir ortam değişkeni 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 kurun. Nodetool, kendisine JMX parametrelerinin aktarılmasını gerektirir. Nodetool'u, aşağıdaki yapılandırma seçeneklerinde açıklandığı gibi SSL özellikli JMX ile çalışacak şekilde yapılandırmanın iki yolu vardır:
Seçenekler, SSL ile ilgili yapılandırmaların Nodetool'a geçirilme şeklinde farklılık gösterir. Her iki durumda da, Nodetool'u çalıştıran kullanıcının güven deposu dosyasında OKUMA izinlerine sahip olması gerekir. Kullanılabilirliğe ve güvenlik yöntemlerinize göre uygun bir seçenek belirleyin.
Nodetool parametreleri hakkında daha fazla bilgi edinmek için DataStax belgelerine bakı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
Aşağıdaki satırları dosyaya 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 deposu yoluna, Nodetool kullanan tüm kullanıcılar tarafından erişilebilmelidir.
nodetool
öğesini--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
komutunu 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ür
Yukarıdaki prosedürde açıklanan SSL yapılandırmalarını geri almanız gerekirse şu 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
sayfasında aşağıdaki satırlara yorum yapı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”
- Şunu girerek
apigee-cassandra
oyununu başlatın: CASS_JMX_SSL
ortam değişkenini (ayarlanmışsa) kaldırın.unset CASS_JMX_SSL
ring
,stop
,backup
gibiapigee-service
tabanlı komutların çalışıp çalışmadığını kontrol edin.--ssl
anahtarını Nodetool ile kullanmayı bırak
apigee-service apigee-cassandra start
Cassandra için JMX kimlik doğrulamasını devre dışı bırak
Cassandra için JMX kimlik doğrulamasını devre dışı bırakmak üzere:
/opt/apigee/customer/application/cassandra.properties
öğesini düzenle.- Dosyadan şu satırı kaldırın:
conf_cassandra-env_com.sun.management.jmxremote.authenticate=true
- Cassandra'da yapılandırmayı ç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
- Diğer tüm Cassandra düğümlerinde bu işlemi tekrarlayın.
JConsole'u kullanın: Görev istatistiklerini izleme
JMX aracılığıyla sunulan JMX özelliklerini (MBeans'ler) izlemek için JConsole'u ve aşağıdaki hizmet URL'sini kullanın:
service:jmx:rmi:///jndi/rmi://IP_address:7199/jmxrmi
Burada IP_address, Cassandra sunucusunun IP'sidir.
Cassandra JMX istatistikleri
JMX MBeans | JMX Özellikleri |
---|---|
SütunAileler/onay/ortamlar ColumnAileler/onay/kuruluşlar SütunAileleri/apprepo/apiproxy_revisions ColumnAileler/apprepo/apiproxies SütunAileleri/denetim/denetimler SütunAileleri/denetim/denetlemeler_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'nın küme düğümlerini yöneten bir komut satırı arayüzüdür. Söz konusu yardımcı programı /opt/apigee/apigee-cassandra/bin
adresinde bulabilirsiniz.
Tüm Cassandra küme düğümlerinde aşağıdaki çağrılar yapılabilir:
- Genel halka bilgisi (tek Cassandra düğümü için de mümkündür): Tüm düğümler için "Yukarı" ve "Normal" durumlarına bakın.
nodetool [-u username -pw password] -h localhost ring
Kullanıcı adınızı ve şifrenizi yalnızca Cassandra için JMX kimlik doğrulamasını etkinleştirdiyseniz iletmeniz gerekir.
Yukarıdaki komutun çıkışı aşağıda gösterildiği 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
- İkinci el sunucusunun durumu (istemci API'sini sunma)
nodetool [-u username -pw password] -h localhost statusthrift
Yukarıdaki komutun çıkışı aşağıdaki gibi görünür:
running
- Veri akışı işlemlerinin durumu: Cassandra düğümleri için trafiği gözlemleyin:
nodetool [-u username -pw password] -h localhost netstats
Yukarıdaki komutun çıkışı 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 bölümüne bakın.
Cassandra kaynağı
Şu 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şileceği ve temel izleme işlevlerini gerçekleştirmek için nasıl kullanılacağı açıklanmaktadır. Yönetim konsolunu kullanma hakkında daha ayrıntılı bilgi için Apache Qpid dokümanlarındaki Web Management Console (Web Yönetimi Konsolu) bölümüne bakın.
Yönetim konsoluna erişme
Varsayılan yönetim konsolu bağlantı noktası 8090'dır. Bu varsayılan bağlantı noktasında 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 veya Edge yapılandırma dosyasında ayarlanan varsayılan kimlik bilgilerini kullanın. Ayrıntılar için Edge yapılandırma dosyası referansı bölümüne bakın.
Sıraları ve iletileri izleme
Sol gezinme panelinde Java-Broker > virtualhosts > rows'a (Java-Broker > sanal ana makineler > sıralar) gidin. Ayrıntılarını kullanıcı arayüzünün ana bölümünde görüntülemek için bir sıra seçin. Ayrıntılar görünümünde, teslim edilen mesajlar, sıraya alınanlar, mesaj ücretleri gibi bilgiler dahil olmak üzere Sıra Özelliklerini ve İstatistikleri görebilirsiniz.
Günlük dosyalarını görüntüleme ve indirme
Sol gezinme panelinde Java-Broker > brokerloggers > logfile'a 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 Management API'yi kullanma
Yönetim görevlerini otomatikleştirmek ve aracıyı izlemek için Apache Qpid Broker-J REST API'sini kullanabilirsiniz. Ayrıntılar için Apache Qpid Broker REST API dokümanlarına 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 (Apache Hayvanat Bahçesi Koruyucu)
ZooKeeper durumunu kontrol etme
- ZooKeeper işleminin çalıştığından emin olun. ZooKeeper,
opt/apigee/var/run/apigee-zookeeper/apigee-zookeeper.pid
adresine bir PID dosyası yazar. - Her ZooKeeper sunucusunda 2181 ve 3888 numaralı bağlantı noktalarına TCP bağlantısı kurulabildiğinden 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 bağlantı noktası 2181'e gönderilen küçük bir komut dizisi (dört harfli kelime) ile izlenebilir.
ZooKeeper komutları hakkında daha fazla bilgi edinmek için bkz. Apache ZooKeeper komut referansı.
Örneğin:
srvr
: Sunucuyla ilgili tüm ayrıntıları listeler.stat
: Sunucu ve bağlı istemciler için kısa ayrıntıları listeler.
ZooKeeper bağlantı noktasına aşağıdaki komutlar verilebilir:
- Sunucunun hata olmayan bir durumda çalışıp çalışmadığını test etmek için dört harfli ruok komutunu çalıştırın. Başarılı bir yanıt "imok" döndürür.
echo ruok | nc host 2181
Dönen:
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
Dönen:
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) yoksa, 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)
Şimdi 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üzeyi testi
Belirli isteklerin düzgün şekilde sunulup sunulmadığını görmek için OpenLDAP'yi izleyebilirsiniz. Başka bir deyişle, doğru sonucu döndüren belirli bir aramayı kontrol edin.
- Sistem yöneticisinin girişini sorgulamak için
ldapsearch
(yum install openldap-clients
) kodunu 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 şifresini girmeniz istenir:
Enter LDAP Password:
Şifreyi girdikten sonra şu formda bir yanıt göreceksiniz:
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 Sunucusu'nun LDAP'ye hâlâ bağlı olup olmadığını kontrol etmek için şu komutu kullanın:
curl -u userEMail:password http://localhost:8080/v1/users/ADMIN
Dönen:
{ "emailId" : ADMIN, "firstName" : "admin", "lastName" : "admin" }
Ayrıca, disk erişim sayısını azaltarak sistemin performansını iyileştirmeye yardımcı olan OpenLDAP önbelleklerini de izleyebilirsiniz. OpenLDAP sunucusundaki önbellek boyutunun izlenmesi ve ayarlanması, dizin sunucusunun performansını önemli ölçüde etkileyebilir. Önbellek hakkında bilgi edinmek için günlük dosyalarını (opt/apigee/var/log
) görüntüleyebilirsiniz.