VMware Spring Cloud Gateway configureren
Notitie
De Basic-, Standard- en Enterprise-abonnementen worden afgeschaft vanaf medio maart 2025, met een pensioenperiode van 3 jaar. We raden u aan om over te stappen naar Azure Container Apps. Zie de aankondiging over buitengebruikstelling van Azure Spring Apps voor meer informatie.
Het standaardverbruik en het speciale abonnement worden vanaf 30 september 2024 afgeschaft, met een volledige afsluiting na zes maanden. We raden u aan om over te stappen naar Azure Container Apps. Zie Azure Spring Apps Standard-verbruik en toegewezen abonnement migreren naar Azure Container Apps voor meer informatie.
Dit artikel is van toepassing op: ❎ Basic/Standard ✅ Enterprise
In dit artikel wordt beschreven hoe u VMware Spring Cloud Gateway voor VMware Tanzu configureert met het Azure Spring Apps Enterprise-plan.
VMware Spring Cloud Gateway is een commercieel VMware Tanzu-onderdeel op basis van het opensource Spring Cloud Gateway-project. VMware Spring Cloud Gateway voor Tanzu verwerkt de overschrijdende problemen voor API-ontwikkelteams, zoals eenmalige aanmelding (SSO), toegangsbeheer, snelheidsbeperking, tolerantie en beveiliging. U kunt api-levering versnellen met behulp van moderne cloudeigen patronen in uw keuze voor programmeertaal voor API-ontwikkeling.
Een VMware Spring Cloud Gateway-exemplaar routeert verkeer volgens regels. Het biedt ondersteuning voor in-/uitschalen en omhoog/omlaag om te voldoen aan een dynamische verkeersbelasting.
VMware Spring Cloud Gateway bevat de volgende functies:
- Dynamische routeringsconfiguratie, onafhankelijk van afzonderlijke toepassingen, die u kunt toepassen en wijzigen zonder opnieuw te compileren
- Routefilters voor commerciële API voor het transport van geautoriseerde JSON-webtokenclaims (JWT) naar toepassingsservices
- Autorisatie van clientcertificaat
- Methoden voor snelheidsbeperking
- Configuratie van circuitonderbreker
- Ondersteuning voor toegang tot toepassingsservices via HTTP Basic Authentication-referenties
Als u wilt integreren met de API-portal voor VMware Tanzu, genereert VMware Spring Cloud Gateway automatisch documentatie over OpenAPI versie 3 na toevoegingen of wijzigingen in de routeconfiguratie. Zie Api-portal gebruiken voor VMware Tanzu voor meer informatie.
Vereisten
- Een al ingericht Azure Spring Apps Enterprise-planservice-exemplaar waarvoor VMware Spring Cloud Gateway is ingeschakeld. Zie quickstart: Apps bouwen en implementeren in Azure Spring Apps met behulp van het Enterprise-abonnement voor meer informatie.
- Azure CLI versie 2.0.67 of hoger. Gebruik de volgende opdracht om de Azure Spring Apps-extensie te installeren:
az extension add --name spring
VMware Spring Cloud Gateway in- of uitschakelen
U kunt VMware Spring Cloud Gateway in- of uitschakelen nadat u het service-exemplaar hebt gemaakt met behulp van Azure Portal of de Azure CLI. Voordat u VMware Spring Cloud Gateway uitschakelt, moet u het eindpunt ervan intrekken en alle routeconfiguraties verwijderen.
Gebruik de volgende stappen om VMware Spring Cloud Gateway in of uit te schakelen met behulp van Azure Portal:
- Ga naar uw serviceresource en selecteer Vervolgens Spring Cloud Gateway.
- Selecteer Beheren.
- Schakel het selectievakje Spring Cloud Gateway inschakelen in of uit en selecteer Opslaan.
U kunt nu de status van de Spring Cloud-gateway bekijken op de pagina Spring Cloud Gateway .
VMware Spring Cloud Gateway opnieuw starten
Nadat u de herstartactie hebt voltooid, worden VMware Spring Cloud Gateway-exemplaren doorlopend opnieuw opgestart.
Gebruik de volgende stappen om VMware Spring Cloud Gateway opnieuw te starten met behulp van Azure Portal:
- Ga naar uw serviceresource en selecteer Vervolgens Spring Cloud Gateway.
- Selecteer Opnieuw starten.
- Selecteer OK om het opnieuw opstarten te bevestigen.
Een openbaar eindpunt toewijzen aan VMware Spring Cloud Gateway
In deze sectie wordt beschreven hoe u een openbaar eindpunt toewijst aan VMware Spring Cloud Gateway en de eigenschappen ervan configureert.
Gebruik de volgende stappen om een eindpunt toe te wijzen in Azure Portal:
- Open uw Azure Spring Apps-exemplaar.
- Selecteer Spring Cloud Gateway in het navigatiedeelvenster en selecteer vervolgens Overzicht.
- Stel Het eindpunt toewijzen in op Ja.
Na een paar minuten wordt in de URL de geconfigureerde eindpunt-URL weergegeven. Sla de URL op die u later wilt gebruiken.
Metagegevens van VMware Spring Cloud Gateway configureren
VMware Spring Cloud Gateway-metagegevens genereren automatisch documentatie over OpenAPI versie 3. U kunt VMware Spring Cloud Gateway-metagegevens configureren om routegroepen weer te geven in de API-portal voor VMware Tanzu. Zie Api-portal gebruiken voor VMware Tanzu voor meer informatie.
In de volgende tabel worden de beschikbare metagegevensopties beschreven:
Eigenschappen | Beschrijving |
---|---|
title |
Een titel die de context beschrijft van de API's die beschikbaar zijn op het VMware Spring Cloud Gateway-exemplaar. De standaardwaarde is Spring Cloud Gateway for K8S . |
description |
Een gedetailleerde beschrijving van de API's die beschikbaar zijn op het VMware Spring Cloud Gateway-exemplaar. De standaardwaarde is Generated OpenAPI 3 document that describes the API routes configured for '[Gateway instance name]' Spring Cloud Gateway instance deployed under '[namespace]' namespace.*. . |
documentation |
De locatie van API-documentatie die beschikbaar is op het VMware Spring Cloud Gateway-exemplaar. |
version |
De versie van API's die beschikbaar zijn op dit VMware Spring Cloud Gateway-exemplaar. De standaardwaarde is unspecified . |
serverUrl |
De basis-URL voor toegang tot API's op het VMware Spring Cloud Gateway-exemplaar. Deze eigenschap is verplicht als u wilt integreren met de API-portal. |
U kunt Azure Portal of de Azure CLI gebruiken om eigenschappen van metagegevens te bewerken.
Als u metagegevens in Azure Portal wilt bewerken, gebruikt u de volgende stappen:
- Open uw Azure Spring Apps-exemplaar.
- Selecteer Spring Cloud Gateway in het navigatiedeelvenster en selecteer vervolgens Configuratie.
- Geef waarden op voor de eigenschappen die worden vermeld voor API.
- Selecteer Opslaan.
Eenmalige aanmelding configureren
VMware Spring Cloud Gateway ondersteunt verificatie en autorisatie via eenmalige aanmelding (SSO) met een OpenID-id-provider. De provider ondersteunt het OpenID Connect Discovery-protocol. In de volgende tabel worden de eigenschappen van eenmalige aanmelding beschreven:
Eigenschappen | Vereist? | Beschrijving |
---|---|---|
issuerUri |
Ja | De URI die wordt assertie als de id van de verlener. Als dat het bijvoorbeeld issuerUri is https://example.com , wordt er een OpenID-providerconfiguratieaanvraag ingediend bij https://example.com/.well-known/openid-configuration . Het resultaat is naar verwachting een OpenID Provider Configuration Response. |
clientId |
Ja | De OpenID Connect-client-id van uw id-provider. |
clientSecret |
Ja | Het OpenID Connect-clientgeheim van uw id-provider. |
scope |
Ja | Een lijst met bereiken die moeten worden opgenomen in JWT-identiteitstokens. Deze lijst moet zijn gebaseerd op de bereiken die uw id-provider toestaat. |
Als u eenmalige aanmelding met Microsoft Entra ID wilt instellen, raadpleegt u Eenmalige aanmelding instellen met behulp van Microsoft Entra ID voor Spring Cloud Gateway en API Portal.
U kunt De Azure-portal of de Azure CLI gebruiken om eigenschappen voor eenmalige aanmelding te bewerken.
Als u SSO-eigenschappen in Azure Portal wilt bewerken, gebruikt u de volgende stappen:
- Open uw Azure Spring Apps-exemplaar.
- Selecteer Spring Cloud Gateway in het navigatiedeelvenster en selecteer vervolgens Configuratie.
- Geef waarden op voor de eigenschappen die worden vermeld voor eenmalige aanmelding.
- Selecteer Opslaan.
VMware Spring Cloud Gateway ondersteunt alleen de autorisatieservers die ondersteuning bieden voor het OpenID Connect Discovery-protocol. Zorg er ook voor dat u de externe autorisatieserver configureert om omleidingen terug naar de gateway toe te staan. Raadpleeg de documentatie van uw autorisatieserver en voeg deze toe aan https://<gateway-external-url>/login/oauth2/code/sso
de lijst met toegestane omleidings-URI's.
Als u de verkeerde eigenschap voor eenmalige aanmelding configureert, zoals het verkeerde wachtwoord, moet u de hele eigenschap voor eenmalige aanmelding verwijderen en vervolgens de juiste configuratie toevoegen.
Nadat u eenmalige aanmelding hebt geconfigureerd, moet u deze instellen ssoEnabled: true
voor de VMware Spring Cloud Gateway-routes.
Eenmalige aanmelding configureren
VMware Spring Cloud Gateway-service-exemplaren bieden een standaard-API-eindpunt om u af te melden bij de huidige SSO-sessie. Het pad naar dit eindpunt is /scg-logout
. De afmelding resulteert in een van de volgende resultaten, afhankelijk van hoe u het afmeldingseindpunt aanroept:
- Meld u af bij de sessie en omleiden naar de afmelding van de id-provider (IdP).
- Meld u af bij de sessie van het service-exemplaar.
Afmelden bij de IdP- en SSO-sessie
Als u een GET
aanvraag naar het /scg-logout
eindpunt verzendt, verzendt het eindpunt een 302
omleidingsreactie naar de afmeldings-URL van IdP. Als u het eindpunt wilt ophalen om de gebruiker terug te sturen naar een pad op het gatewayservice-exemplaar, voegt u een omleidingsparameter toe aan de GET
aanvraag met het /scg-logout
eindpunt. U kunt bijvoorbeeld gebruikmaken van ${server-url}/scg-logout?redirect=/home
.
De waarde van de omleidingsparameter moet een geldig pad zijn op het VMware Spring Cloud Gateway-service-exemplaar. U kunt niet omleiden naar een externe URL.
In de volgende stappen wordt een voorbeeld beschreven van het implementeren van de functie in uw microservices:
Haal een routeconfiguratie op om de afmeldingsaanvraag naar uw toepassing te routeren. Zie bijvoorbeeld de routeconfiguratie in de opslagplaats voor dierenredding op GitHub.
Voeg de afmeldingslogica toe die u nodig hebt voor de toepassing. Aan het einde hebt u een
GET
aanvraag voor het eindpunt van/scg-logout
de gateway nodig, zoals wordt weergegeven in dereturn
waarde voor degetActionButton
methode in de opslagplaats voor dierenredding .
Afmelden bij alleen de SSO-sessie
Als u de GET
aanvraag met behulp van het gebruik XMLHttpRequest
naar het /scg-logout
eindpunt verzendt, kan de 302
omleiding worden ingeslikt en niet worden verwerkt in de antwoordhandler. In dit geval wordt de gebruiker alleen afgemeld bij de SSO-sessie op het VMware Spring Cloud Gateway-service-exemplaar. De gebruiker zou nog steeds een geldige IdP-sessie hebben. Als de gebruiker zich normaal gesproken opnieuw probeert aan te melden, wordt deze automatisch teruggestuurd naar de gateway als geverifieerd vanuit IdP.
U moet een routeconfiguratie hebben om de afmeldingsaanvraag naar uw toepassing te routeren, zoals wordt weergegeven in het volgende voorbeeld. Met deze code wordt een eenmalige aanmeldingssessie voor alleen gateways uitgevoerd.
const req = new XMLHttpRequest();
req.open("GET", "/scg-logout);
req.send();
Cross-origin resource sharing configureren
Met CORS (Cross-Origin Resource Sharing) kunnen beperkte resources op een webpagina worden aangevraagd vanuit een ander domein buiten het domein waaruit de eerste resource is geleverd. In de volgende tabel worden de beschikbare CORS-configuratieopties beschreven.
Eigenschappen | Beschrijving |
---|---|
allowedOrigins |
Toegestane oorsprongen voor het maken van aanvragen op meerdere sites |
allowedOriginPatterns |
Toegestane oorsprongspatronen voor het maken van aanvragen op meerdere sites |
allowedMethods |
Toegestane HTTP-methoden voor aanvragen op meerdere sites |
allowedHeaders |
Toegestane headers in aanvragen voor meerdere sites |
maxAge |
Hoe lang, in seconden, clients de reactie van een voorbereidende aanvraag in de cache opslaan |
allowCredentials |
Of gebruikersreferenties worden ondersteund voor aanvragen op meerdere sites |
exposedHeaders |
HTTP-antwoordheaders om beschikbaar te maken voor aanvragen op meerdere sites |
Zorg ervoor dat u de juiste CORS-configuratie hebt als u wilt integreren met de API-portal. Zie de sectie Een openbaar eindpunt toewijzen aan VMware Spring Cloud Gateway voor meer informatie.
Serviceschalen gebruiken
U kunt resourcetoewijzing aanpassen voor VMware Spring Cloud Gateway-exemplaren, waaronder vCPU, geheugen en aantal exemplaren.
Voor hoge beschikbaarheid raden we het gebruik van één replica niet aan.
In de volgende tabel wordt het standaardresourcegebruik beschreven.
Componentnaam | Aantal exemplaren | vCPU per exemplaar | Geheugen per exemplaar |
---|---|---|---|
VMware Spring Cloud Gateway | 2 | 1 kern | 2 GiB |
VMware Spring Cloud Gateway-operator | 2 | 1 kern | 2 GiB |
TLS configureren tussen de gateway en toepassingen
Als u de beveiliging wilt verbeteren en gevoelige informatie wilt beschermen tegen onderschepping door onbevoegde partijen, kunt u Transport Layer Security (TLS) inschakelen tussen VMware Spring Cloud Gateway en uw toepassingen.
Voordat u TLS configureert, moet u een TLS-toepassing en een TLS-certificaat hebben. Als u een TLS-certificaat wilt voorbereiden, genereert u een certificaat van een vertrouwde certificeringsinstantie (CA). Het certificaat verifieert de identiteit van de server en brengt een beveiligde verbinding tot stand.
Nadat u een TLS-toepassing hebt uitgevoerd in Azure Spring Apps, uploadt u het certificaat naar Azure Spring Apps. Zie de sectie Een certificaat importeren van TLS/SSL-certificaten in uw toepassing in Azure Spring Apps voor meer informatie.
Wanneer het certificaat is bijgewerkt naar Azure Spring Apps, kunt u het TLS-certificaat voor de gateway configureren en certificaatverificatie inschakelen. U kunt het certificaat configureren in Azure Portal of met behulp van de Azure CLI.
Gebruik de volgende stappen om het certificaat in Azure Portal te configureren:
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster.
- Selecteer Certificaatbeheer op de pagina Spring Cloud Gateway.
- Selecteer Certificaatverificatie inschakelen.
- Selecteer het TLS-certificaat in Certificaten.
- Selecteer Opslaan.
Het bijwerken van de configuratie kan enkele minuten duren. U ontvangt een melding wanneer de configuratie is voltooid.
De routeconfiguratie voorbereiden
U moet het protocol opgeven als HTTPS in de routeconfiguratie. Met het volgende JSON-object wordt VMware Spring Cloud Gateway geïnstrueerd om het HTTPS-protocol te gebruiken voor al het verkeer tussen de gateway en de app.
Maak een bestand met de naam test-tls-route.json met de volgende inhoud:
{ "routes": [ { "title": "Test TLS app", "predicates": [ "Path=/path/to/your/app", "Method=GET" ] } ], "uri": "https://<app-custom-domain-name>" }
Gebruik de volgende opdracht om de regel toe te passen op de toepassing:
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
U kunt nu testen of tls is ingeschakeld voor de toepassing met het eindpunt van de gateway. Zie de sectie Routes configureren van Spring Cloud Gateway configureren voor meer informatie.
Certificaten roteren
Wanneer certificaten verlopen, moet u certificaten roteren in VMware Spring Cloud Gateway met behulp van de volgende stappen:
- Genereer nieuwe certificaten van een vertrouwde CA.
- Importeer de certificaten in Azure Spring Apps. Zie de sectie Een certificaat importeren van TLS/SSL-certificaten in uw toepassing in Azure Spring Apps voor meer informatie.
- Synchroniseer de certificaten met behulp van Azure Portal of de Azure CLI.
VMware Spring Cloud Gateway wordt opnieuw opgestart om ervoor te zorgen dat de gateway het nieuwe certificaat voor alle verbindingen gebruikt.
Gebruik de volgende stappen om certificaten te synchroniseren:
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster.
- Selecteer Opnieuw opstarten op de pagina Spring Cloud Gateway en bevestig de bewerking.
Instellingen voor automatische schaalaanpassing instellen
U kunt automatische schaalaanpassingsmodi instellen voor VMware Spring Cloud Gateway.
In de volgende lijst ziet u de opties die beschikbaar zijn voor vraagbeheer voor automatische schaalaanpassing:
- De optie Handmatig schalen onderhoudt een vast aantal exemplaren. U kunt uitschalen naar maximaal 10 exemplaren. Met deze waarde wordt het aantal afzonderlijke actieve exemplaren van de Spring Cloud Gateway gewijzigd.
- De optie Aangepaste automatische schaalaanpassing wordt geschaald volgens elke planning, op basis van metrische gegevens.
Kies in Azure Portal hoe u wilt schalen. In de volgende schermopname ziet u de optie en modusinstellingen voor aangepaste automatische schaalaanpassing :
Zie de sectie Metrische gegevens van gebruikers van Azure Spring Apps voor meer informatie over de beschikbare metrische gegevens.
De antwoordcache configureren
De configuratie van de antwoordcache biedt een manier om een HTTP-antwoordcache te definiëren die u globaal of op routeniveau kunt toepassen.
De antwoordcache globaal inschakelen
Nadat u de antwoordcache globaal hebt ingeschakeld, wordt de antwoordcache automatisch ingeschakeld voor alle toepasselijke routes.
Gebruik de volgende stappen om de antwoordcache globaal in te schakelen:
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster.
- Selecteer Configuratie op de pagina Spring Cloud Gateway.
- Selecteer in de sectie Antwoordcache de optie Antwoordcache inschakelen en stel vervolgens Bereik in op Exemplaar.
- Stel Grootte en Time to Live in voor de antwoordcache.
- Selecteer Opslaan.
Gebruik de volgende stappen om de antwoordcache uit te schakelen:
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster.
- Selecteer Configuratie op de pagina Spring Cloud Gateway.
- Schakel in de sectie Antwoordcache de reactiecache inschakelen uit.
- Selecteer Opslaan.
De antwoordcache op routeniveau inschakelen
Gebruik het LocalResponseCache
filter om de antwoordcache voor elke route in te schakelen. In het volgende voorbeeld ziet u hoe u het LocalResponseCache
filter gebruikt in de configuratie van de routeringsregel:
{
"filters": [
"<other-app-level-filter-of-route>",
],
"routes": [
{
"predicates": [
"Path=/api/**",
"Method=GET"
],
"filters": [
"<other-filter-of-route>",
"LocalResponseCache=3m, 1MB"
],
}
]
}
Zie de sectie LocalResponseCache van routefilters van VMware Spring Cloud Gateway gebruiken met het Azure Spring Apps Enterprise-plan en LocalResponseCache in de VMware-documentatie voor meer informatie.
In plaats van afzonderlijk te configureren size
en timeToLive
voor elk LocalResponseCache
filter, kunt u deze parameters instellen op Spring Cloud Gateway-niveau. Met deze optie kunt u het LocalResponseCache
filter gebruiken zonder deze waarden in eerste instantie op te geven, terwijl u de flexibiliteit behoudt om ze later te overschrijven.
Gebruik de volgende stappen om de reactiecache op routeniveau in te schakelen en in te stellen size
en timeToLive
:
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster.
- Selecteer Configuratie op de pagina Spring Cloud Gateway.
- Selecteer in de sectie Antwoordcache de optie Antwoordcache inschakelen en stel vervolgens Bereik in op Route.
- Stel Grootte en Time to Live in voor de antwoordcache.
- Selecteer Opslaan.
Gebruik de volgende stappen om de reactiecache op routeniveau uit te schakelen, die wordt gewist size
en timeToLive
:
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster.
- Selecteer Configuratie op de pagina Spring Cloud Gateway.
- Schakel in de sectie Antwoordcache de reactiecache inschakelen uit.
- Selecteer Opslaan.
In het volgende voorbeeld ziet u hoe u het LocalResponseCache
filter gebruikt wanneer size
en timeToLive
worden ingesteld op Spring Cloud Gateway-niveau:
{
"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"
],
}
]
}
Omgevingsvariabelen configureren
De Azure Spring Apps-service beheert en tunest VMware Spring Cloud Gateway. Behalve voor de gebruiksscenario's voor het configureren van bewaking van toepassingsprestaties (APM) en het logboekniveau, hoeft u normaal gesproken VMware Spring Cloud Gateway niet te configureren met omgevingsvariabelen.
Als u vereisten hebt waaraan u niet kunt voldoen door andere configuraties die in dit artikel worden beschreven, kunt u proberen de omgevingsvariabelen te configureren die worden weergegeven in de lijst met algemene toepassingseigenschappen . Zorg ervoor dat u uw configuratie in uw testomgeving controleert voordat u deze toepast op uw productieomgeving.
Voer de volgende stappen uit om omgevingsvariabelen te configureren in Azure Portal:
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster en selecteer vervolgens Configuratie.
- Vul de sleutel-/waardeparen in voor de omgevingsvariabelen in de sectie Eigenschappen en geheimen . U kunt variabelen met gevoelige informatie opnemen in de sectie Geheimen .
- Selecteer Opslaan om uw wijzigingen op te slaan.
Nadat u omgevingsvariabelen hebt bijgewerkt, wordt VMware Spring Cloud Gateway opnieuw opgestart.
Bewaking van toepassingsprestaties configureren
Als u VMware Spring Cloud Gateway wilt bewaken, kunt u APM configureren. De volgende tabel bevat de vijf typen APM Java-agents die VMware Spring Cloud Gateway biedt, samen met de vereiste omgevingsvariabelen.
Java-agent | Vereiste omgevingsvariabelen |
---|---|
Analyses van toepassingen | 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 |
Elastische APM | ELASTIC_APM_SERVICE_NAME ELASTIC_APM_APPLICATION_PACKAGES ELASTIC_APM_SERVER_URL |
Zie de volgende bronnen voor andere ondersteunde omgevingsvariabelen:
- Overzicht van Application Insights
- Dynatrace-omgevingsvariabelen
- New Relic-omgevingsvariabelen
- Omgevingsvariabelen van AppDynamics
- Elastische omgevingsvariabelen
APM-integratie configureren op service-exemplaarniveau (aanbevolen)
Als u APM-bewaking in uw VMware Spring Cloud Gateway wilt inschakelen, kunt u een APM-configuratie maken op service-exemplaarniveau en deze verbinden met Spring Cloud Gateway. Op deze manier kunt u de APM slechts één keer configureren en dezelfde APM verbinden met Spring Cloud Gateway en uw apps.
Gebruik de volgende stappen om APM in te stellen met behulp van Azure Portal:
Configureer APM op het niveau van het service-exemplaar met de APM-naam, het type en de eigenschappen. Zie de sectie API's beheren op service-exemplaarniveau (aanbevolen) van het configureren van APM-integratie- en CA-certificaten voor meer informatie.
Selecteer Spring Cloud Gateway in het navigatiedeelvenster en selecteer vervolgens APM.
Kies de APM-naam in de lijst met APM-verwijzingsnamen . De lijst bevat alle APM-namen die zijn geconfigureerd in stap 1.
Selecteer Opslaan om APM-referentienamen te binden aan Spring Cloud Gateway. Uw gateway wordt opnieuw opgestart om APM-bewaking in te schakelen.
APM beheren in VMware Spring Cloud Gateway (afgeschaft)
U kunt Azure Portal of de Azure CLI gebruiken om APM in te stellen in VMware Spring Cloud Gateway. U kunt ook de typen APM Java-agents opgeven die moeten worden gebruikt en de bijbehorende APM-omgevingsvariabelen die ze ondersteunen.
Gebruik de volgende stappen om APM in te stellen met behulp van Azure Portal:
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster en selecteer vervolgens Configuratie.
- Kies het APM-type in de APM-lijst om een gateway te bewaken.
- Vul de sleutel-/waardeparen in voor de APM-omgevingsvariabelen in de sectie Eigenschappen en Geheimen . U kunt variabelen met gevoelige informatie in Geheimen plaatsen.
- Selecteer Opslaan om uw wijzigingen op te slaan.
Het bijwerken van de configuratie kan enkele minuten duren. U ontvangt een melding wanneer de configuratie is voltooid.
Notitie
Azure Spring Apps werkt de APM-agent bij en geïmplementeerde apps met dezelfde frequentie om de compatibiliteit van agents tussen VMware Spring Cloud Gateway en Azure Spring Apps te behouden.
Standaard worden in Azure Spring Apps de logboeken van de APM Java-agent afgedrukt naar STDOUT
. Deze logboeken worden opgenomen in de VMware Spring Cloud Gateway-logboeken. U kunt de versie controleren van de APM-agent die in de logboeken wordt gebruikt. U kunt query's uitvoeren op deze logboeken in Log Analytics om problemen op te lossen.
Als u de APM-agents correct wilt laten werken, verhoogt u de CPU en het geheugen van VMware Spring Cloud Gateway.
Logboekniveaus configureren
U kunt de logboekniveaus van VMware Spring Cloud Gateway op de volgende manieren configureren om meer informatie te krijgen of om logboeken te verminderen:
- U kunt logboekniveaus instellen op
TRACE
, ,INFO
DEBUG
,WARN
, ofERROR
.OFF
Het standaardlogboekniveau voor VMware Spring Cloud Gateway isINFO
. - U kunt logboeken uitschakelen door logboekniveaus in te stellen op
OFF
. - Wanneer het logboekniveau is ingesteld op
WARN
,ERROR
ofOFF
, moet u ditINFO
mogelijk aanpassen bij het aanvragen van ondersteuning van het Azure Spring Apps-team. Deze wijziging veroorzaakt een herstart van VMware Spring Cloud Gateway. - Wanneer het logboekniveau is ingesteld op
TRACE
ofDEBUG
, kan dit van invloed zijn op de prestaties van VMware Spring Cloud Gateway. Vermijd deze instellingen in uw productieomgeving. - U kunt logboekniveaus instellen voor de
root
logboekregistratie of voor specifieke logboekregistraties, zoalsio.pivotal.spring.cloud.gateway
.
De volgende logboekregistraties kunnen waardevolle informatie over probleemoplossing bevatten op de TRACE
en DEBUG
niveaus:
Logger | Beschrijving |
---|---|
io.pivotal.spring.cloud.gateway |
Filters en predicaten, inclusief aangepaste extensies |
org.springframework.cloud.gateway |
API-gateway |
org.springframework.http.server.reactive |
Interacties tussen HTTP-servers |
org.springframework.web.reactive |
Reactieve stromen van API-gateway |
org.springframework.boot.autoconfigure.web |
Automatische configuratie van API-gateway |
org.springframework.security.web |
Verificatie- en autorisatiegegevens |
reactor.netty |
Reactor Netty |
Als u omgevingsvariabelesleutels wilt ophalen, voegt u het logging.level.
voorvoegsel toe en stelt u vervolgens het logboekniveau in door de omgeving logging.level.{loggerName}={logLevel}
te configureren. In de volgende voorbeelden ziet u de stappen voor Azure Portal en de Azure CLI.
Als u logboekniveaus in Azure Portal wilt configureren, gebruikt u de volgende stappen:
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster en selecteer vervolgens Configuratie.
- Vul de sleutel-waardeparen in voor de omgevingsvariabelen van de logboekniveaus in de sectie Eigenschappen en geheimen . Als het logboekniveau gevoelige informatie in uw geval is, kunt u deze opnemen met behulp van de sectie Geheimen .
- Selecteer Opslaan om uw wijzigingen op te slaan.
Configuratie van invoegtoepassing bijwerken
Met de configuratiefunctie voor invoegtoepassingen kunt u bepaalde eigenschappen van VMware Spring Cloud Gateway aanpassen met behulp van een JSON-indelingstekenreeks. De functie is handig wanneer u eigenschappen moet configureren die niet beschikbaar zijn via de REST API.
De configuratie van de invoegtoepassing is een JSON-object met sleutel-waardeparen die de gewenste configuratie vertegenwoordigen. In het volgende voorbeeld ziet u de structuur van de JSON-indeling:
{
"<addon-key-name>": {
"<addon-key-name>": "<addon-value>"
...
},
"<addon-key-name>": "<addon-value>",
...
}
De volgende lijst bevat de ondersteunde invoegtoepassingsconfiguraties voor de namen en waardetypen van de invoegtoepassing. Deze lijst kan worden gewijzigd wanneer we de versie van de VMware Spring Cloud Gateway upgraden.
Configuratie van eenmalige aanmelding:
Sleutelnaam:
sso
Waardetype: Object
Eigenschappen:
RolesAttributeName
(Tekenreeks): Hiermee geeft u de naam op van het kenmerk dat de rollen bevat die zijn gekoppeld aan de SSO-sessie.InactiveSessionExpirationInMinutes
(Geheel getal): Hiermee geeft u de verlooptijd in minuten op voor inactieve SSO-sessies. Een waarde van0
betekent dat de sessie nooit verloopt.
Voorbeeld:
{ "sso": { "rolesAttributeName": "roles", "inactiveSessionExpirationInMinutes": 1 } }
Configuratie van metagegevens:
Sleutelnaam:
api
Waardetype: Object
Eigenschappen
groupId
(Tekenreeks): Een unieke id voor de groep API's die beschikbaar zijn op het VMware Spring Cloud Gateway-exemplaar. De waarde mag alleen kleine letters en cijfers bevatten.
Voorbeeld:
{ "api": { "groupId": "id1" } }
Podconfiguratie
Sleutelnaam:
PodOverrides
, die wordt gebruikt om onderdrukkingen op te geven voor de standaardpodconfiguratie.Waardetype: Object
Eigenschappen
Containers
: Deze matrix bevat de configuratie voor afzonderlijke containers binnen de pod. Alleen de benoemdegateway
container wordt momenteel ondersteund.Name
: Hiermee geeft u de naam van de container. De container moet de naamgateway
hebben.Lifecycle
:PreStop
is een levenscyclushook die wordt uitgevoerd wanneer een container op het punt staat te worden beëindigd. Met deze hook kunt u alle benodigde opschoning uitvoeren voordat de container stopt.
TerminationGracePeriodSeconds
: Hiermee geeft u de hoeveelheid tijd op die Kubernetes wacht totdat een pod probleemloos wordt beëindigd voordat deze geforceerd wordt gedood.
Voorbeeld:
{ "PodOverrides": { "Containers": [ { "Name": "gateway", "Lifecycle": { "PreStop": { "Exec": { "Command": [ "/bin/sh", "-c", "sleep 20" ] } } } } ], "TerminationGracePeriodSeconds": 120 } }
Wanneer een pod met deze container wordt beëindigd, voert de hook de
PreStop
opdracht/bin/sh -c 'sleep 20'
uit, waardoor de container gedurende 20 seconden in de slaapstand blijft. Deze pauze geeft de container enige tijd om lopende taken te voltooien of op te ruimen voordat deze daadwerkelijk stopt.De
TerminationGracePeriodSeconds
instelling biedt in totaal 120 seconden voordat de pod probleemloos kan worden beëindigd, inclusief de tijd die nodig is voor elke levenscyclushook, zoalsPreStop
.
Gebruik de volgende stappen om de configuratie van de invoegtoepassing bij te werken.
- Selecteer In uw Azure Spring Apps-exemplaar Spring Cloud Gateway in het navigatiedeelvenster en selecteer vervolgens Configuratie.
- Geef de JSON-waarde op voor Addon-configuraties.
- Selecteer Opslaan.