Share via


VMware Spring Cloud Gateway'i yapılandırma

Not

Azure Spring Apps, Azure Spring Cloud hizmetinin yeni adıdır. Hizmetin yeni bir adı olsa da, ekran görüntüleri, videolar ve diyagramlar gibi varlıkları güncelleştirmek için çalışırken bazı yerlerde eski adı bir süre görürsünüz.

Bu makale şunlar için geçerlidir:❌ Temel/Standart ✔️ Kurumsal

Bu makalede, Azure Spring Apps Enterprise planıyla VMware Tanzu için VMware Spring Cloud Gateway'i yapılandırma adımları gösterilmektedir.

VMware Spring Cloud Gateway, açık kaynak Spring Cloud Gateway projesini temel alan ticari bir VMware Tanzu bileşenidir. Tanzu için VMware Spring Cloud Gateway, API geliştirme ekipleri için çoklu oturum açma (SSO), erişim denetimi, hız sınırlama, dayanıklılık ve güvenlik gibi çapraz kesme sorunlarını ele alır. API geliştirme için tercih ettiğiniz programlama dilinde modern buluta özel desenleri kullanarak API teslimini hızlandırabilirsiniz.

VMware Spring Cloud Gateway örneği trafiği kurallara göre yönlendirir. Dinamik trafik yükünü karşılamak için ölçeği genişletmeyi/genişletmeyi/azaltmayı destekler.

VMware Spring Cloud Gateway aşağıdaki özellikleri içerir:

  • Tek tek uygulamalardan bağımsız olarak, yeniden derlemeden uygulayabileceğiniz ve değiştirebileceğiniz dinamik yönlendirme yapılandırması
  • Yetkili JSON Web Belirteci (JWT) taleplerini uygulama hizmetlerine taşımak için ticari API rota filtreleri
  • İstemci sertifikası yetkilendirmesi
  • Hız sınırlama yaklaşımları
  • Devre kesici yapılandırması
  • HTTP Temel Kimlik Doğrulaması kimlik bilgileri aracılığıyla uygulama hizmetlerine erişim desteği

VMware Tanzu api portalıyla tümleştirmek için VMware Spring Cloud Gateway, yönlendirme yapılandırmasında yapılan tüm eklemeler veya değişikliklerden sonra otomatik olarak OpenAPI sürüm 3 belgeleri oluşturur. Daha fazla bilgi için bkz . VMware Tanzu için API portalını kullanma.

Önkoşullar

  • VMware Spring Cloud Gateway'in etkinleştirildiği önceden sağlanmış bir Azure Spring Apps Enterprise planı hizmet örneği. Daha fazla bilgi için bkz . Hızlı Başlangıç: Kurumsal planı kullanarak uygulamaları derleme ve Azure Spring Apps'e dağıtma.
  • Azure CLI sürüm 2.0.67 veya üzeri. Azure Spring Apps uzantısını yüklemek için aşağıdaki komutu kullanın: az extension add --name spring.

VMware Spring Cloud Gateway'i etkinleştirme veya devre dışı bırakma

Hizmet örneği oluşturulduktan sonra Azure portalını veya Azure CLI'yı kullanarak VMware Spring Cloud Gateway'i etkinleştirebilir veya devre dışı bırakabilirsiniz. VMware Spring Cloud Gateway'i devre dışı bırakmadan önce uç noktasının atamasını kaldırmanız ve tüm yol yapılandırmalarını kaldırmanız gerekir.

Azure portalını kullanarak VMware Spring Cloud Gateway'i etkinleştirmek veya devre dışı bırakmak için aşağıdaki adımları kullanın:

  1. Hizmet kaynağınıza gidin ve Spring Cloud Gateway'i seçin.
  2. Yönet'i seçin.
  3. Spring Cloud Gateway'i Etkinleştir onay kutusunu seçin veya temizleyin ve ardından Kaydet'i seçin.

Artık Spring Cloud Gateway'in durumunu Spring Cloud Gateway sayfasında görüntüleyebilirsiniz.

Spring Cloud Gateway sayfasını gösteren Azure portalının ekran görüntüsü.

VMware Spring Cloud Gateway'i yeniden başlatma

Yeniden başlatma eylemini tamamladıktan sonra VMware Spring Cloud Gateway örnekleri sıralı olarak yeniden başlatılır.

Azure portalını kullanarak VMware Spring Cloud Gateway'i yeniden başlatmak için aşağıdaki adımları kullanın:

  1. Hizmet kaynağınıza gidin ve Spring Cloud Gateway'i seçin.
  2. Yeniden Başlat'ı seçin.
  3. Yeniden başlatmayı onaylamak için Tamam'ı seçin.

