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:
- Hizmet kaynağınıza gidin ve Spring Cloud Gateway'i seçin.
- Yönet'i seçin.
- 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.
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:
- Hizmet kaynağınıza gidin ve Spring Cloud Gateway'i seçin.
- Yeniden Başlat'ı seçin.
- Yeniden başlatmayı onaylamak için Tamam'ı seçin.
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:
- Azure Spring Apps örneğinizi açın.
- Gezinti bölmesinde Spring Cloud Gateway'i ve ardından Genel Bakış'ı seçin.
- 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.
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:
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:
- Azure Spring Apps örneğinizi açın.
- Gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
- API için listelenen özelliklerin değerlerini belirtin.
- Kaydet'i seçin.
Ç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 issuerUri https://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:
- Azure Spring Apps örneğinizi açın.
- Gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
- SSO için listelenen özelliklerin değerlerini belirtin.
- Kaydet'i seçin.
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:
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.
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-logout
getActionButton
uç noktasına yönelik birGET
isteğiniz olmalıdır.
Yalnızca SSO oturumunun oturumunu kapatma
kullanarak isteği /scg-logout
uç noktaya 302
XMLHttpRequest
gö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:
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
- Spring Cloud Gateway sayfasında Sertifika yönetimi'ni seçin.
- Sertifika doğrulamasını etkinleştir'i seçin.
- Sertifikalar'da TLS sertifikasını seç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.
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.
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>" }
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:
- Güvenilen bir CA'dan yeni sertifikalar oluşturun.
- 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.
- 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:
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
- 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:
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:
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
- Spring Cloud Gateway sayfasında Yapılandırma'yı seçin.
- Yanıt Önbelleği bölümünde Yanıt önbelleğini etkinleştir'i seçin ve Kapsam'ı Örnek olarak ayarlayın.
- Yanıt önbelleği için Boyut ve Yaşam Süresi'ni ayarlayın.
- Kaydet'i seçin.
Yanıt önbelleğini devre dışı bırakmak için aşağıdaki adımları kullanın:
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
- Spring Cloud Gateway sayfasında Yapılandırma'yı seçin.
- Yanıt Önbelleği bölümünde Yanıt önbelleğini etkinleştir seçeneğinin işaretini kaldırın.
- 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 size
timeToLive
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 timeToLive
ayarlamak size
için aşağıdaki adımları kullanın:
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
- Spring Cloud Gateway sayfasında Yapılandırma'yı seçin.
- Yanıt Önbelleği bölümünde Yanıt önbelleğini etkinleştir'i seçin ve Kapsam'ı Yol olarak ayarlayın.
- Yanıt önbelleği için Boyut ve Yaşam Süresi'ni ayarlayın.
- 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
:
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i seçin.
- Spring Cloud Gateway sayfasında Yapılandırma'yı seçin.
- Yanıt Önbelleği bölümünde Yanıt önbelleğini etkinleştir seçeneğinin işaretini kaldırın.
- 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:
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
- Ö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.
- 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:
- Application Insights'a genel bakış
- Dynatrace ortam değişkenleri
- Yeni Relic ortam değişkenleri
- AppDynamics ortam değişkenleri
- Elastik ortam değişkenleri
Hizmet örneği düzeyinde APM tümleştirmesini yapılandırma (önerilir)
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:
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.
Gezinti bölmesinde Spring Cloud Gateway'i ve ardından APM'yi seçin.
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.
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:
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
- Ağ geçidini izlemek için APM listesinde APM türünü seçin.
- Ö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.
- 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 STDOUT
yazdı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
,INFO
WARN
,ERROR
veyaOFF
olarak ayarlayabilirsiniz. VMware Spring Cloud Gateway için varsayılan günlük düzeyi şeklindedirINFO
. - Günlük düzeylerini olarak ayarlayarak günlükleri
OFF
kapatabilirsiniz. - Günlük düzeyi ,
ERROR
veyaOFF
olarak ayarlandığındaWARN
, Azure Spring Apps ekibinden destek isterken bunuINFO
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
DEBUG
olarak 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 gibiio.pivotal.spring.cloud.gateway
belirli 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:
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
- Ö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.
- Yaptığınız değişiklikleri kaydetmek için Kaydet'i seçin.
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ğeri0
, 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.
- Azure Spring Apps örneğinizde gezinti bölmesinde Spring Cloud Gateway'i ve ardından Yapılandırma'yı seçin.
- Addon Yapılandırmaları için JSON değerini belirtin.
- Kaydet'i seçin.