Zapewnianie certyfikatów SSL na potrzeby monitorowania
Począwszy od wersji z grudnia 2021 r., usługi danych z obsługą usługi Azure Arc umożliwiają udostępnianie certyfikatów SSL/TLS dla pulpitów nawigacyjnych monitorowania. Te certyfikaty można używać na potrzeby pulpitów nawigacyjnych dzienników (Kibana) i metryk (Grafana).
Certyfikat można określić podczas tworzenia kontrolera danych za pomocą polecenia:
- Rozszerzenie interfejsu wiersza polecenia
arcdata
platformy Azureaz
- Wdrożenie natywne rozwiązania Kubernetes
Firma Microsoft udostępnia przykładowe pliki do tworzenia certyfikatów w repozytorium /microsoft/azure_arc/ GitHub.
Możesz sklonować plik lokalnie, aby uzyskać dostęp do przykładowych plików.
git clone https://github.com/microsoft/azure_arc
Pliki, do których odwołuje się ten artykuł, znajdują się w repozytorium w obszarze /arc_data_services/deploy/scripts/monitoring
.
Tworzenie lub uzyskiwanie odpowiednich certyfikatów
Potrzebujesz odpowiednich certyfikatów dla każdego interfejsu użytkownika. Jeden dla dzienników i jeden dla metryk. W poniższej tabeli opisano wymagania.
W poniższej tabeli opisano wymagania dotyczące każdego certyfikatu i klucza.
Wymaganie | Dzienniki certyfikatu | Certyfikat metryk |
---|---|---|
CN | logsui-svc |
metricsui-svc |
Sans | Brak jest wymagany | metricsui-svc.${NAMESPACE}.${K8S_DNS_DOMAIN_NAME} |
keyUsage | digitalsignature keyEncipherment |
digitalsignature keyEncipherment |
extendedKeyUsage | serverAuth |
serverAuth |
Uwaga
Domyślny K8S_DNS_DOMAIN_NAME to svc.cluster.local
, ale może się różnić w zależności od środowiska i konfiguracji.
Katalog repozytorium GitHub zawiera przykładowe pliki szablonów identyfikujące specyfikacje certyfikatów.
- /arc_data_services/deploy/scripts/monitoring/logsui-ssl.conf.tmpl
- /arc_data_services/deploy/scripts/monitoring/metricsui-ssl.conf.tmpl
Przykładowe repozytorium GitHub przykładów usługi Azure Arc umożliwia wygenerowanie zgodnego certyfikatu i klucza prywatnego dla punktu końcowego.
Zobacz kod z /arc_data_services/deploy/scripts/monitoringcreate-monitoring-tls-files.sh.
Aby użyć przykładu do utworzenia certyfikatów, zaktualizuj następujące polecenie przy użyciu katalogu namespace
i dla certyfikatów (output_directory
). Następnie uruchom polecenie.
./create-monitor-tls-files.sh <namespace> <output_directory>
Spowoduje to utworzenie zgodnych certyfikatów w katalogu.
Wdrażanie przy użyciu interfejsu wiersza polecenia
Po utworzeniu certyfikatu/klucza prywatnego dla każdego punktu końcowego utwórz kontroler danych za pomocą az dc create...
polecenia .
Aby zastosować własny certyfikat/klucz prywatny, użyj następujących argumentów.
--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>
Na przykład poniższy przykład tworzy kontroler danych z wyznaczonymi certyfikatami dla pulpitów nawigacyjnych interfejsu użytkownika dzienników i metryk:
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
Certyfikaty można określić tylko w przypadku uwzględnienia --use-k8s
w instrukcji az arcdata dc create ...
.
Wdrażanie za pomocą narzędzi natywnych platformy Kubernetes
Jeśli do wdrożenia używasz narzędzi natywnych platformy Kubernetes, utwórz wpisy tajne kubernetes, które przechowują certyfikaty i klucze prywatne. Utwórz następujące wpisy tajne:
logsui-certificiate-secret
metricsui-certificate-secret
.
Upewnij się, że usługi są wymienione jako alternatywne nazwy podmiotu (SAN), a parametry użycia certyfikatu są poprawne.
- Sprawdź, czy każdy wpis tajny ma następujące pola:
certificate.pem
zawierający certyfikat zakodowany w formacie base64privatekey.pem
zawierający klucz prywatny
Powiązana zawartość
- Spróbuj przekazać metryki i dzienniki do usługi Azure Monitor
- Przeczytaj o aplikacji Grafana:
- Przeczytaj o kibana