Ağ geçidini yeniden başlatmayla ilgili onay iletisini içeren Spring Cloud Gateway sayfasını gösteren Azure portalının ekran görüntüsü.

VMware Spring Cloud Gateway'e genel uç nokta atama

Bu bölümde, VMware Spring Cloud Gateway'e genel uç nokta atama ve özelliklerini yapılandırma işlemleri açıklanmaktadır.

Azure portalında bir uç nokta atamak için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizi açın.
  2. Gezinti bölmesinde Spring Cloud Gateway'i ve ardından Genel Bakış'ı seçin.
  3. Uç nokta ata'yı Evet olarak ayarlayın.

Birkaç dakika sonra URL yapılandırılan uç nokta URL'sini gösterir. Daha sonra kullanmak için URL'yi kaydedin.

Spring Cloud Gateway'e genel bakış sayfasını gösteren ve uç nokta atamaya yönelik iki durumlu düğmeyi gösteren Azure portalının ekran görüntüsü.

VMware Spring Cloud Gateway meta verilerini yapılandırma

VMware Spring Cloud Gateway meta verileri otomatik olarak OpenAPI sürüm 3 belgeleri oluşturur. VMware Spring Cloud Gateway meta verilerini, VMware Tanzu için API portalında yol gruplarını görüntüleyecek şekilde yapılandırabilirsiniz. Daha fazla bilgi için bkz . VMware Tanzu için API portalını kullanma.

Aşağıdaki tabloda kullanılabilir meta veri seçenekleri açıklanmaktadır:

Özellik Açıklama
title VMware Spring Cloud Gateway örneğinde bulunan API'lerin bağlamını açıklayan başlık. Varsayılan değer şudur: Spring Cloud Gateway for K8S.
description VMware Spring Cloud Gateway örneğinde bulunan API'lerin ayrıntılı açıklaması. Varsayılan değer: Generated OpenAPI 3 document that describes the API routes configured for '[Gateway instance name]' Spring Cloud Gateway instance deployed under '[namespace]' namespace.*.
documentation VMware Spring Cloud Gateway örneğinde bulunan API belgelerinin konumu.
version Bu VMware Spring Cloud Gateway örneğinde bulunan API'lerin sürümü. Varsayılan değer şudur: unspecified.
serverUrl VMware Spring Cloud Gateway örneğindeki API'lere erişmek için temel URL. API portalıyla tümleştirmek istiyorsanız bu özellik zorunludur.

Meta veri özelliklerini düzenlemek için Azure portalını veya Azure CLI'yi kullanabilirsiniz.

Azure portalında meta verileri düzenlemek için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizi açın.
  2. Gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
  3. API için listelenen özelliklerin değerlerini belirtin.
  4. Kaydet'i seçin.

API bölümünün vurgulandığı Spring Cloud Gateway yapılandırma sekmesini gösteren Azure portalının ekran görüntüsü.

Çoklu oturum açmayı yapılandırma

VMware Spring Cloud Gateway, OpenID kimlik sağlayıcısıyla çoklu oturum açma (SSO) aracılığıyla kimlik doğrulama ve yetkilendirmeyi destekler. Sağlayıcı OpenID Bağlan Bulma protokollerini destekler. Aşağıdaki tabloda SSO özellikleri açıklanmaktadır:

Özellik Gerekli mi? Açıklama
issuerUri Yes Veren tanımlayıcısı olarak onaylanan URI. Örneğin, ise issuerUrihttps://example.com, öğesine bir OpenID Sağlayıcısı Yapılandırma İsteği yapılır https://example.com/.well-known/openid-configuration. Sonucun bir OpenID Sağlayıcısı Yapılandırma Yanıtı olması beklenir.
clientId Yes Kimlik sağlayıcınızdan OpenID Bağlan istemci kimliği.
clientSecret Yes Kimlik sağlayıcınızdan gelen OpenID Bağlan istemci gizli dizisi.
scope Yes JWT kimlik belirteçlerine eklenecek kapsamların listesi. Bu liste, kimlik sağlayıcınızın izin verdiği kapsamları temel almalıdır.

Microsoft Entra Id ile SSO ayarlamak için bkz . Spring Cloud Gateway ve API Portal için Microsoft Entra Id kullanarak çoklu oturum açmayı ayarlama.

SSO özelliklerini düzenlemek için Azure portalını veya Azure CLI'yi kullanabilirsiniz.

