Referentie: Zelf-hosted gateway Azure Arc configuratie-instellingen

VAN TOEPASSING OP: Ontwikkelaar | Premie

Dit artikel biedt een referentie voor de vereiste en optionele instellingen om de Azure Arc-extensie voor API Management zelfgehoste gateway-container te configureren.

Important

API Management zelfgehoste gateway op Azure Arc is momenteel in de previewfase. Tijdens de preview is de API Management-gatewayextensie beschikbaar in de volgende regio's:

  • Azië (oost, zuidoost)
  • Australië (centraal, centraal 2, oost en zuidoost)
  • Brazilië (zuid en zuidoost)
  • Canada (Centraal, Oost)
  • Europa (noord, west)
  • Frankrijk (centraal en zuid)
  • Duitsland (Noord- en West-centraal)
  • India (Centraal, Zuid, West, Jio - centraal en Jio - west)
  • Japan (Oost en West)
  • Korea (centraal en zuid)
  • Noorwegen (Oost en West)
  • Zuid-Afrika (Noord & West)
  • Zweden (centraal)
  • Zwitserland (Noord en West)
  • Verenigde Arabische Emiraten (VAE - Centraal & Noord)
  • Verenigd Koninkrijk (VK -Zuid)
  • Verenigde Staten (VS - centraal, centraal EUAP, Oost, Oost 2, Oost 2 EUAP, Noord-centraal, Zuid-centraal, West-centraal, West, West 2, West 3)

Configuratie-API-integratie

De zelfgehoste gateway gebruikt de Configuration API om verbinding te maken met Azure API Management om de nieuwste configuratie en verzendmetrics te verkrijgen, wanneer ingeschakeld.

Hier is een overzicht van alle configuratieopties:

Name Beschrijving Required Default
gateway.configuration.uri Configuratie-endpoint in Azure API Management voor de zelf-gehoste gateway. Vind deze waarde in het Azure-portaal onder Gateways>Deployment. Yes Niet van toepassing.
gateway.auth.token Authenticatiesleutel om te authenticeren met de Azure API Management-service. Begint meestal met GatewayKey. Yes Niet van toepassing.
gateway.configuration.backup.enabled Indien ingeschakeld, slaat het een back-up op van de laatst gedownloade configuratie op een opslagvolume. No false
gateway.configuration.backup.persistentVolumeClaim.accessMode Toegangsmodus voor de Persistent Volume Claim (PVC) pod. No ReadWriteMany
gateway.configuration.backup.persistentVolumeClaim.size Grootte van de Persistent Volume Claim (PVC) om te creëren. No 50Mi
gateway.configuration.backup.persistentVolumeClaim.storageClassName Opslagklassenaam om te gebruiken voor de Persistent Volume Claim (PVC). Wanneer je geen waarde (null) toewijst, gebruikt het platform de standaardwaarde. De gespecificeerde opslagklasse moet toegangsmodus ondersteunen ReadWriteMany . Lees meer over de ondersteunde volumeproviders en hun ondersteunde toegangsmodi. No null

Cross-instance ontdekking en synchronisatie

Name Beschrijving Required Default
service.instance.heartbeat.port UDP-poort die instanties van een zelf-gehoste gateway-implementatie gebruiken om heartbeats naar andere instanties te sturen. No 4291
service.instance.synchronization.port UDP-poort die zelf-gehoste gateway-instanties gebruiken om snelheidsbeperking over meerdere instanties te synchroniseren. No 4290

Metrics

Name Beschrijving Required Default
telemetry.metrics.cloud Indicatie of het uitzenden van metrics naar Azure Monitor moet worden ingeschakeld. No true
telemetry.metrics.local Schakel lokale meetgegevens in via StatsD. Waarde is een van de volgende opties: none, statsd. No Niet van toepassing.
telemetry.metrics.localStatsd.endpoint StatsD-eindpunt. Ja, als telemetry.metrics.local is gezet op statsd; anders niet. Niet van toepassing.
telemetry.metrics.localStatsd.sampling StatsD-metrics steekproefpercentage. De waarde moet tussen 0 en 1 liggen, bijvoorbeeld 0,5. No Niet van toepassing.
telemetry.metrics.localStatsd.tagFormat De tagindeling statsD-exporteur. Waarde is een van de volgende opties: librato, dogStatsD, influxDB. No Niet van toepassing.
telemetry.metrics.opentelemetry.enabled Indicatie of het uitzenden van metrics naar een OpenTelemetrie-verzamelaar op Kubernetes moet worden ingeschakeld. No false
telemetry.metrics.opentelemetry.collector.uri URI van de OpenTelemetrie-verzamelaar om metrics naartoe te sturen. Ja, als observability.opentelemetry.enabled is gezet op true; anders niet. Niet van toepassing.

Logs

Name Beschrijving Required Default
telemetry.logs.std Schakel logging in naar een standaardstream in. Waarde is een van de volgende opties: none, text, json. No text
telemetry.logs.local Schakel lokale logging in. Waarde is een van de volgende opties: none, auto, localsyslog, , rfc5424journal, ,json No auto
telemetry.logs.localConfig.localsyslog.endpoint Eindpunt voor lokale syslogs Ja als telemetry.logs.local is ingesteld op localsyslog; anders niet. Niet van toepassing.
telemetry.logs.localConfig.localsyslog.facility Specificeert lokale syslog-faciliteitscode, bijvoorbeeld, 7. No Niet van toepassing.
telemetry.logs.localConfig.rfc5424.endpoint RFC5424 Eindpunt. Ja als telemetry.logs.local is ingesteld op rfc5424; anders niet. Niet van toepassing.
telemetry.logs.localConfig.rfc5424.facility Faciliteitscode volgens rfc5424, bijvoorbeeld, 7 No Niet van toepassing.
telemetry.logs.localConfig.journal.endpoint Dagboek-eindpunt. Ja als telemetry.logs.local is ingesteld op journal; anders niet. Niet van toepassing.

