Yüksek kullanılabilirlik için Apigee TOA'yı yükleme

İki senaryoda yüksek kullanılabilirlik için Apigee TOA'nın birden fazla örneğini yüklersiniz:

  • Tek bir veri merkezi ortamında, yüksek kullanılabilirlik ortamı oluşturmak için iki Apigee SSO örneği yükleyin. Bu, SSO modüllerinden biri çöktüğünde sistemin çalışmaya devam edeceği anlamına gelir.
  • İki veri merkezinin bulunduğu bir ortamda, Apigee TOA'yı her iki veri merkezine de yükleyin. Böylece, bir veri merkezindeki Apigee TOA devre dışı kalırsa sistem çalışmaya devam eder.

Aynı veri merkezine iki Apigee SSO modülü yükleme

Yüksek kullanılabilirliği desteklemek için tek bir veri merkezinde, farklı apigee-openldap düğümlerinde iki Apigee TOA örneği dağıtırsınız. Bu senaryoda:

  • Apigee SSO'nun her iki örneği de aynı Postgres sunucusuna bağlı olmalıdır. Apigee, Apigee SSO için Edge ile yüklediğiniz Postgres sunucusunu değil, özel bir Postgres sunucusu kullanılmasını önerir. Durum kalıcılığı için her iki örneğin de apigee_dex veritabanını paylaşması gerekir.
  • Manuel JWT anahtarı dağıtımı gerekmez: Eski UAA bileşeninin aksine, modernize edilmiş Apigee TOA, JSON Web Anahtarı Kümelerini (JWKS) ve OAuth2 durumunu paylaşılan PostgreSQL veritabanında yerel olarak depolar ve senkronize eder. İmzalama anahtarlarını düğümler arasında manuel olarak kopyalamanız gerekmez.
  • Dahili OpenLDAP için kimlik bilgisi senkronizasyonu: Varsayılan dahili OpenLDAP'yi kullanıyorsanız Apigee SSO, özel bir salt okunur hizmet hesabı (cn=sso-reader) kullanır. Yüksek kullanılabilirlik (Node 2) için yöneticinin her iki düğümde de /opt/silent.conf içinde aynı SSO_READER_PW değerini ayarlaması veya Node 2'de setup-sso komutunu çalıştırmadan önce Node 1'deki /opt/apigee/data/apigee-openldap/sso-reader.key değerini Node 2'ye kopyalaması gerekir.

    Anahtar dosyasını manuel olarak kopyalamak için 2. düğümde aşağıdaki komutları çalıştırın:

    scp node1_ip:/opt/apigee/data/apigee-openldap/sso-reader.key /opt/apigee/data/apigee-openldap/sso-reader.key
    chown apigee:apigee /opt/apigee/data/apigee-openldap/sso-reader.key
    chmod 600 /opt/apigee/data/apigee-openldap/sso-reader.key
  • Apigee SSO'nun iki örneğinin önünde bir yük dengeleyiciye ihtiyacınız vardır:
    • Yük dengeleyiciyi, TOA'da TCP veya HTTP durum denetimi yapacak şekilde yapılandırın. HTTP için /healthz değerini ekleyin:
      http_or_https://edge_sso_IP_DNS:9099/healthz

      Bağlantı noktasını Apigee TOA tarafından ayarlanan şekilde belirtin. Varsayılan bağlantı noktası 9099'dur.

    • Bazı yük dengeleyici ayarları, Apigee TOA'da HTTPS'yi etkinleştirip etkinleştirmediğinize bağlıdır. Daha fazla bilgi için aşağıdaki bölümleri inceleyin.

Apigee TOA'ya HTTP erişimi

Apigee TOA'ya HTTP erişimi kullanıyorsanız yük dengeleyiciyi şu şekilde yapılandırın:

  • Apigee TOA'ya bağlanmak için HTTP modunu kullanın.
  • Apigee SSO ile aynı bağlantı noktasını dinleyin.

Apigee SSO, varsayılan olarak 9099 numaralı bağlantı noktasında HTTP isteklerini dinler. İsteğe bağlı olarak, bağlantı noktasını ayarlamak için /opt/silent.conf dosyanızda SSO_PUBLIC_URL_PORT kullanabilirsiniz. Bağlantı noktasını varsayılandan değiştirmek için SSO_PUBLIC_URL_PORT kullandıysanız yük dengeleyicinin bu bağlantı noktasını dinlediğinden emin olun.

Örneğin, her TOA örneğinde, yapılandırma dosyasına aşağıdakileri ekleyerek bağlantı noktasını 9033 olarak ayarlarsınız:

SSO_PUBLIC_URL_PORT=9033

Ardından, yük dengeleyiciyi 9033 numaralı bağlantı noktasını dinleyecek ve istekleri 9033 numaralı bağlantı noktasındaki TOA örneklerine yönlendirecek şekilde yapılandırın. Bu senaryoda Apigee TOA'nın herkese açık veren URL'si şudur:

http://LB_DNS_NAME:9033

Apigee TOA'ya HTTPS erişimi

HTTPS ile HA'yı aşağıdaki iki moddan birini kullanarak yapılandırabilirsiniz. Her iki senaryoda da HTTPS erişimi için Apigee TOA'yı yapılandırma başlıklı makaledeki ayrıntılı kurulum adımlarını uygulayın.

1. Mod: Yük dengeleyici TLS'yi sonlandırır (SSL_PROXY)

