Fournir des certificats SSL pour le monitoring
À partir de la version de décembre 2021, les services de données Azure Arc vous permettent de fournir des certificats SSL/TLS pour les tableaux de bord de monitoring. Vous pouvez utiliser ces certificats pour les tableaux de bord des journaux (Kibana) et des métriques (Grafana).
Vous pouvez spécifier le certificat quand vous créez un contrôleur de données avec :
- L’extension Azure
az
CLIarcdata
- Déploiement natif Kubernetes
Microsoft fournit des exemples de fichiers pour créer les certificats dans le dépôt GitHub /microsoft/azure_arc/.
Vous pouvez cloner le fichier localement pour accéder aux exemples de fichiers.
git clone https://github.com/microsoft/azure_arc
Les fichiers qui sont référencés dans cet article se trouvent dans le dépôt situé sous /arc_data_services/deploy/scripts/monitoring
.
Créer ou acquérir des certificats appropriés
Vous avez besoin de certificats appropriés pour chaque interface utilisateur. Une pour les journaux et l’autre pour les métriques. Le tableau ci-dessous décrit les conditions requises.
Le tableau suivant décrit la configuration requise pour chaque certificat et chaque clé.
Condition requise | Certificat des journaux | Certificat des métriques |
---|---|---|
CN | logsui-svc |
metricsui-svc |
Autres noms d’objets (SAN) | Aucun requis | metricsui-svc.${NAMESPACE}.${K8S_DNS_DOMAIN_NAME} |
keyUsage | digitalsignature keyEncipherment |
digitalsignature keyEncipherment |
extendedKeyUsage | serverAuth |
serverAuth |
Remarque
La valeur K8S_DNS_DOMAIN_NAME par défaut est svc.cluster.local
, bien qu’elle puisse varier en fonction de l’environnement et de la configuration.
Le répertoire du dépôt GitHub contient des exemples de fichiers de modèle qui identifient les spécifications du certificat.
- /arc_data_services/deploy/scripts/monitoring/logsui-ssl.conf.tmpl
- /arc_data_services/deploy/scripts/monitoring/metricsui-ssl.conf.tmpl
Le dépôt GitHub qui contient les exemples Azure Arc fournit un exemple que vous pouvez utiliser afin de générer un certificat et une clé privée conformes pour un point de terminaison.
Consultez le code de /arc_data_services/deploy/scripts/monitoringcreate-monitoring-tls-files.sh.
Si vous souhaitez utiliser l’exemple qui permet de créer des certificats, mettez à jour la commande suivante avec votre namespace
et le répertoire des certificats (output_directory
). Exécutez ensuite la commande.
./create-monitor-tls-files.sh <namespace> <output_directory>
Cela crée des certificats conformes dans l’annuaire.
Déploiement avec la CLI
Une fois que vous disposez du certificat ou de la clé privée de chaque point de terminaison, créez le contrôleur de données avec la commande az dc create...
.
Pour appliquer votre propre certificat ou clé privée, utilisez les arguments suivants.
--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>
L’exemple suivant crée un contrôleur de données avec des certificats désignés pour les tableaux de bord des journaux et des métriques :
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
Vous ne pouvez spécifier des certificats que si vous incluez --use-k8s
dans l’instruction az arcdata dc create ...
.
Déployer avec les outils natifs Kubernetes
Si vous utilisez les outils natifs Kubernetes pour le déploiement, créez des secrets Kubernetes qui contiennent les certificats et les clés privées. Créez les secrets suivants :
logsui-certificiate-secret
metricsui-certificate-secret
.
Vérifiez que les services sont listés comme des noms d’objet alternatifs (SAN), et que les paramètres d’utilisation des certificats sont corrects.
- Vérifiez que chaque secret comporte les champs suivants :
certificate.pem
contenant le certificat encodé en base64privatekey.pem
contenant la clé privée
Contenu connexe
- Essayez Charger les métriques sur Azure Monitor
- En savoir plus sur Grafana :
- En savoir plus sur Kibana