Antes de instalar CloudPrem en AKS, asegúrate de que tu entorno de Azure está configurado correctamente. Para obtener instrucciones detalladas de configuración de Azure, consulta la Guía de configuración de Azure.
Crea un espacio de nombres de Kubernetes para el chart:
kubectl create namespace <NAMESPACE_NAME>
Por ejemplo, para crear un espacio de nombres cloudprem:
kubectl create namespace cloudprem
Nota: Puedes establecer un espacio de nombres predeterminado para tu contexto actual para evitar tener que escribir -n <NAMESPACE_NAME> con cada comando:
Almacena la cadena de conexión de la base de datos PostgreSQL como secreto de Kubernetes:
Para recuperar los detalles de tu conexión de PostgreSQL, ve al portal de Azure, navega a All resources (Todos los recursos) y, a continuación, haz clic en tu instancia Azure Database for PostgreSQL flexible server (Servidor flexible de Azure Database para PostgreSQL). Finalmente, en la pestaña Getting started (Introducción), haz clic en el enlace View connection strings (Ver cadenas de conexión) en Connect card (Tarjeta de conexión).
Crea un archivo datadog-values.yaml para sustituir los valores predeterminados por tu configuración personalizada. Aquí es donde se definen los ajustes específicos del entorno, como la etiqueta de imagen, el ID de inquilino de Azure, la cuenta de servicio, la configuración de entrada, las solicitudes y los límites de recursos, etc.
Cualquier parámetro que no se haya sobrescrito explícitamente en datadog-values.yaml vuelve a los valores por defecto definidos en el values.yaml del chart.
# Show default values helm show values datadog/cloudprem
A continuación, verás un ejemplo de archivo datadog-values.yaml con anulaciones para Azure:
datadog-values.yaml
# Configuración de Datadogdatadog:# El sitio de Datadog (https://docs.datadoghq.com/getting_started/site/) al que conectarte. Por defecto es `datadoghq.com`.# site: datadoghq.com# El nombre del secreto existente que contiene la clave de API de Datadog. El nombre de la clave secreta debe ser `api-key`.apiKeyExistingSecret:datadog-secretazure:tenantId:<TENANT_ID># requiredclientId:<CLIENT_ID># required when using AD App to authenticate with Blob StorageclientSecretRef:name:<SECRET_NAME>key:<SECRET_KEY>storageAccount:name:<STORAGE_ACCOUNT_NAME># required# Si estás utilizando una clave de acceso de cuenta de almacenamiento para autenticarte con Blob Storage,# comenta la sección `clientSecretRef` arriba,# y descomenta la sección `storageAccount` a continuación:# accessKeySecretRef:# name: <SECRET_NAME># key: <SECRET_KEY># Configuración de la cuenta de servicio# Si `serviceAccount.create` se establece en `true`, se crea una cuenta de servicio con el nombre especificado.# Se pueden añadir anotaciones adicionales utilizando serviceAccount.extraAnnotations.serviceAccount:create:truename:cloudprem# Configuración del nodo de CloudPremconfig:# El URI raíz donde se almacenan los datos del índice. Debe ser una ruta de Azure.# Todos los índices creados en CloudPrem se almacenan en esta ubicación.default_index_root_uri:azure://<CONTAINER_NAME>/indexes# Configuración de entrada interna# El NLB de entrada interno se crea en subredes privadas.## Se pueden añadir anotaciones adicionales para personalizar el comportamiento del ALB.ingress:# La entrada interna es utilizada por Datadog Agents y otros recopiladores que se ejecutan fuera del# clúster de Kubernetes para enviar sus logs a CloudPrem.internal:enabled:trueingressClassName:nginx-internalhost:cloudprem.acme.internalextraAnnotations:{}# Configuración de metastore# El metastore se encarga de almacenar y gestionar los metadatos de los índices.# Requiere una cadena de conexión de base de datos de PostgreSQL proporcionada por un secreto de Kubernetes.# El secreto debe contener una clave llamada `QW_METASTORE_URI` con un valor en el formato:# postgresql://<username>:<password>@<host>:<port>/<database>## La cadena de conexión de metastore se monta en los pods utilizando extraEnvFrom para hacer referencia al secreto.metastore:extraEnvFrom:- secretRef:nombre:cloudprem-metastore-uri# Configuración del indexador# El indexador es responsable de procesar e indexar los datos entrantes que recibe de diversas fuentes (por ejemplo, Datadog Agents, recopiladores de logs)# y los transforma en archivos de búsqueda llamados "splits" almacenados en S3.## El indexador es escalable horizontalmente: puedes aumentar `replicaCount` para gestionar un mayor rendimiento de indexación.# Las solicitudes de recursos y los límites deben ajustarse en función de la carga de trabajo de indexación.## Los valores predeterminados son adecuados para cargas de indexación moderadas de hasta 20 MB/s por pod de indexador.indexer:replicaCount:2resources:requests:cpu:"4"memory:"8Gi"limits:cpu:"4"memory:"8Gi"# Configuración del buscador# El buscador es responsable de ejecutar las consultas de búsqueda contra los datos indexados almacenados en S3.# Gestiona las solicitudes de búsqueda del servicio de consulta de Datadog y devuelve los resultados coincidentes.## El buscador es escalable horizontalmente; puedes incrementar `replicaCount` para manejar más búsquedas concurrentes.# Las necesidades de recursos de los buscadores dependen en gran medida de la carga de trabajo y deben determinarse empíricamente.# Entre los factores clave que influyen en el rendimiento de las búsquedas se encuentran:# - Complejidad de la consulta (por ejemplo, número de términos, uso de comodines o expresiones regulares)# - Concurrencia de consultas (número de búsquedas simultáneas)# - Cantidad de datos escaneados por consulta# - Patrones de acceso a los datos (tasas de aciertos de caché)## La memoria es especialmente importante para los buscadores, ya que almacenan en memoria los datos de índice a los que se accede con frecuencia.searcher:replicaCount:2resources:requests:cpu:"4"memory:"16Gi"limits:cpu:"4"memory:"16Gi"