Azure portalında SSO özelliklerini düzenlemek için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizi açın.
  2. Gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
  3. SSO için listelenen özelliklerin değerlerini belirtin.
  4. Kaydet'i seçin.

Çoklu oturum açma bölümünün vurgulandığı Spring Cloud Gateway yapılandırma sekmesini gösteren Azure portalının ekran görüntüsü.

VMware Spring Cloud Gateway yalnızca OpenID Bağlan Discovery protokollerini destekleyen yetkilendirme sunucularını destekler. Ayrıca, ağ geçidine yeniden yönlendirmelere izin vermek için dış yetkilendirme sunucusunu yapılandırdığından emin olun. Yetkilendirme sunucunuzun belgelerine bakın ve izin verilen yeniden yönlendirme URI'leri listesine ekleyin https://<gateway-external-url>/login/oauth2/code/sso .

Yanlış parola gibi yanlış SSO özelliğini yapılandırdıysanız, SSO özelliğinin tamamını kaldırmanız ve ardından doğru yapılandırmayı eklemeniz gerekir.

SSO'yı yapılandırdıktan sonra VMware Spring Cloud Gateway yolları için ayarlamayı ssoEnabled: true unutmayın.

SSO oturumu kapatmayı yapılandırma

VMware Spring Cloud Gateway hizmet örnekleri, geçerli SSO oturumunun oturumunu kapatmaya yönelik varsayılan bir API uç noktası sağlar. Bu uç noktanın yolu şeklindedir /scg-logout. Oturumu kapatma, oturumu kapatma uç noktasını nasıl çağırdığınıza bağlı olarak aşağıdaki sonuçlardan biriyle sonuç verir:

  • Oturumu kapatın ve kimlik sağlayıcısı (IdP) oturumu kapatmaya yeniden yönlendirin.
  • Hizmet örneği oturumunun oturumunu kapatın.

IdP ve SSO oturumunun oturumunu kapatma

Uç noktaya bir GET istek /scg-logout gönderirseniz, uç nokta IdP oturumu kapatma URL'sine bir 302 yeniden yönlendirme yanıtı gönderir. Kullanıcıyı ağ geçidi hizmet örneğindeki bir yola döndürmek üzere uç noktayı almak için, uç nokta ile /scg-logout isteğe bir yeniden yönlendirme parametresi GET ekleyin. Örneğin, ${server-url}/scg-logout?redirect=/home değerini kullanabilirsiniz.

Yeniden yönlendirme parametresinin değeri, VMware Spring Cloud Gateway hizmet örneğinde geçerli bir yol olmalıdır. Dış URL'ye yönlendiremezsiniz.

Aşağıdaki adımlarda, işlevin mikro hizmetlerinizde nasıl uygulandığına ilişkin bir örnek açıklanmaktadır:

  1. Oturum kapatma isteğini uygulamanıza yönlendirmek için bir yol yapılandırması alın. Bir örnek için GitHub'daki hayvan kurtarma deposundaki rota yapılandırmasına bakın.

  2. Uygulamaya ihtiyacınız olan oturumu kapatma mantığını ekleyin. Sonunda, hayvan kurtarma deposundaki return yöntemin değerinde gösterildiği gibi ağ geçidinin /scg-logoutgetActionButton uç noktasına yönelik bir GET isteğiniz olmalıdır.

Yalnızca SSO oturumunun oturumunu kapatma

kullanarak isteği /scg-logout uç noktaya 302XMLHttpRequestgönderirsenizGET, yeniden yönlendirme yutulabilir ve yanıt işleyicisinde işlenmez. Bu durumda, kullanıcı yalnızca VMware Spring Cloud Gateway hizmet örneğinde SSO oturumunun oturumu kapatılır. Kullanıcı hala geçerli bir IdP oturumuna sahip olabilir. Genellikle, kullanıcı yeniden oturum açmayı denerse, idP'den kimliği doğrulanmış olarak otomatik olarak ağ geçidine geri gönderilir.

Aşağıdaki örnekte gösterildiği gibi, oturum kapatma isteğini uygulamanıza yönlendirmek için bir yol yapılandırmanız olması gerekir. Bu kod yalnızca ağ geçidi oturumu kapatma SSO oturumu oluşturur.

