參考:自我裝載閘道 Azure Arc 組態設定

適用於:開發人員 |進階版

本文提供必要和選擇性設定的參考,這些設定可用來設定 API 管理 自我裝載網關容器的 Azure Arc 擴充功能

重要

Azure Arc 上的 API 管理自我裝載閘道目前是預覽版。 在預覽期間,API 管理閘道擴充功能可在下列區域中使用:

  • 亞洲 (東部、東南部)
  • 澳大利亞 (中部、中部 2、東部和東南部)
  • 巴西 (南部和東南部)
  • 加拿大 (中部、東部)
  • 歐洲 (北部、西部)
  • 法國 (中部和南部)
  • 德國 (北部和中西部)
  • 印度 (中部、南部、西部、Jio 中部和 Jio 西部)
  • 日本 (東部和西部)
  • 南韓 (中部和南部)
  • 挪威 (東部和西部)
  • 南非 (北部和西部)
  • 瑞典 (中部)
  • 瑞士 (北部和西部)
  • 阿拉伯聯合大公國 (UAE - 中部和北部)
  • 英國 (UK - 南部)
  • 美國 (美國 - 中部、中部 EUAP、東部、東部 2、東部 2 EUAP、中北部、中南部、中西部、西部、西部 2、西部 3)

設定 API 整合

自我裝載閘道會使用組態 API 來連線到 Azure API 管理,以在啟用時取得最新的設定和傳送計量。

以下是所有組態選項的概觀:

