İzleme

Bu belgede, Apigee Edge for Private Cloud'un şirket içi dağıtımı tarafından desteklenen bileşenlerin izleme teknikleri açıklanmaktadır.

Genel bakış

Edge, hizmetler hakkında ayrıntılı bilgi almak ve durumlarını kontrol etmek için çeşitli yöntemler kullanır. Aşağıdaki tabloda, uygun her hizmette gerçekleştirebileceğiniz kontrol türleri listelenmiştir:

Mgmt 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'i kullanabilmek için öncelikle JMX'i etkinleştirme bölümünde açıklandığı şekilde JMX'i etkinleştirmeniz gerekir.

** apigee-monit hizmeti, bir bileşenin çalışıp çalışmadığını kontrol eder ve mevcut değilse onu yeniden başlatmayı dener. Daha fazla bilgi için Apigee-monit ile kendi kendine iyileştirme bölümüne bakın.

İzleme bağlantı noktaları ve yapılandırma dosyaları

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ı ve 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 kullanma

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.

  1. 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
  2. Yapılandırma dosyasını kaydedin ve dosyanın sahibi apigee:apigee olduğundan emin olun.
  3. 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 ilgili 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. Daha fazla güvenlik için şifreleri Karma olarak saklayabilirsiniz.

  1. 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ı 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 dosyanın sahibi apigee:apigee olduğundan emin olun.
  2. Şifrenin SHA256 karmasını oluşturun:
    echo -n '' | openssl dgst -sha256
  3. JMX kullanıcı kimlik bilgileriyle bir jmxremote.password dosyası oluşturun:
    1. 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
    2. Dosyayı düzenleyin ve aşağıdaki söz dizimini kullanarak JMX kullanıcı adınızı ve şifrenizi ekleyin:
      USERNAME <HASH-PASSWORD>
    3. Dosyanın sahibi 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
  4. JMX kullanıcı izinlerine sahip bir jmxremote.access dosyası oluşturun:
    1. Aşağıdaki dosyaları $JAVA_HOME dizininizden /opt/apigee/customer/application/<component>/ dizinine kopyalayın.
      
      cp ${JAVA_HOME}/lib/management/jmxremote.access$APIGEE_ROOT/customer/application/management-server/jmxremote.password/jmxremote.access
    2. Dosyayı düzenleyin ve JMX kullanıcı adınızı ve ardından bir izin ekleyin (OKUMA/YAZMA)
      USERNAME READONLY
    3. Dosyanın sahibi 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
  5. İlgili 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

Bir Edge-* bileşeninde SSL tabanlı JMX'i etkinleştirmek için:

  1. 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
    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 sahibi apigee:apigee olduğundan emin olun.
  2. 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 belirtilen yola yerleştirin. Anahtar deposu dosyasının apigee:apigee tarafından okunabildiğinden emin olun.
  3. İlgili 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. Uygun 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çıklanan şekilde kalır.

"Jconsole, JMX için SSL etkinse, jconsole'un güven deposu ve güven deposu şifresiyle başlatılması gerekir." ifadesinin yer aldığı bir satır eklenebilir. Referans: https://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.html

JConsole ile İzle

Durum denetimi ve işlem istatistiklerini yönetip izlemek için JConsole'u (JMX uyumlu bir araç) kullanın. JConsole ile sunucularınız tarafından gösterilen JMX istatistiklerini tüketebilir ve bunları grafik arayüzde görüntüleyebilirsiniz. Daha fazla bilgi için JConsole'u kullanma konusuna bakın.

JMX için SSL etkinleştirildiyse JConsole'u güven deposu ve güven deposu şifresiyle başlatmanız gerekir. JConsole'u Kullanma konusuna bakın.

JConsole, JMX üzerinden sunulan JMX özelliklerini (MBeans) izlemek için aşağıdaki hizmet URL'sini kullanır:

service:jmx:rmi:///jndi/rmi://IP_address:port_number/jmxrmi

Burada:

Ö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ı bölümüne bakın.

Aşağıdaki tabloda genel JMX istatistikleri gösterilmektedir:

JMX MBeans JMX Özellikleri

Hafıza

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 bölümüne bakın.