const req = new XMLHttpRequest();
req.open("GET", "/scg-logout);
req.send();

Çıkış noktaları arası kaynak paylaşımını yapılandırma

Çıkış noktaları arası kaynak paylaşımı (CORS), bir web sayfasındaki kısıtlı kaynakların ilk kaynağın sunulduğu etki alanının dışındaki başka bir etki alanından istenmesini sağlar. Aşağıdaki tabloda kullanılabilir CORS yapılandırma seçenekleri açıklanmaktadır.

Özellik Açıklama
allowedOrigins Siteler arası istekte bulunmak için izin verilen kaynaklar
allowedOriginPatterns Siteler arası istekler yapmak için izin verilen çıkış noktası desenleri
allowedMethods Siteler arası isteklerde izin verilen HTTP yöntemleri
allowedHeaders Siteler arası isteklerde izin verilen üst bilgiler
maxAge İstemcilerin bir denetim öncesi isteğinden gelen yanıtı ne kadar süreyle (saniye olarak) önbelleğe almaları
allowCredentials Siteler arası isteklerde kullanıcı kimlik bilgilerinin desteklenip desteklenmediği
exposedHeaders Siteler arası istekler için kullanıma sunan HTTP yanıt üst bilgileri

API portalıyla tümleştirmek istiyorsanız doğru CORS yapılandırmasına sahip olduğunuzdan emin olun. Daha fazla bilgi için VMware Spring Cloud Gateway'e genel uç nokta atama bölümüne bakın.

Hizmet ölçeklendirmeyi kullanma

VCPU, bellek ve örnek sayısı gibi VMware Spring Cloud Gateway örnekleri için kaynak ayırmayı özelleştirebilirsiniz.

Yüksek kullanılabilirlik için tek bir çoğaltma kullanmanızı önermeyiz.

Aşağıdaki tabloda varsayılan kaynak kullanımı açıklanmaktadır.

Component name Örnek sayısı Örnek başına vCPU Örnek başına bellek
VMware Spring Cloud Gateway 2 1 çekirdek 2 GiB
VMware Spring Cloud Gateway operatörü 2 1 çekirdek 2 GiB

Ağ geçidi ile uygulamalar arasında TLS yapılandırma

Güvenliği geliştirmek ve hassas bilgilerin yetkisiz taraflar tarafından kesilmesine karşı korunmasına yardımcı olmak için VMware Spring Cloud Gateway ile uygulamalarınız arasında Aktarım Katmanı Güvenliği'ni (TLS) etkinleştirebilirsiniz.

TLS'yi yapılandırmadan önce TLS özellikli bir uygulama ve tls sertifikasına sahip olmanız gerekir. TLS sertifikası hazırlamak için, güvenilen bir sertifika yetkilisinden (CA) bir sertifika oluşturun. Sertifika, sunucunun kimliğini doğrular ve güvenli bir bağlantı kurar.

Azure Spring Apps'te çalıştırılan TLS özellikli bir uygulamanız olduktan sonra sertifikayı Azure Spring Apps'e yükleyin. Daha fazla bilgi için Azure Spring Apps'te uygulamanızda TLS/SSL sertifikalarını kullanma bölümünün Sertifikayı içeri aktarma bölümüne bakın.

Sertifika Azure Spring Apps'e güncelleştirildikten sonra ağ geçidi için TLS sertifikasını yapılandırabilir ve sertifika doğrulamasını etkinleştirebilirsiniz. Sertifikayı Azure portalında veya Azure CLI kullanarak yapılandırabilirsiniz.

Azure portalında sertifikayı yapılandırmak için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
  2. Spring Cloud Gateway sayfasında Sertifika yönetimi'ni seçin.
  3. Sertifika doğrulamasını etkinleştir'i seçin.
  4. Sertifikalar'da TLS sertifikasını seçin.
  5. Kaydet'i seçin.

Yapılandırmanın güncelleştirilmesi birkaç dakika sürebilir. Yapılandırma tamamlandığında bir bildirim almalısınız.

Yol yapılandırmasını hazırlama

Yol yapılandırmasında protokolü HTTPS olarak belirtmeniz gerekir. Aşağıdaki JSON nesnesi, VMware Spring Cloud Gateway'e ağ geçidi ile uygulama arasındaki tüm trafik için HTTPS protokolünü kullanmasını bildirir.

  1. Aşağıdaki içeriğe sahip test-tls-route.json adlı bir dosya oluşturun:

    {
        "routes": [
          {
            "title": "Test TLS app",
            "predicates": [
              "Path=/path/to/your/app",
              "Method=GET"
            ]
          }
         ],
        "uri": "https://<app-custom-domain-name>"
    }
    
  2. Kuralı uygulamaya uygulamak için aşağıdaki komutu kullanın:

    az spring gateway route-config create \
        --resource-group <resource-group-name> \
        --service <Azure-Spring-Apps-instance-name> \
        --name test-tls-app \
        --routes-file test-tls-route.json
    

Artık uygulamanın ağ geçidinin uç noktasıyla TLS'nin etkinleştirilip etkinleştirilmediğini test edebilirsiniz. Daha fazla bilgi için Spring Cloud Gateway'i kullanma bölümünün Yolları yapılandırma bölümüne bakın.

Sertifikaları döndürme

Sertifikaların süresi dolduktan sonra, aşağıdaki adımları kullanarak VMware Spring Cloud Gateway'de sertifikaları döndürmeniz gerekir:

  1. Güvenilen bir CA'dan yeni sertifikalar oluşturun.
  2. Sertifikaları Azure Spring Apps'e aktarın. Daha fazla bilgi için Azure Spring Apps'te uygulamanızda TLS/SSL sertifikalarını kullanma bölümünün Sertifikayı içeri aktarma bölümüne bakın.
  3. Azure portalını veya Azure CLI'yi kullanarak sertifikaları eşitleyin.

VMware Spring Cloud Gateway, ağ geçidinin tüm bağlantılar için yeni sertifikayı kullandığından emin olmak için yeniden başlatılır.

Sertifikaları eşitlemek için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
  2. Spring Cloud Gateway sayfasında Yeniden Başlat'ı seçin ve işlemi onaylayın.

Otomatik ölçeklendirme ayarlarını ayarlama

VMware Spring Cloud Gateway için otomatik ölçeklendirme modları ayarlayabilirsiniz.

Aşağıdaki listede, Otomatik Ölçeklendirme talep yönetimi için sağlanan seçenekler gösterilmektedir:

  • El ile ölçeklendirme seçeneği sabit örnek sayısını korur. Ölçeği en fazla 10 örneğe genişletebilirsiniz. Bu değer Spring Cloud Gateway'in çalışan ayrı örneklerinin sayısını değiştirir.
  • Özel otomatik ölçeklendirme seçeneği tüm ölçümlere göre herhangi bir zamanlamaya göre ölçeklendirilir.

Azure portalında nasıl ölçeklendirmek istediğinizi seçin. Aşağıdaki ekran görüntüsünde Özel otomatik ölçeklendirme seçeneği ve mod ayarları gösterilmektedir:

Özel otomatik ölçeklendirme seçeneğinin vurgulandığı Otomatik Ölçeklendirme ayarı sayfasını gösteren Azure portalının ekran görüntüsü.

Kullanılabilir ölçümler hakkında daha fazla bilgi için Azure Spring Apps için Ölçümler'in Kullanıcı ölçümleri seçenekleri bölümüne bakın.

Yanıt önbelleğini yapılandırma

Yanıt önbelleği yapılandırması, genel olarak veya yol düzeyinde uygulayabileceğiniz bir HTTP yanıt önbelleği tanımlamak için bir yol sağlar.

Yanıt önbelleğini genel olarak etkinleştirme

Yanıt önbelleğini genel olarak etkinleştirdikten sonra, yanıt önbelleği tüm geçerli yollar için otomatik olarak etkinleştirilir.

Yanıt önbelleğini genel olarak etkinleştirmek için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
  2. Spring Cloud Gateway sayfasında Yapılandırma'yı seçin.
  3. Yanıt Önbelleği bölümünde Yanıt önbelleğini etkinleştir'i seçin ve Kapsam'ı Örnek olarak ayarlayın.
  4. Yanıt önbelleği için Boyut ve Yaşam Süresi'ni ayarlayın.
  5. Kaydet'i seçin.

Yanıt önbelleğini devre dışı bırakmak için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
  2. Spring Cloud Gateway sayfasında Yapılandırma'yı seçin.
  3. Yanıt Önbelleği bölümünde Yanıt önbelleğini etkinleştir seçeneğinin işaretini kaldırın.
  4. Kaydet'i seçin.

Yanıt önbelleğini rota düzeyinde etkinleştirme

Herhangi bir yol için yanıt önbelleğini etkinleştirmek için filtreyi LocalResponseCache kullanın. Aşağıdaki örnekte, yönlendirme kuralı yapılandırmasında filtrenin LocalResponseCache nasıl kullanılacağı gösterilmektedir:

{
   "filters": [
      "<other-app-level-filter-of-route>",
   ],
   "routes": [
      {
        "predicates": [
            "Path=/api/**",
            "Method=GET"
         ],
         "filters": [
            "<other-filter-of-route>",
            "LocalResponseCache=3m, 1MB"
         ],
      }
   ]
}

Daha fazla bilgi için VMware belgelerindeki Azure Spring Apps Enterprise planı ve LocalResponseCache ile VMware Spring Cloud Gateway yol filtrelerini kullanma bölümünün LocalResponseCache bölümüne bakın.

Ve her LocalResponseCache filtre için ayrı ayrı yapılandırmak sizetimeToLive yerine, bu parametreleri Spring Cloud Gateway düzeyinde ayarlayabilirsiniz. Bu seçenek, filtreyi LocalResponseCache başlangıçta bu değerleri belirtmeden kullanmanıza ve daha sonra geçersiz kılma esnekliğini korumanıza olanak tanır.

Yanıt önbelleğini yol düzeyinde etkinleştirmek ve ve timeToLiveayarlamak size için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
  2. Spring Cloud Gateway sayfasında Yapılandırma'yı seçin.
  3. Yanıt Önbelleği bölümünde Yanıt önbelleğini etkinleştir'i seçin ve Kapsam'ı Yol olarak ayarlayın.
  4. Yanıt önbelleği için Boyut ve Yaşam Süresi'ni ayarlayın.
  5. Kaydet'i seçin.

Yanıt önbelleğini yol düzeyinde devre dışı bırakmak için aşağıdaki adımları kullanın ve timeToLiveöğesini temizlersize:

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
  2. Spring Cloud Gateway sayfasında Yapılandırma'yı seçin.
  3. Yanıt Önbelleği bölümünde Yanıt önbelleğini etkinleştir seçeneğinin işaretini kaldırın.
  4. Kaydet'i seçin.

Aşağıdaki örnekte Spring Cloud Gateway düzeyinde ayarlandığında size ve timeToLive ayarlandığında filtrenin nasıl kullanılacağı LocalResponseCache gösterilmektedir:

{
   "filters": [
      "<other-app-level-filter-of-route>",
   ],
   "routes": [
      {
        "predicates": [
            "Path=/api/path1/**",
            "Method=GET"
         ],
         "filters": [
            "<other-filter-of-route>",
            "LocalResponseCache"
         ],
      },
      {
        "predicates": [
            "Path=/api/path2/**",
            "Method=GET"
         ],
         "filters": [
            "<other-filter-of-route>",
            "LocalResponseCache=3m, 1MB"
         ],
      }
   ]
}

Ortam değişkenlerini yapılandırma

Azure Spring Apps hizmeti, VMware Spring Cloud Gateway'i yönetir ve kurar. Uygulama performansı izlemeyi (APM) ve günlük düzeyini yapılandıran kullanım örnekleri dışında, normalde VMware Spring Cloud Gateway'i ortam değişkenleriyle yapılandırmanız gerekmez.

Bu makalede açıklanan diğer yapılandırmalarla karşılayabildiğiniz gereksinimleriniz varsa, Ortak uygulama özellikleri listesinde gösterilen ortam değişkenlerini yapılandırmayı deneyebilirsiniz. Üretim ortamınıza uygulamadan önce test ortamınızda yapılandırmanızı doğrulamayı unutmayın.

Azure portalında ortam değişkenlerini yapılandırmak için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
  2. Özellikler ve Gizli Diziler bölümlerinde ortam değişkenleri için anahtar/değer çiftlerini doldurun. Gizli diziler bölümüne hassas bilgiler içeren değişkenler ekleyebilirsiniz.
  3. Yaptığınız değişiklikleri kaydetmek için Kaydet'i seçin.

Ortam değişkenlerini güncelleştirdikten sonra VMware Spring Cloud Gateway yeniden başlatılır.

Uygulama performansı izlemeyi yapılandırma

VMware Spring Cloud Gateway'i izlemek için APM'yi yapılandırabilirsiniz. Aşağıdaki tabloda, VMware Spring Cloud Gateway'in sağladığı beş tür APM Java aracısının yanı sıra gerekli ortam değişkenleri listelenmiştir.

Java aracısı Gerekli ortam değişkenleri
Application Insights APPLICATIONINSIGHTS_CONNECTION_STRING
Dynatrace DT_TENANT
DT_TENANTTOKEN
DT_CONNECTION_POINT
New Relic NEW_RELIC_LICENSE_KEY
NEW_RELIC_APP_NAME
AppDynamics APPDYNAMICS_AGENT_APPLICATION_NAME
APPDYNAMICS_AGENT_TIER_NAME
APPDYNAMICS_AGENT_NODE_NAME
APPDYNAMICS_AGENT_ACCOUNT_NAME
APPDYNAMICS_AGENT_ACCOUNT_ACCESS_KEY
APPDYNAMICS_CONTROLLER_HOST_NAME
APPDYNAMICS_CONTROLLER_SSL_ENABLED
APPDYNAMICS_CONTROLLER_PORT
Elastik APM ELASTIC_APM_SERVICE_NAME
ELASTIC_APM_APPLICATION_PACKAGES
ELASTIC_APM_SERVER_URL

Desteklenen diğer ortam değişkenleri için aşağıdaki kaynaklara bakın:

VMware Spring Cloud Gateway'inizde APM izlemeyi etkinleştirmek için hizmet örneği düzeyinde APM yapılandırması oluşturabilir ve bunu Spring Cloud Gateway'e bağlayabilirsiniz. Bu şekilde APM'yi yalnızca bir kez kolayca yapılandırabilir ve aynı APM'yi Spring Cloud Gateway'e ve uygulamalarınıza bağlayabilirsiniz.

Azure portalını kullanarak APM'yi ayarlamak için aşağıdaki adımları kullanın:

  1. APM'yi hizmet örneği düzeyinde APM adı, türü ve özellikleriyle yapılandırın. Daha fazla bilgi için APM tümleştirmesi ve CA sertifikalarını yapılandırma makalesinin Hizmet örneği düzeyinde API'leri yönetme (önerilen) bölümüne bakın.

    Azure Spring Apps APM düzenleyici sayfasını gösteren Azure portalının ekran görüntüsü.

  2. Gezinti bölmesinde Spring Cloud Gateway'i ve ardından APM'yi seçin.

  3. APM başvuru adları listesinde APM adını seçin. Liste, 1. adımda yapılandırılan tüm APM adlarını içerir.

  4. APM başvuru adlarını Spring Cloud Gateway'e bağlamak için Kaydet'i seçin. APM izlemeyi etkinleştirmek için ağ geçidiniz yeniden başlatılır.

VMware Spring Cloud Gateway'de APM'i yönetme (kullanım dışı)

VMware Spring Cloud Gateway'de APM'yi ayarlamak için Azure portalını veya Azure CLI'yı kullanabilirsiniz. Ayrıca, kullanılacak APM Java aracılarının türlerini ve destekledikleri ilgili APM ortam değişkenlerini belirtebilirsiniz.

Azure portalını kullanarak APM'yi ayarlamak için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
  2. Ağ geçidini izlemek için APM listesinde APM türünü seçin.
  3. Özellikler ve Gizli Diziler bölümlerinde APM ortam değişkenleri için anahtar/değer çiftlerini doldurun. Gizli dizilere hassas bilgiler içeren değişkenler ekleyebilirsiniz.
  4. Yaptığınız değişiklikleri kaydetmek için Kaydet'i seçin.

Yapılandırmanın güncelleştirilmesi birkaç dakika sürebilir. Yapılandırma tamamlandığında bir bildirim almalısınız.

Not

Azure Spring Apps, VMware Spring Cloud Gateway ile Azure Spring Apps arasında aracıların uyumluluğunu korumak için APM aracısını ve dağıtılan uygulamaları aynı tempoda yükseltmektedir.

Varsayılan olarak, Azure Spring Apps APM Java aracısının günlüklerini öğesine STDOUTyazdırır. Bu günlükler VMware Spring Cloud Gateway günlüklerine dahildir. Günlüklerde kullanılan APM aracısının sürümünü de kontrol edebilirsiniz. Sorun gidermek için bu günlükleri Log Analytics'te sorgulayabilirsiniz.

APM aracılarının düzgün çalışmasını sağlamak için VMware Spring Cloud Gateway'in CPU'sunu ve belleğini artırın.

Günlük düzeylerini yapılandırma

Daha fazla ayrıntı almak veya günlükleri azaltmak için VMware Spring Cloud Gateway'in günlük düzeylerini aşağıdaki yollarla yapılandırabilirsiniz:

  • Günlük düzeylerini TRACE, , DEBUG, INFOWARN, ERRORveya OFFolarak ayarlayabilirsiniz. VMware Spring Cloud Gateway için varsayılan günlük düzeyi şeklindedir INFO.
  • Günlük düzeylerini olarak ayarlayarak günlükleri OFFkapatabilirsiniz.
  • Günlük düzeyi , ERRORveya OFFolarak ayarlandığındaWARN, Azure Spring Apps ekibinden destek isterken bunu INFO olarak ayarlamanız gerekebilir. Bu değişiklik VMware Spring Cloud Gateway'in yeniden başlatılmasına neden olur.
  • Günlük düzeyi veya DEBUGolarak ayarlandığındaTRACE, VMware Spring Cloud Gateway'in performansını etkileyebilir. Üretim ortamınızda bu ayarlardan kaçınmayı deneyin.
  • Günlükçü için root veya gibi io.pivotal.spring.cloud.gatewaybelirli günlükçüler için günlük düzeylerini ayarlayabilirsiniz.

Aşağıdaki günlükçüler ve DEBUG düzeylerinde TRACE değerli sorun giderme bilgileri içerebilir:

Günlükçü Açıklama
io.pivotal.spring.cloud.gateway Özel uzantılar da dahil olmak üzere filtreler ve koşul
org.springframework.cloud.gateway API ağ geçidi
org.springframework.http.server.reactive HTTP sunucusu etkileşimleri
org.springframework.web.reactive API ağ geçidi reaktif akışları
org.springframework.boot.autoconfigure.web API ağ geçidi otomatik yapılandırması
org.springframework.security.web Kimlik doğrulama ve yetkilendirme bilgileri
reactor.netty Reactor Netty

Ortam değişkeni anahtarlarını almak için ön ekini logging.level. ekleyin ve ortamı yapılandırarak logging.level.{loggerName}={logLevel}günlük düzeyini ayarlayın. Aşağıdaki örneklerde Azure portalı ve Azure CLI için adımlar gösterilmektedir.

Azure portalında günlük düzeylerini yapılandırmak için aşağıdaki adımları kullanın:

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
  2. Özellikler ve Gizli Diziler bölümlerinde günlük düzeylerinin ortam değişkenleri için anahtar/değer çiftlerini doldurun. Günlük düzeyi sizin durumunuzda hassas bilgilerse Gizli Diziler bölümünü kullanarak bu bilgileri ekleyebilirsiniz.
  3. Yaptığınız değişiklikleri kaydetmek için Kaydet'i seçin.

Günlük düzeylerini yapılandırmak için Spring Cloud Gateway ortam değişkenlerini gösteren Azure portalının ekran görüntüsü.

Eklenti yapılandırmasını güncelleştirme

Eklenti yapılandırma özelliği, bir JSON biçim dizesi kullanarak VMware Spring Cloud Gateway'in belirli özelliklerini özelleştirmenizi sağlar. BU özellik, REST API aracılığıyla kullanıma sunulmamış özellikleri yapılandırmanız gerektiğinde kullanışlıdır.

Eklenti yapılandırması, istenen yapılandırmayı temsil eden anahtar/değer çiftlerine sahip bir JSON nesnesidir. Aşağıdaki örnekte JSON biçiminin yapısı gösterilmektedir:

{
    "<addon-key-name>": {
        "<addon-key-name>": "<addon-value>"
        ...
    },
    "<addon-key-name>": "<addon-value>",
    ...
}

Aşağıdaki listede, eklenti anahtar adları ve değer türleri için desteklenen eklenti yapılandırmaları gösterilmektedir. Biz VMware Spring Cloud Gateway sürümünü yükselttıkça bu liste değiştirilebilir.

  • SSO yapılandırması:

    • Anahtar adı: sso

    • Değer türü: Nesne

    • Özellikler:

      • RolesAttributeName (Dize): SSO oturumuyla ilişkili rolleri içeren özniteliğin adını belirtir.
      • InactiveSessionExpirationInMinutes (Tamsayı): Etkin olmayan SSO oturumları için süre sonunu dakika cinsinden belirtir. değeri 0 , oturumun süresinin hiçbir zaman dolmayamayacağı anlamına gelir.
    • Örnek:

      {
          "sso": {
              "rolesAttributeName": "roles",
              "inactiveSessionExpirationInMinutes": 1
          }
      }
      
  • Meta veri yapılandırması:

    • Anahtar adı: api

    • Değer türü: Nesne

    • Properties

      • groupId (Dize): VMware Spring Cloud Gateway örneğinde bulunan API grubu için benzersiz tanımlayıcı. Değer yalnızca küçük harf ve sayı içerebilir.
    • Örnek:

      {
          "api": {
              "groupId": "id1"
          }
      }
      

Eklenti yapılandırmasını güncelleştirmek için aşağıdaki adımları kullanın.

  1. Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
  2. Addon Yapılandırmaları için JSON değerini belirtin.
  3. Kaydet'i seçin.

Sonraki adımlar