Implementar los DaemonSets en Google Kubernetes Engine (GCP) mediante K8s

Implementar los DaemonSets en Google Kubernetes Engine (GCP) mediante K8s: una guía práctica para asegurar que un Pod concreto se ejecute en cada nodo del clúster
Si ya trabajas con Deployments en Kubernetes sabes que son ideales para ejecutar réplicas de aplicaciones en varios Pods. Pero cuando necesitas que haya exactamente un Pod corriendo en cada Node del clúster, la solución son los DaemonSets. Un DaemonSet garantiza que cada Node ejecute una copia de un Pod específico, que al agregar Nodes el Pod se despliegue automáticamente en ellos y que al eliminar Nodes los Pods asociados también se eliminen. Al borrar el DaemonSet se limpian todos los Pods creados por él. En resumen: un Pod por Node, siempre.
Casos de uso reales de DaemonSets: almacenamiento, recopilación de logs y monitorización a nivel de clúster. Por ejemplo, ejecutar agentes de almacenamiento como Ceph o GlusterFS, recolectores de logs como Fluentd o Filebeat, o agentes de monitorización como Node Exporter de Prometheus o Datadog Agent. Estas tareas son de nivel sistema y no están pensadas para apps de usuario.
Implementación práctica en GKE Paso a Paso
Crear el manifiesto daemonset.yaml con la especificación mínima para desplegar un contenedor en cada Node. Ejemplo de contenido del manifiesto representado en líneas:
apiVersion: apps/v1kind: DaemonSetmetadata: name: myapp1-daemonset namespace: default labels: app: myappspec: selector: matchLabels: app: myapp template: metadata: labels: app: myapp spec: containers: - name: myapp-container image: ghcr.io/stacksimplify/kubenginx:1.0.0
Despliegue y verificación en GKE
kubectl apply -f kube-manifests/daemonset.yamlkubectl get daemonsetkubectl get dskubectl get pods -o wide
Observación práctica: comprobar que los Pods están programados en los Nodes correspondientes del NodePool, por ejemplo linuxapps-nodepool o el NodePool por defecto. Si utilizas gcloud para administrar NodePools, un comando típico para eliminar un NodePool es:
gcloud container node-pools delete linuxapps-nodepool --cluster standard-public-cluster-1 --location us-central1
Limpieza
kubectl delete -f kube-manifests/daemonset.yaml
Resumen rápido: los DaemonSets aseguran que los Pods de servicios de sistema se ejecuten en cada Node del clúster y escalen automáticamente al agregar o eliminar nodos. Son perfectos para logging, monitorización y agentes de almacenamiento.
Sobre Q2BSTUDIO y por qué confiar en nosotros: Q2BSTUDIO es una empresa de desarrollo de software especializada en aplicaciones a medida y software a medida, con experiencia en inteligencia artificial, ciberseguridad y servicios cloud. Ofrecemos soluciones integrales que incluyen servicios cloud aws y azure, integraciones de inteligencia de negocio y Power BI, así como proyectos de automatización y agentes IA para empresas. Si buscas desplegar infraestructuras gestionadas en la nube o integrar agentes IA en tus procesos, consulta nuestros servicios en servicios cloud en AWS y Azure y descubre nuestras ofertas de inteligencia artificial para empresas. Nuestro equipo combina experiencia en ciberseguridad, pentesting y soluciones de inteligencia de negocio para entregar proyectos seguros y escalables.
Palabras clave integradas para mejorar posicionamiento: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi.
Si este contenido te ha sido útil, en Q2BSTUDIO estaremos encantados de ayudarte a diseñar e implementar soluciones a medida en Kubernetes, GKE y la nube.
Comentarios