Uygun bileşenin yapılandırma dosyasına eklenecek JMX yapılandırması

  • Uç bileşeninde 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 için 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. Yalnızca Apigee kullanıcılarına ait olmalı ve kullanıcılar tarafından okunabilmelidir.
    conf_system_jmxremote_access_file=/opt/apigee/customer/application/management-server/jmxremote.access
  • Şifre dosyasının yolu. Yalnızca Apigee kullanıcılarına ait olmalı ve kullanıcılar tarafından okunabilmelidir.
    conf_system_jmxremote_password_file=/opt/apigee/customer/application/management-server/jmxremote.password
  • Şifrenin şifrelenmiş biçimde depolanmasını 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. Yalnızca Apigee kullanıcılarına ait olmalı ve kullanıcılar tarafından 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 saplamaların ana makine adı. localhost'un varsayılan IP adresi.
    conf_system_java_rmi_server_hostname=
  • JMX kaydını SSL ile koruyun. Varsayılan yanlış. Yalnızca SSL etkinse geçerlidir.
    conf_system_jmxremote_registry_ssl=false

Management API ile izleme

Edge, sunucularınızda hizmet denetimleri 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 içerir. Bu bölümde söz konusu 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 (hizmetin hangisi olduğuna ve onu nasıl kontrol ettiğinize bağlı olarak):

curl: Failed connect to localhost:port_number; Connection refused
/servers/self

Aşağıdakiler dahil olmak üzere hizmetle ilgili bilgileri döndürür:

  • Yapılandırma özellikleri
  • Başlangıç zamanı ve çalışma zamanı
  • Derleme, BGBG ve UUID bilgileri
  • Dahili ve harici ana makine adları ve IP adresi
  • Bölge ve kapsül
  • Hizmetin çalışıp çalışmadığını gösteren <isUp> özelliği

Bu API çağrısı için Apigee yönetici 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ı bölümüne bakın.

Yanıtın biçimini değiştirmek için Accept üstbilgisini "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 örnek, 216.3.128.12 (bağlantı noktası 8082) adresindeki Mesaj İşleyici ile ilgili bilgileri alı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 API'sini kullanarak Yönetim Sunucuları ve Mesaj İşleyicilerde proxy'lerinizin kullanıcı, kuruluş ve dağıtım durumunu izlemek için aşağıdaki komutları kullanabilirsiniz:

curl http://host:port_number/v1/users -u sysAdminEmail:password
curl 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 Mesaj İşleyici için 8082'dir.

Bu çağrı, sistem yönetimi kullanıcı adınız ve şifrenizle kimlik doğrulaması yapmanızı gerektiriyor.

Sunucu, tüm çağrılar için "Dağıtıldı" durumunu döndürmelidir. Bu işlemler başarısız olursa aşağıdakileri yapın:

  1. 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
  2. Düzgün çalışıp çalışmadığını kontrol etmek için sunucuya bir çağrı yapın.
  3. Sunucuyu ELB'den kaldırıp yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service service_name restart

    service_name burada:

    • edge-management-server
    • edge-message-processor

apigee-service komutuyla durumu kontrol edin

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:

  1. 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
  2. Hizmet çalışmıyorsa hizmeti başlatın:
    /opt/apigee/apigee-service/bin/apigee-service service_name start
  3. Hizmeti yeniden başlattıktan sonra, daha önce kullandığınız apigee-service status komutunu veya Yönetim API'si ile izleme başlıklı makalede 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

    Burada port_number, hizmet için Management API bağlantı noktasıdır.

    Bu örnekte, sunucuya giriş yaptığınız ve ana makine adı olarak "localhost"u kullanabileceğiniz varsayılmıştır. Durumu Management API ile uzaktan kontrol etmek için sunucunun IP adresini belirtmeniz ve sistem yöneticisi kullanıcı adını ve şifresini API çağrınıza dahil etmeniz 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'teki kuruluşları ve ortamları kontrol edin

Aşağıdaki curl komutunu vererek Postgres sunucusuna entegre 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östermelidir.

Analiz durumunu doğrulama

Aşağıdaki curl komutunu vererek 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, tüm analiz sunucuları için aşağıdaki örnekte gösterildiği gibi 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, Postgres veritabanını izlemek için özel olarak 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ı olan 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:

  1. Her Postgres düğümüne check_postgres.pl komut dosyasını yüklemeniz gerekir.
  2. Yüksek çözünürlüklü alarm, uyku, gün ve aralıklı zamanlayıcılar uygulayan Perl modülünü 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
  3. CentOS 7: CentOS v7'de check_postgres.pl kullanmadan önce perl-Data-Dumper.x86_64 BGBG'sini 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:

  1. 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'
  2. Veritabanına gelen bağlantı 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
  3. 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
  4. 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%'
  5. Postgres düğümüne eklenen 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 çalıştırma

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"