Yük dengeleyiciniz TLS bağlantısını sonlandırırsa düz HTTP trafiğini Apigee TOA örneklerine yönlendirmelidir.

  • SSO_PUBLIC_URL_SCHEME=https ve SSO_PUBLIC_URL_PORT=443 (veya yük dengeleyicinizin herkese açık HTTPS bağlantı noktası) değerlerini /opt/silent.conf dosyanızda ayarlayın.
  • Yük dengeleyiciyi, arka uç Apigee TOA örneklerine bağlanmak için HTTP modunu kullanacak şekilde yapılandırın.
  • Yük dengeleyiciyi, istekleri yerel HTTP bağlama bağlantı noktalarındaki (varsayılan: 9099) Apigee SSO örneklerine yönlendirecek şekilde yapılandırın.

2. Mod: Apigee SSO, TLS'yi sonlandırır (SSL_TERMINATION)

Apigee SSO örneklerinin TLS bağlantılarını doğrudan sonlandırmasını istiyorsanız yük dengeleyici, şifrelenmiş trafiği bu örneklere iletmelidir.

  • /opt/silent.conf dosyanızda SSO_PUBLIC_URL_SCHEME=https ve SSO_PUBLIC_URL_PORT=9443 (veya seçtiğiniz güvenli bağlantı noktası) değerlerini ayarlayın.
  • Yük dengeleyiciyi, arka uca bağlanmak için TCP modunu (HTTP modunu değil) kullanacak şekilde yapılandırın. Böylece Apigee TOA, TLS'yi sonlandırabilir.
  • Yük dengeleyiciyi Apigee SSO ile aynı bağlantı noktasında dinleyecek ve istekleri güvenli bağlantı noktalarındaki (ör. 9443) Apigee SSO örneklerine yönlendirecek şekilde yapılandırın.

Apigee SSO'yu birden fazla veri merkezine yükleme

Birden fazla veri merkezinin bulunduğu bir ortamda, her veri merkezine bir Apigee TOA örneği (apigee-openldap aracılığıyla) yüklersiniz. Tüm trafiği tek bir TOA örneği yönetir. Bu örnek devre dışı kalırsa trafiği ikinci TOA örneğine geçirebilirsiniz.

Apigee TOA'yı iki veri merkezine yüklemeden önce aşağıdakilere ihtiyacınız vardır:

  • Birincil Postgres sunucusunun IP adresi veya alan adı.

    Birden fazla veri merkezinin bulunduğu bir ortamda genellikle her veri merkezine bir Postgres sunucusu yükler ve bunları ana-yedek çoğaltma modunda yapılandırırsınız. Bu örnekte, veri merkezi 1'de Master Postgres sunucusu, veri merkezi 2'de ise Standby sunucusu bulunuyor. Daha fazla bilgi için Postgres için birincil-bekleme replikasyonunu ayarlama başlıklı makaleyi inceleyin.

  • Tek bir TOA örneğine işaret eden tek bir DNS girişi. Örneğin, 1. veri merkezindeki SSO örneğini işaret eden aşağıdaki biçimde bir DNS girişi oluşturursunuz:
    my-sso.domain.com => apigee-sso-dc1-ip-or-lb
  • Senkronize edilmiş OpenLDAP okuyucu kimlik bilgileri. Dahili OpenLDAP kullanıyorsanız kurulum sırasında küme senkronizasyonunun bozulmasını önlemek için her iki veri merkezinin de aynı SSO_READER_PW dosyasını kullandığından veya aynı sso-reader.key dosyasını paylaştığından emin olmanız gerekir.

Her veri merkezinde Apigee TOA'yı yapılandırırken her iki yapılandırmayı da veri merkezi 1'deki Postgres ana sunucusuna yönlendirirsiniz:

## Postgres configuration
PG_HOST=IP_or_DNS_of_PG_Master_in_DC1
PG_PORT=5432

Ayrıca her iki veri merkezini de paylaşılan DNS girişini herkese açık olarak erişilebilen veren URL'si olarak kullanacak şekilde yapılandırmanız gerekir. setup-sso komut dosyası, veren URL'sini otomatik olarak oluşturup bağlantı noktasını eklediğinden, bağlantı noktasının gerekli değilse eklenmesini önlemek için tam URL'yi /opt/silent.conf yerine doğrudan /opt/apigee/customer/application/openldap.properties içinde ayarlamanız gerekir:

# Externally accessible URL of the Apigee SSO
etc_sso_config_issuer_url=https://my-sso.domain.com

TOA yük devretme işlemini yönetme

Veri merkezi 1'deki Apigee TOA örneği (veya Postgres ana sunucusu) devre dışı kalırsa etkin OAuth oturumlarını kaybetmeden veri merkezi 2'deki TOA örneğine geçebilirsiniz:

  1. PostgreSQL veritabanı yük devretmesini işleme başlıklı makalede açıklandığı gibi, 2. veri merkezindeki Postgres bekleme sunucusunu ana sunucuya dönüştürün.
  2. DNS kaydınızı, my-sso.domain.com öğesini 2. veri merkezindeki SSO örneğine yönlendirecek şekilde güncelleyin:
    my-sso.domain.com => apigee-sso-dc2-ip-or-lb
  3. Veri merkezi 2'deki Apigee TOA için /opt/silent.conf dosyanızı, veri merkezi 2'deki yeni Postgres Master sunucusunu işaret edecek şekilde güncelleyin:
    ## Postgres configuration
    PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
  4. Bağlantısını yerel olarak güncellemek için Apigee SSO'yu veri merkezi 2'de yeniden yapılandırın ve yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap setup-sso -f /opt/silent.conf