En el mundo de Kubernetes, es crucial tener una visibilidad clara de los costos para gestionar los presupuestos y optimizar el uso de recursos. Kubecost, en colaboración con AWS, proporciona una solución robusta para monitorear y controlar los costos en clústeres de Amazon EKS. En este artículo, te mostraremos cómo instalar Kubecost en tu clúster de EKS utilizando comandos específicos y te proporcionaremos una guía visual para facilitar la configuración.
¿Qué es Kubecost?
Kubecost es una herramienta de código abierto diseñada para la gestión de costos en Kubernetes. Ofrece visibilidad completa sobre los gastos asociados con los recursos del clúster y permite a las organizaciones tomar decisiones informadas para optimizar sus gastos. Con Kubecost, puedes monitorizar costos en tiempo real, analizar el uso de recursos y recibir recomendaciones para mejorar la eficiencia.
Beneficios de Usar Kubecost en EKS
Visibilidad Detallada: Entiende cómo se distribuyen los costos entre aplicaciones y namespaces.
Optimización de Recursos: Identifica y corrige el sobreaprovisionamiento y la subutilización.
Integración con AWS: Configuración sencilla y monitorización específica para el entorno de AWS.
Instalación de Kubecost en un Clúster de EKS
Paso 1: Preparativos Iniciales
Antes de instalar Kubecost, asegúrate de que tu clúster de EKS está configurado correctamente y que tienes kubectl
y helm
instalados.
Instalar Helm
1- Descargar el Archivo de Helm
curl -LO "https://get.helm.sh/helm-v3.9.0-linux-amd64.tar.gz"
2- Extraer el Archivo
tar -zxvf helm-v3.9.0-linux-amd64.tar.gz
3- Mover el Binario a un Directorio en tu PATH
sudo mv linux-amd64/helm /usr/local/bin/helm
4- Verificar la Instalación
helm version
Paso 2: Agregar el Repositorio de Helm y Configurar Kubecost
1- Agregar el Repositorio de Helm de Kubecost
helm repo add kubecost https://kubecost.github.io/cost-analyzer/
helm repo update
2- Crear un Namespace para Kubecost
kubectl create namespace kubecost
3- Instalar Kubecost
Utiliza el siguiente comando para instalar Kubecost en el namespace kubecost
. Este comando incluye la configuración para habilitar la integración con AWS:
helm upgrade -i kubecost oci://public.ecr.aws/kubecost/cost-analyzer --version 1.99.0 --namespace kubecost --create-namespace -f https://raw.githubusercontent.com/kubecost/cost-analyzer-helm-chart/develop/cost-analyzer/values-eks-cost-monitoring.yaml
Paso 3: Verificar la Instalación
1- Obtener la URL del Dashboard de Kubecost
Después de la instalación, usa el siguiente comando para obtener la URL del servicio:
kubectl get services --namespace kubecost
2- Acceder al Dashboard
kubectl port-forward --namespace kubecost deployment/kubecost-cost-analyzer 9090
Descripción general del clúster:
Utilice Kubecost para ver rápidamente una descripción general del gasto de Amazon EKS, incluidos los costos acumulativos del clúster, los costos de activos de Kubernetes asociados y el gasto agregado mensual.
Asignación de costos por espacio de nombres
Vea los costos mensuales de Amazon EKS, así como los costos acumulados por espacio de nombres y otras dimensiones hasta los últimos 15 días. Esto le permite comprender mejor qué partes de su aplicación contribuyen al gasto de Amazon EKS.
Gasto y uso de otros servicios de AWS asociados con clústeres de Amazon EKS
Vea los costos de los activos de infraestructura de AWS asociados con sus recursos de EKS.
Instalar Kubecost en un clúster de Amazon EKS te proporcionará una visión detallada de los costos asociados con tus recursos de Kubernetes. Siguiendo esta guía, podrás configurar Kubecost y comenzar a aprovechar sus capacidades para optimizar tus gastos en la nube.