Postgres sürecinin sağlık durumunu kontrol etme

Aşağıdaki curl komutunu çağırarak Postgres makinesinde API kontrolleri gerçekleştirebilirsiniz:

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 göz atın:

Apache Cassandra

JMX, Cassandra için varsayılan olarak etkindir. Cassandra'ya uzaktan JMX erişimi sağlamak için şifre gerekmez.

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:

  1. cassandra.properties dosyasını oluşturun ve düzenleyin:
    1. /opt/apigee/customer/application/cassandra.properties dosyasını düzenleyin. Dosya mevcut değilse dosyayı oluşturun.
    2. Dosyaya şunları 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
    3. cassandra.properties dosyasını kaydedin.
    4. 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 konusuna bakın.

  2. jmx_auth.sh öğesini oluşturun ve düzenleyin:
    1. Dosya mevcut değilse şu konumda oluşturun:
      /opt/apigee/customer/application/jmx_auth.sh
    2. Dosyaya aşağıdaki özellikleri ekleyin:
      export CASS_JMX_USERNAME=JMX_USERNAME
      export CASS_JMX_PASSWORD=JMX_PASSWORD
    3. jmx_auth.sh dosyasını kaydedin.
    4. Dosyayı kaynak olarak ekleyin:
      source /opt/apigee/customer/application/jmx_auth.sh
  3. jmxremote.password dosyasını kopyalayıp düzenleyin:
    1. Şu 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
    2. jmxremote.password dosyasını düzenleyin ve aşağıdaki söz dizimini kullanarak JMX kullanıcı adınız ile şifrenizi ekleyin:
      JMX_USERNAME JMX_PASSWORD

      Burada JMX_USERNAME ve JMX_PASSWORD, daha önce ayarladığınız JMX kullanıcı adı ve şifresidir.

    3. Dosyanın "Apigee"ye ait 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
  4. jmxremote.access dosyasını kopyalayıp düzenleyin:
    1. Şu 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
    2. jmxremote.access dosyasını düzenleyin ve aşağıdaki rolü ekleyin:
      JMX_USERNAME readwrite
    3. Dosyanın "Apigee"ye ait 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
  5. Cassandra'da configure komutunu çalıştırın:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
  6. Cassandra'yı yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  7. Bu işlemi diğer tüm Cassandra düğümlerinde tekrarlayın.

JMX şifre şifrelemesini etkinleştir

JMX şifre şifrelemesini etkinleştirmek için aşağıdaki adımları uygulayın:

  1. source/conf/casssandra-env.sh dosyasını açın.
  2. cassandra.properties dosyasını oluşturun ve düzenleyin:
    1. /opt/apigee/customer/application/cassandra.properties dosyasını düzenleyin. Dosya yoksa oluşturun.
    2. Dosyaya şunları ekleyin:
      conf_cassandra_env_com.sun.management.jmxremote.encrypted.authenticate=true
    3. cassandra.properties dosyasını kaydedin.
    4. Aşağıdaki örnekte gösterildiği gibi, dosya sahibini Apigee:Apigee olarak değiştirin:
      chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
  3. Komut satırında echo -n 'Secret' | openssl dgst -sha1 yazarak istenen şifrelerin SHA1 karmalarını oluşturun
  4. Önceki bölümde oluşturulan $APIGEE_ROOT/customer/application/apigee-cassandra/jmxremote.password içindeki kullanıcı adına göre şifreleri belirleyin.
  5. Cassandra'da yapılandırmayı çalıştırın:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
  6. Cassandra'yı yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  7. Bu işlemi diğer tüm Cassandra düğümlerinde 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. SSL ile JMX'i etkinleştirmek için Cassandra'ya, SSL tabanlı JMX bağlantılarını kabul etmek üzere 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 tüm araçları) yapılandırmanız gerekir.

SSL özellikli JMX, hem düz metni hem de şifrelenmiş JMX şifrelerini destekler.

