Proporcionar certificados SSL para la supervisión
A partir de la versión publicada en diciembre de 2021, los servicios de datos habilitados para Azure Arc permiten proporcionar certificados SSL o TLS para los paneles de supervisión. Puede usar estos certificados para los paneles de registros (Kibana) y de métricas (Grafana).
Puede especificar el certificado al crear un controlador de datos con:
- Extensión
arcdata
para la CLI de Azureaz
- Implementación nativa de Kubernetes
Microsoft proporciona archivos de ejemplo para crear los certificados en el repositorio /microsoft/azure_arc/ de GitHub.
Puede clonar el archivo localmente para acceder a los archivos de ejemplo.
git clone https://github.com/microsoft/azure_arc
Los archivos a los que se hace referencia en este artículo se encuentran en el repositorio, en /arc_data_services/deploy/scripts/monitoring
.
Creación o adquisición de los certificados adecuados
Necesita los certificados adecuados para cada interfaz de usuario. Uno para los registros y otro para las métricas. En la siguiente tabla se describen los requisitos.
En la tabla siguiente se describen los requisitos de cada certificado y cada clave.
Requisito | Certificado de registros | Certificado de métricas |
---|---|---|
CN | logsui-svc |
metricsui-svc |
SAN | No se requiere ninguna | metricsui-svc.${NAMESPACE}.${K8S_DNS_DOMAIN_NAME} |
keyUsage | digitalsignature keyEncipherment |
digitalsignature keyEncipherment |
extendedKeyUsage | serverAuth |
serverAuth |
Nota:
El valor predeterminado de K8S_DNS_DOMAIN_NAME es svc.cluster.local
, aunque puede diferir en función del entorno y la configuración.
En el directorio del repositorio de GitHub se incluyen archivos de plantilla de ejemplo que identifican las especificaciones de certificado.
- /arc_data_services/deploy/scripts/monitoring/logsui-ssl.conf.tmpl
- /arc_data_services/deploy/scripts/monitoring/metricsui-ssl.conf.tmpl
En el repositorio de GitHub de ejemplos de Azure Arc se proporciona un ejemplo que puede usar para generar una clave privada y un certificado compatibles para un punto de conexión.
Consulte el código de /arc_data_services/deploy/scripts/monitoringcreate-monitoring-tls-files.sh.
Para usar el ejemplo a fin de crear certificados, actualice el siguiente comando con su valor de namespace
y el directorio de los certificados (output_directory
). Después, ejecute el comando.
./create-monitor-tls-files.sh <namespace> <output_directory>
De esta forma, se crean certificados compatibles en el directorio.
Implementación con la CLI
Una vez que tenga el certificado o la clave privada para cada punto de conexión, cree el controlador de datos con el comando az dc create...
.
Para aplicar su propio certificado o clave privada, use los argumentos siguientes.
--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>
Por ejemplo, en el ejemplo siguiente se crea un controlador de datos con certificados designados para los paneles de la interfaz de usuario de registros y métricas:
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
Solo puede especificar certificados cuando incluya --use-k8s
en la instrucción az arcdata dc create ...
.
Implementación con herramientas nativas de Kubernetes
Si usa herramientas nativas de Kubernetes para la implementación, cree secretos de Kubernetes que almacenen los certificados y las claves privadas. Cree los secretos siguientes:
logsui-certificiate-secret
metricsui-certificate-secret
.
Asegúrese de que los servicios aparecen como nombres alternativos del firmante (SAN) y de que los parámetros de uso del certificado son correctos.
- Compruebe que cada secreto tiene los siguientes campos:
certificate.pem
con el certificado codificado en Base64privatekey.pem
con la clave privada
Contenido relacionado
- Intente cargar métricas y registros en Azure Monitor
- Obtenga información acerca de Grafana:
- Obtenga información acerca de Kibana: