提供 SSL 憑證以進行監視
從 2021 年 12 月版本開始,已啟用 Azure Arc 的資料服務可讓您為監視儀表板提供 SSL/TLS 憑證。 您可以將這些憑證用於記錄 (Kibana) 和計量 (Grafana) 儀表板。
當使用下列項目建立資料控制器時,您可以指定憑證:
- Azure
az
CLIarcdata
延伸模組 - Kubernetes 原生部署
Microsoft 提供範例檔案,以在 /microsoft/azure_arc/ GitHub 存放庫中建立憑證。
您可以在本機複製檔案以存取範例檔案。
git clone https://github.com/microsoft/azure_arc
本文中所參考的檔案位於 /arc_data_services/deploy/scripts/monitoring
底下的存放庫中。
建立或取得適當的憑證
針對每個 UI,您需要適當的憑證。 一個用於記錄,另一個用於計量。 下表描述這些需求。
下表描述每個憑證和金鑰的需求。
需求 | 記錄憑證 | 計量憑證 |
---|---|---|
CN | logsui-svc |
metricsui-svc |
SAN | 不需要 | metricsui-svc.${NAMESPACE}.${K8S_DNS_DOMAIN_NAME} |
keyUsage | digitalsignature keyEncipherment |
digitalsignature keyEncipherment |
extendedKeyUsage | serverAuth |
serverAuth |
注意
預設 K8S_DNS_DOMAIN_NAME 為 svc.cluster.local
,但其可能有所不同,取決於環境和設定。
GitHub 存放庫目錄包含可識別憑證規格的範例範本檔案。
- /arc_data_services/deploy/scripts/monitoring/logsui-ssl.conf.tmpl
- /arc_data_services/deploy/scripts/monitoring/metricsui-ssl.conf.tmpl
Azure Arc 範例 GitHub 存放庫提供一個範例,您可以用來為端點產生符合規範的憑證和私密金鑰。
請參閱來自 /arc_data_services/deploy/scripts/monitoringcreate-monitoring-tls-files.sh 的程式碼。
若要使用範例來建立憑證,請使用您的 namespace
和憑證的目錄 (output_directory
) 更新下列命令。 然後執行命令。
./create-monitor-tls-files.sh <namespace> <output_directory>
這會在目錄中建立符合規範的憑證。
使用 CLI 部署
在您具有每個端點的憑證/私密金鑰之後,請使用 az dc create...
命令建立資料控制器。
若要套用您自己的憑證/私密金鑰,請使用下列引數。
--logs-ui-public-key-file <path\file to logs public key file>
--logs-ui-private-key-file <path\file to logs private key file>
--metrics-ui-public-key-file <path\file to metrics public key file>
--metrics-ui-private-key-file <path\file to metrics private key file>
例如,下列範例會使用針對記錄和計量 UI 儀表板指定的憑證建立資料控制器:
az arcdata dc create --profile-name azure-arc-aks-default-storage --k8s-namespace <namespace> --use-k8s --name arc --subscription <subscription id> --resource-group <resource group name> --location <location> --connectivity-mode indirect --logs-ui-public-key-file <path\file to logs public key file> --logs-ui-private-key-file <path\file to logs private key file> --metrics-ui-public-key-file <path\file to metrics public key file> --metrics-ui-private-key-file <path\file to metrics private key file>
#Example:
#az arcdata dc create --profile-name azure-arc-aks-default-storage --k8s-namespace arc --use-k8s --name arc --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --resource-group my-resource-group --location eastus --connectivity-mode indirect --logs-ui-public-key-file /path/to/logsuipublickeyfile.pem --logs-ui-private-key-file /path/to/logsuiprivatekey.pem --metrics-ui-public-key-file /path/to/metricsuipublickeyfile.pem --metrics-ui-private-key-file /path/to/metricsuiprivatekey.pem
您只能在 az arcdata dc create ...
陳述式中包含 --use-k8s
時指定憑證。
使用 Kubernetes 原生工具進行部署
如果您使用 Kubernetes 原生工具來部署,請建立 kubernetes 秘密,保留憑證和私密金鑰。 建立下列祕密:
logsui-certificiate-secret
metricsui-certificate-secret
.
確定服務會列示為主體替代名稱 (SAN),且憑證使用方式參數正確。
- 請確認每個秘密都有下列欄位:
- 包含 base64 編碼憑證的
certificate.pem
- 包含私密金鑰的
privatekey.pem
- 包含 base64 編碼憑證的
相關內容
- 嘗試將計量和記錄上傳至 Azure 監視器
- 閱讀 Grafana:
- 閱讀 Kibana