Cassandra için SSL ile JMX'i etkinleştirmek üzere aşağıdaki prosedürü uygulayın:

  1. JMX'i etkinleştirin. Gerekirse şifre şifrelemeyi etkinleştirin.
  2. Cassandra için JMX kimlik doğrulamasını etkinleştirin. gerekir. 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
  3. Anahtar deposu ve güven deposunu hazırlama.

    • Cassandra sunucusunu yapılandırmak için kullanılan anahtar deposu, bir anahtar ve sertifika içermelidir. 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 (anahtarı kullanarak anahtar oluşturduğunuzda varsayılan olarak kullanılır).

    • Truststore yalnızca sertifikayı içermelidir ve istemciler tarafından (Apigee-service tabanlı komutlar veya nodetool) JMX üzerinden bağlantı kurmak için kullanılır.

    Yukarıdaki koşulları doğruladıktan sonra:

    1. Anahtar deposu dosyasını /opt/apigee/customer/application/apigee-cassandra/ konumuna yerleştirin.
    2. Anahtar deposu dosyasının yalnızca Apigee kullanıcısı tarafından okunabildiğinden emin olmak için
      chown apigee:apigee /opt/apigee/customer/application/apigee-cassandra/keystore.node1
      chmod 400 /opt/apigee/customer/application/apigee-cassandra/keystore.node1
      yazın.
  4. Aşağıdaki adımları uygulayarak SSL ile JMX için Cassandra'yı yapılandırın:
    1. apigee-service apigee-cassandra stop
      yazarak Cassandra düğümünü durdurun
    2. /opt/apigee/customer/application/cassandra.properties dosyasını açıp 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
    3. Aşağıdaki örnekte gösterildiği gibi, dosya sahibini Apigee:Apigee olarak değiştirin:
      chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
    4. Cassandra'da yapılandırmayı çalıştırın:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
    5. Cassandra'yı yeniden başlatın:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
    6. Bu işlemi diğer tüm Cassandra düğümlerinde tekrarlayın.
    7. apigee-service apigee-cassandra start
      yazarak Cassandra düğümünü başlatın
  5. 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 yapılandırmasının çeşitli seçenekleri vardır. Kullanılabilirlik ve güvenlik yöntemlerinize bağlı olarak bir seçenek belirleyin.

    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üvenilir dosyanın Apigee kullanıcısı tarafından okunabildiğinden emin olun.

    Aşağıdaki apigee-service komutunu çalıştırın. Hata olmadan ç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. Hata olmadan çalışıyorsa yapılandırmalarınız doğrudur.

    apigee-service apigee-cassandra ring

    3. Seçenek (Doğrudan apigee-service öğesine aktarılan SSL bağımsız değişkenleri)

    Aşağıdaki gibi 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
  6. Düğüm aracını ayarlayın. Nodetool, kendisine JMX parametrelerinin iletilmesini gerektirir. Düğüm aracını, 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 iletilme biçiminde 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ılabilirlik ve güvenlik yöntemlerinize bağlı olarak uygun bir seçenek belirleyin.

    Düğüm aracı parametreleri hakkında daha fazla bilgi edinmek için DataStax belgelerini inceleyin.

    Yapılandırma Seçeneği 1

    Nodetool'u çalıştıran kullanıcının ana dizininde bir dosya oluşturun.

    $HOME/.cassandra/nodetool-ssl.properties

    Dosyaya şu 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 Trustedstore yolu, nodetool'u çalıştıran tüm kullanıcılar tarafından erişilebilir olmalıdır.

    nodetool öğesini --ssl seçeneği ile çalıştırın.

    /opt/apigee/apigee-cassandra/bin/nodetool --ssl -u <jmx-user-name> -pw <jmx-user-password> -h localhost ring

    Yapılandırma seçeneği 2

    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:

  1. apigee-service apigee-cassandra stop
    yazarak apigee-cassandra uygulamasını durdurun
  2. /opt/apigee/customer/application/cassandra.properties dosyasından conf_cassandra-env_com.sun.management.jmxremote.ssl=true satırını kaldırın.
  3. /opt/apigee/apigee-cassandra/source/conf/cassandra-env.sh
    # 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”
    içinde aşağıdaki satırlarla ilgili yorum yapın
  4. apigee-cassandra özelliğini girerek başlayın
  5. apigee-service apigee-cassandra start
  6. Ayarlanmışsa CASS_JMX_SSL ortam değişkenini kaldırın.

    unset CASS_JMX_SSL
  7. ring, stop, backup gibi apigee-service tabanlı komutların çalışıp çalışmadığını kontrol edin.
  8. --ssl anahtarını Nodetool ile kullanmayı durdurun

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:

  1. /opt/apigee/customer/application/cassandra.properties öğesini düzenle.
  2. Dosyadan şu satırı kaldırın:
    conf_cassandra-env_com.sun.management.jmxremote.authenticate=true
  3. Cassandra'da yapılandırmayı çalıştırın:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
  4. Cassandra'yı yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  5. Bu işlemi diğer tüm Cassandra düğümlerinde tekrarlayın.