Verkeersroutering

Name Beschrijving Required Default
service.type Type Kubernetes-dienst om te gebruiken om de gateway bloot te stellen. (Kubernetes-servicetypes) No ClusterIP
service.http.port Port om te gebruiken voor het blootstellen van HTTP-verkeer. No 8080
service.http.nodePort Port op de node om HTTP-verkeer bloot te stellen. Deze instelling vereist NodePort als het servicetype. No Niet van toepassing.
service.https.port Poort om te gebruiken voor het blootstellen van HTTPS-verkeer. No 8081
service.https.nodePort Port op de node om HTTPS-verkeer bloot te stellen. Deze instelling vereist NodePort als het servicetype. No Niet van toepassing.
service.annotations Annotaties om toe te voegen aan de Kubernetes-service voor de gateway. No Niet van toepassing.
ingress.annotations Annotaties om toe te voegen aan de Kubernetes Ingress voor de gateway. (experimentele Kubernetes Ingress-ondersteuning) No Niet van toepassing.
ingress.enabled Indicatie of je Kubernetes Ingress moet gebruiken of niet. (experimentele Kubernetes Ingress-ondersteuning) No false
ingress.tls TLS-configuratie voor Kubernetes Ingress. (experimentele Kubernetes Ingress-ondersteuning) No Niet van toepassing.
ingress.hosts Configuratie van hosts om te gebruiken voor Kubernetes Ingress. (experimentele Kubernetes Ingress-ondersteuning) No Niet van toepassing.

Integrations

De zelfgehoste gateway integreert met verschillende andere technologieën. Deze sectie geeft een overzicht van de configuratie-opties die je kunt gebruiken.

Dapr

Name Beschrijving Required Default
dapr.enabled Geeft aan of Dapr-integratie gebruikt moet worden. No false
dapr.app.id Applicatie-ID om te gebruiken voor Dapr-integratie. No None
dapr.config Definieert welke configuratie CRD Dapr moet gebruiken. No tracing
dapr.logging.level Niveau van log-omvang van Dapr sidecar. No info
dapr.logging.useJsonOutput Geeft aan of logging in JSON-formaat is. No true

Azure Monitor-systeem

Name Beschrijving Required Default
monitoring.customResourceId Resource ID van de Azure Log Analytics-werkruimte om logs naartoe te sturen. No Niet van toepassing.
monitoring.ingestionKey Ingestion key om te authenticeren met de Azure Log Analytics workspace om logs naartoe te sturen. No Niet van toepassing.
monitoring.workspaceId Werkruimte-ID van de Azure Log Analytics werkruimte om logs naartoe te sturen. No Niet van toepassing.

Beeld- en werklastplanning

Kubernetes is een krachtig orkestratieplatform dat veel flexibiliteit biedt in wat er geïreerd moet worden en hoe het gepland moet worden.

Deze sectie geeft een overzicht van de beschikbare configuratieopties die je kunt gebruiken om invloed te hebben op de afbeelding die wordt gebruikt, hoe deze wordt gepland en geconfigureerd om zichzelf te genezen.

Name Beschrijving Required Default
replicaCount Aantal instanties van de zelfgehoste gateway om te draaien. No 3
image.repository Afbeelding om te draaien. No mcr.microsoft.com/azure-api-management/gateway
image.pullPolicy Beleid om te gebruiken voor het ophalen van containerimages. No IfNotPresent
image.tag Container-image tag om te gebruiken. No De app-versie van de extensie wordt gebruikt
imagePullSecrets Kubernetes-geheim om te gebruiken voor authenticatie met het containerregister bij het ophalen van de containerimage. No Niet van toepassing.
probes.readiness.httpGet.path URI-pad om te gebruiken voor readiness probes van de container No /status-0123456789abcdef
probes.readiness.httpGet.port Port voor gebruik voor levendigheidssondes van de container No http
probes.liveness.httpGet.path URI-pad te gebruiken voor liveness-probes van de container No /status-0123456789abcdef
probes.liveness.httpGet.port Port voor gebruik voor levendigheidssondes van de container No http
highAvailability.enabled Indicatie of de gateway hoog beschikbaar in de cluster moet worden gepland of niet. No false
highAvailability.disruption.maximumUnavailable Aantal pods dat niet beschikbaar mag zijn vanwege vrijwillige verstoringen. No 25%
highAvailability.podTopologySpread.whenUnsatisfiable Geef aan hoe pods over nodes verdeeld moeten worden voor het geval de eis niet kan worden voldaan. Lees meer in de Kubernetes-documentatie No ScheduleAnyway
resources Mogelijkheid om CPU-/geheugenbronnen toe te wijzen aan de gateway No Niet van toepassing.
nodeSelector Mogelijkheid om selectors te gebruiken om de node te identificeren waarop de gateway moet draaien. No Niet van toepassing.
affinity Affinity for pod scheduling (Kubernetes node affinity) No Niet van toepassing.
tolerations Toleranties voor pod scheduling (Kubernetes taints and tolerations) No Niet van toepassing.