名稱 描述 是必要欄位 預設
gateway.configuration.uri 自我裝載閘道的 Azure API 管理 組態端點。 在 [閘道>部署] 底下的 [Azure 入口網站 中尋找此值。 Yes N/A
gateway.auth.token 向 Azure API 管理 服務進行驗證的驗證金鑰。 一般而言,從 GatewayKey 開始。 Yes N/A
gateway.configuration.backup.enabled 如果已啟用,則會在記憶體磁碟區上儲存最新下載組態的備份複本 false
gateway.configuration.backup.persistentVolumeClaim.accessMode 永續性磁碟區宣告 (PV) Pod 的存取模式 ReadWriteMany
gateway.configuration.backup.persistentVolumeClaim.size 要建立的永續性磁碟區宣告大小 50Mi
gateway.configuration.backup.persistentVolumeClaim.storageClassName 儲存體 要用於永續性磁碟區宣告 (PV) 的類別名稱。 未指派任何值時,null將會使用平台預設值。 指定的記憶體類別應該支援 ReadWriteMany 存取模式,深入了解 支援的磁碟區提供者及其支援的存取模式 null

跨實例探索和同步處理

名稱 描述 是必要欄位 預設
service.instance.heartbeat.port 用於自我裝載網關部署實例的 UDP 埠,以將活動訊號傳送至其他實例。 No 4291
service.instance.synchronization.port 用於自我裝載網關實例的 UDP 連接埠,可跨多個實例同步處理速率限制。 No 4290

度量

名稱 描述 是必要欄位 預設
telemetry.metrics.cloud 指示是否要 啟用向 Azure 監視器發出計量。 No true
telemetry.metrics.local 透過 StatsD 啟用 本機計量集合 。 值是下列其中一個選項:、nonestatsd No N/A
telemetry.metrics.localStatsd.endpoint StatsD 端點。 是,如果 telemetry.metrics.local 設定為 ,則為 statsd,否則為 。 N/A
telemetry.metrics.localStatsd.sampling StatsD 計量取樣率。 值必須介於 0 到 1 之間,例如 0.5。 No N/A
telemetry.metrics.localStatsd.tagFormat StatsD 匯出工具的標記格式。 值是下列其中一個選項:ibrato、、 dogStatsDinfluxDB No N/A
telemetry.metrics.opentelemetry.enabled 指出是否要在 Kubernetes 上啟用 向 OpenTelemetry 收集器 發出計量。 No false
telemetry.metrics.opentelemetry.collector.uri 要傳送計量的 OpenTelemetry 收集器的 URI。 是,如果 observability.opentelemetry.enabled 設定為 ,則為 true,否則為 。 N/A

記錄

名稱 描述 是必要欄位 預設
telemetry.logs.std 啟用標準數據流的記錄 。 值是下列其中一個選項:none、、 textjson No text
telemetry.logs.local 啟用本機記錄。 值是下列其中一個選項:none、、autolocalsyslogrfc5424journaljson No auto
telemetry.logs.localConfig.localsyslog.endpoint 本機 syslogs 的端點 如果 telemetry.logs.local 設定為 ,則為 localsyslog,否則為 。否則為 。 N/A
telemetry.logs.localConfig.localsyslog.facility 指定本機 syslog 裝置代碼, 例如 7 No N/A
telemetry.logs.localConfig.rfc5424.endpoint rfc5424 端點。 如果 telemetry.logs.local 設定為 ,則為 rfc5424,否則為 。否則為 。 N/A
telemetry.logs.localConfig.rfc5424.facility 例如,每個 rfc5424 的設施程序代碼 7 No N/A
telemetry.logs.localConfig.journal.endpoint 日誌端點。 如果 telemetry.logs.local 設定為 ,則為 journal,否則為 。否則為 。 N/A

流量路由

名稱 描述 是必要欄位 預設
service.type 用來公開閘道的 Kubernetes 服務類型。 (檔案 No ClusterIP
service.http.port 用於公開 HTTP 流量的埠。 No 8080
service.http.nodePort 要用於公開 HTTP 流量的節點上的埠。 這需要 NodePort 作為服務類型。 No N/A
service.https.port 用於公開 HTTPS 流量的埠。 No 8081
service.https.nodePort 要用來公開 HTTPS 流量的節點上的埠。 這需要 NodePort 作為服務類型。 No N/A
service.annotations 要新增至閘道 Kubernetes 服務的批注。 No N/A
ingress.annotations 要新增至閘道 Kubernetes 輸入的批注。 (實驗性) No N/A
ingress.enabled 指示是否應該使用 Kubernetes 輸入。 (實驗性) No false
ingress.tls Kubernetes 輸入的 TLS 組態。 (實驗性) No N/A
ingress.hosts 要用於 Kubernetes 輸入的主機設定。 (實驗性) No N/A

整合

自我裝載閘道會與各種其他技術整合。 本節提供您可以使用的可用組態選項概觀。

Dapr

名稱 描述 是必要欄位 預設
dapr.enabled 指示是否應該使用 Dapr 整合。 No false
dapr.app.id 用於 Dapr 整合的應用程式識別碼
dapr.config 定義應使用的組態 CRD Dapr tracing
dapr.logging.level Dapr 側車的記錄詳細資訊層級 info
dapr.logging.useJsonOutput 指示記錄是否應為 JSON 格式 true

Azure 監視器

名稱 描述 是必要欄位 預設
monitoring.customResourceId 要傳送記錄的 Azure Log Analytics 工作區資源標識符。 No N/A
monitoring.ingestionKey 使用 Azure Log Analytics 工作區進行驗證的擷取密鑰,以將記錄傳送至 。 No N/A
monitoring.workspaceId 要傳送記錄的 Azure Log Analytics 工作區工作區標識碼。 No N/A

映像和工作負載排程

Kubernetes 是功能強大的協調流程平臺,可在應部署的內容及其排程方式方面提供許多彈性。

本節提供可用來影響所使用映像的可用組態選項概觀,以及其排程和設定為自我癒合的方式。

名稱 描述 是必要欄位 預設
replicaCount 要執行的自我裝載閘道實例數目。 No 3
image.repository 要執行的映像。 No mcr.microsoft.com/azure-api-management/gateway
image.pullPolicy 用於提取容器映像的原則。 No IfNotPresent
image.tag 要使用的容器映像標記。 No 使用應用程式版本的擴充功能
imagePullSecrets 提取容器映射時,用來向容器登錄進行驗證的 Kubernetes 秘密。 No N/A
probes.readiness.httpGet.path 用於容器整備探查的 URI 路徑 No /status-0123456789abcdef
probes.readiness.httpGet.port 用於容器活躍度探查的埠 No http
probes.liveness.httpGet.path 用於容器活躍度探查的 URI 路徑 No /status-0123456789abcdef
probes.liveness.httpGet.port 用於容器活躍度探查的埠 No http
highAvailability.enabled 指出閘道是否應在叢集中排程高可用性。 No false
highAvailability.disruption.maximumUnavailable 由於自願中斷而允許無法使用的 Pod 數量。 No 25%
highAvailability.podTopologySpread.whenUnsatisfiable 指示 Pod 應該如何分散到節點,以防無法符合需求。 在 Kubernetes 檔中深入瞭解 No ScheduleAnyway
resources 能夠定義要指派給閘道的CPU/記憶體資源 No N/A
nodeSelector 能夠使用選取器來識別閘道應該執行所在的節點。 No N/A
affinity Pod 排程的親和性 (docs No N/A
tolerations Pod 排程的容忍 (docs No N/A

下一步