JConsole'u kullanın: Görev istatistiklerini izleyin

JMX aracılığıyla sunulan JMX özelliklerini (MBeans) 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

ColumnAileler/apprepo/ortamlar

ColumnAileler/uygulamalar/kuruluşlar

ColumnAileler/apprepo/apiproxy_revisions

ColumnAileler/apprepo/apiproxies

ColumnAileler/denetim/denetimler

ColumnAileler/denetim/denetimler_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.

Tüm Cassandra küme düğümlerinde aşağıdaki çağrılar yapılabilir:

  1. Genel çalma bilgileri (tek Cassandra düğümü için de mümkündür): Tüm düğümler için "Yukarı" ve "Normal" değerlerini bulun.
    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 gibidir:

    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

  2. Düğümler hakkında genel bilgiler (düğüm başına çağrı)
    nodetool [-u username -pw password]  -h localhost info

    Yukarıdaki komutun çıkışı şu şekilde 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
  3. İkinci el sunucusunun durumu (istemci API'sini sunar)
    nodetool [-u username -pw password] -h localhost statusthrift

    Yukarıdaki komutun çıkışı şu şekilde görünür:

    running

  4. Veri akışı işlemlerinin durumu: Cassandra düğümlerinin trafiğini gözlemleyin:
    nodetool [-u username -pw password] -h localhost netstats

    Yukarıdaki komutun çıkışı şu şekilde 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

Düğüm aracı hakkında daha fazla bilgi edinmek için Düğüm aracı yardımcı programı hakkında başlıklı makaleye 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 konsolun 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 belgelerindeki Web Yönetim Konsolu'na bakın.

Yönetim Konsolu'na erişme

Yönetim konsolu için varsayılan bağlantı noktası 8090'dır. Konsola bu varsayılan bağlantı noktasından 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 belirlenen veya Edge yapılandırma dosyasında ayarlanan varsayılan kimlik bilgilerini kullanın. Ayrıntılar için Uç yapılandırma dosyası referansı bölümüne bakın.

Sıraları ve iletileri izleme

Sol gezinme panelinde Java-Broker > virtualhosts > sıralar'a gidin. Bir sıra seçerek ayrıntılarını kullanıcı arayüzünün ana bölümünde görüntüleyin. Ayrıntılar görünümünde, teslim edilen mesajlar, sıraya alınan mesajlar, mesaj hızları vb. hakkındaki bilgiler dahil olmak üzere Sıra Özellikleri ve İstatistikleri'ni görebilirsiniz.

Günlük dosyalarını görüntüleme ve indirme

Sol gezinme panelinde Java-Broker > brokerloggers > logfile seçeneğine 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 otomatik hale getirmek ve acenteyi izlemek için Apache Qpid Broker-J REST API'sini 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"

Qpid için SSL ile izlemeyi etkinleştirme

İzleme ve yönetim için ek güvenlik sağlamak üzere Qpid'in Yönetim portalında ve Qpid'in Management API'lerinde SSL'yi etkinleştirin. Anahtar ve sertifika sağlamak için aşağıdaki yönergeleri uygulayın.

Qpid, Apigee'de etkinleştirilen Dosya Anahtar Deposu seçeneği sunar. Bu tür, Java ve Java araçlarının anladığı standart JKS anahtar deposu biçimini kabul eder (ör. keytool).

Anahtar deposu hazırlığı

Sertifika dosyasını, Keytool'u kullanmaya ek olarak Qpidd istemcileri tarafından kullanılmak üzere doğrudan sağlamanız gerekir.

Anahtar depoları oluşturmak için Java Keytool belgelerine bakın.

Koşulları doğruladıktan sonra

  1. Anahtar deposu ve sertifika dosyalarını /opt/apigee/customer/application/apigee-qpidd konumuna yerleştirin.
  2. 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-qpidd/qpidd.keystore
      chmod 400 /opt/apigee/customer/application/apigee-qpidd/qpidd.keystore
        
      chown apigee:apigee /opt/apigee/customer/application/apigee-qpidd/qpidd-cert.pem
      chmod 400 /opt/apigee/customer/application/apigee-qpidd/qpidd-cert.pem

Qpid'de SSL'yi Etkinleştir

Tek seferde bir Qpid düğümünde aşağıdaki adımları uygulayın:

/opt/apigee/customer/application/qpidd.properties dosyasını açın ve aşağıdaki satırları ekleyin:

conf_qpidd_qpid_management.https.enabled=true
  conf_qpidd_qpid.keystore.storeUrl=/opt/apigee/customer/application/apigee-qpidd/qpidd.keystore
  conf_qpidd_qpid.keystore.password=keystore-password
  conf_qpidd_qpid.keystore.certificateAlias=certificate-alias
  conf_qpidd_qpid.keystore.certificate=/opt/apigee/customer/application/apigee-qpidd/qpidd-cert.pem
  1. Dosya sahibini Apigee:Apigee olarak değiştirin:
    chown apigee:apigee /opt/apigee/customer/application/qpidd.properties
  2. Qpidd'i yapılandırın:
    apigee-service apigee-qpidd configure
  3. Qpidd'i yeniden başlatın:
    apigee-service apigee-qpidd restart
  4. Bekleme süresiyle durumu kontrol edin:
    apigee-service apigee-qpidd wait_for_ready

SSL yapılandırmasını geri döndür

/opt/apigee/customer/application/qpidd.properties dosyasındaki özellikleri kaldırın veya bunlara yorum ekleyin:

conf_qpidd_qpid_management.https.enabled=true
  conf_qpidd_qpid.keystore.storeUrl=/opt/apigee/customer/application/apigee-qpidd/keystore
  1. Qpidd'i yapılandırın:
    apigee-service apigee-qpidd configure
  2. Qpidd'i yeniden başlatın:
    apigee-service apigee-qpidd restart
  3. Bekleme süresiyle durumu kontrol edin:
    apigee-service apigee-qpidd wait_for_ready

Apache ZooKeeper

ZooKeeper durumunu kontrol etme

  1. ZooKeeper işleminin çalıştığından emin olun. ZooKeeper, opt/apigee/var/run/apigee-zookeeper/apigee-zookeeper.pid adresine bir PID dosyası yazar.
  2. Tüm ZooKeeper sunucularında 2181 ve 3888 bağlantı noktalarına TCP bağlantısı kurabildiğinizden emin olmak için ZooKeeper bağlantı noktalarını test edin.
  3. 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.
  4. Durumu kontrol edin:
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper status

ZooKeeper'daki dört harfli kelimeleri kullanma

ZooKeeper, netcat (nc) veya telnet kullanılarak bağlantı noktası 2181'e gönderilen küçük bir komut grubuyla (dört harfli kelime) izlenebilir.

ZooKeeper komutları hakkında daha fazla bilgi 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:

  1. 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" değerini döndürür.
    echo ruok | nc host 2181

    Dönen:

    imok
  2. 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
  3. Netcat (nc) mevcut değilse python'u alternatif olarak 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üzey testi

Belirli isteklerin düzgün bir şekilde sunulup sunulmadığını görmek için OpenLDAP'yi izleyebilirsiniz. Diğer bir deyişle, doğru sonucu döndüren belirli bir arama olup olmadığını kontrol edin.

  1. Sistem yöneticisinin girişini sorgulamak için ldapsearch (yum install openldap-clients) aracını 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 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
  2. Aşağıdaki komutu kullanarak Yönetim Sunucusu'nun hâlâ LDAP'ye bağlı olup olmadığını kontrol edin:
    curl -u userEMail:password http://localhost:8080/v1/users/ADMIN

    Dönen:

    {
      "emailId" : ADMIN,
      "firstName" : "admin",
      "lastName" : "admin"
    }

Ayrıca, disk erişimlerinin sayısını azaltarak sistemin performansını artırmaya yardımcı olan OpenLDAP önbelleklerini de izleyebilirsiniz. OpenLDAP sunucusunda ö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.