Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Optimización de costos
Para respaldar un control efectivo de los recursos, la minimización de los costos de Kubernetes es crucial para las empresas que utilizan esta tecnología de organización de contenedores. Resulta difícil realizar un seguimiento adecuado del gasto en los entornos de Kubernetes debido a su complejidad, que incluye varios componentes, como módulos y nodos. Mediante la aplicación de técnicas de optimización de costes, las empresas pueden ver en qué se gastan sus recursos y asignar los gastos de forma adecuada a los departamentos o proyectos.
Si bien el escalamiento dinámico tiene ventajas, si no se gestiona adecuadamente, puede generar gastos imprevistos. La gestión eficiente de los costes ayuda a asignar los recursos solo cuando realmente se necesitan, lo que evita un aumento imprevisto de los gastos.
En esta sección se analizan los siguientes enfoques para la optimización de costos:
Kubecost
Kubecost
Kubecost ofrece las siguientes funciones clave:
-
Asignación de costos: Kubecost ofrece una asignación exhaustiva de los costos de los recursos de Kubernetes, incluidas las cargas de trabajo, los servicios, los espacios de nombres y las etiquetas. Esta función ayuda a los equipos a monitorear los costos por entorno, proyecto o equipo.
-
Supervisión de costes en tiempo real: ofrece una supervisión en tiempo real de los costes de la nube, lo que proporciona a las organizaciones información inmediata sobre los patrones de gasto y ayuda a evitar sobrecostes inesperados.
-
Recomendaciones de optimización: Kubecost ofrece sugerencias prácticas para minimizar la utilización de los recursos, como reducir los recursos inactivos, ajustar el tamaño de las cargas de trabajo y maximizar los gastos de almacenamiento.
-
Elaboración de presupuestos y alertas: los usuarios de Kubecost pueden crear presupuestos y recibir recordatorios cuando un gasto se acerque o supere los criterios predeterminados. Esta función ayuda a los equipos a cumplir con las restricciones financieras.
Ricitos de oro
Goldilocks
Goldilocks ofrece las siguientes funciones clave:
-
Recomendaciones de recursos: Goldilocks determina la configuración ideal para las solicitudes y restricciones de recursos mediante el análisis de las estadísticas anteriores de consumo de CPU y memoria de las cargas de trabajo de Kubernetes. De este modo, es más fácil evitar el aprovisionamiento insuficiente o excesivo, lo que puede provocar problemas de rendimiento y desperdicio de recursos.
-
Integración con VPA: Goldilocks aprovecha el escalador automático de pods verticales (VPA) de Kubernetes para recopilar datos y ofrecer recomendaciones. Se ejecuta en un «modo de recomendación», lo que significa que en realidad no cambia la configuración de los recursos, sino que ofrece orientación sobre cuáles deberían ser esas configuraciones.
-
Análisis basado en el espacio de nombres: Goldilocks le permite regular con precisión qué cargas de trabajo se optimizan y supervisan, ya que le permite centrarse en espacios de nombres específicos para su análisis.
-
Panel visual: el panel basado en la web muestra visualmente las solicitudes de recursos y las restricciones sugeridas, lo que facilita la comprensión de los datos y la adopción de medidas al respecto.
-
Funcionamiento no intrusivo: Goldilocks no altera la configuración del clúster porque funciona en modo de recomendación. Si lo desea, puede aplicar manualmente la configuración de recursos recomendada después de revisar las recomendaciones.
AWS Fargate
En el contexto de Amazon EKS, https://docs.aws.amazon.com/eks/latest/userguide/fargate.htmlAWS Fargate le permite ejecutar pods de Kubernetes sin administrar las instancias de Amazon subyacentes. EC2 Se trata de un motor de cómputo sin servidor que le permite centrarse en implementar y escalar aplicaciones en contenedores sin preocuparse por la infraestructura.
AWS Fargate ofrece las siguientes funciones clave:
-
Sin administración de infraestructura: Fargate elimina la necesidad de aprovisionar, administrar o escalar EC2 instancias de Amazon o nodos de Kubernetes. AWS gestiona toda la gestión de la infraestructura, incluidos los parches y el escalado.
-
Aislamiento a nivel de pod: a diferencia de los nodos de trabajo que se basan en Amazon, EC2 Fargate proporciona aislamiento a nivel de tareas o de pod. Cada pod se ejecuta en su propio entorno informático aislado, lo que mejora la seguridad y el rendimiento.
-
Escalado automático: Fargate escala automáticamente los pods de Kubernetes en función de la demanda. No es necesario gestionar las políticas de escalado ni los grupos de nodos.
-
Facturación por segundo: solo paga por los recursos de vCPU y memoria que consuma cada pod durante el tiempo exacto de ejecución, lo que constituye una opción rentable para determinadas cargas de trabajo.
-
Reducción de los gastos generales: al eliminar la necesidad de administrar EC2 instancias, Fargate le permite centrarse en crear y administrar sus aplicaciones en lugar de en las operaciones de infraestructura.
Spot Instances
Las instancias puntuales ofrecen ahorros significativos en comparación con los precios de las instancias bajo demanda y son una opción asequible para ejecutar EC2 nodos de trabajo de Amazon en un clúster de Amazon EKS. Sin embargo, AWS pueden interrumpir las instancias puntuales en caso de que se necesite capacidad de instancia bajo demanda. AWS pueden recuperar instancias puntuales con un aviso de 2 minutos cuando se necesita la capacidad necesaria, lo que las hace menos fiables para cargas de trabajo críticas e informales.
Para las cargas de trabajo sensibles a los costes y que pueden soportar interrupciones, las instancias puntuales de Amazon EKS son una buena opción. El uso de una combinación de instancias puntuales e instancias bajo demanda en un clúster de Kubernetes le ayuda a ahorrar dinero sin sacrificar la disponibilidad de las cargas de trabajo esenciales.
Las instancias puntuales ofrecen las siguientes funciones clave:
-
Ahorro de costes: las instancias puntuales pueden ser más económicas que las instancias bajo demanda, lo
que las hace ideales para cargas de trabajo sensibles a los costes. -
Ideal para cargas de trabajo tolerantes a errores: ideal para cargas de trabajo sin estado y tolerantes a errores, como el procesamiento por lotes, los trabajos de CI/CD, el aprendizaje automático o el procesamiento de datos a gran escala, donde las instancias se pueden reemplazar sin grandes interrupciones.
-
Integración de grupos con escalado automático: Amazon EKS integra las instancias puntuales con el escalador automático de clústeres de Kubernetes, que puede sustituir automáticamente los nodos de instancias puntuales interrumpidos por otras instancias puntuales o instancias bajo demanda disponibles.
instancias reservadas
En Amazon EKS, Reserved Instances
Las instancias reservadas se utilizan habitualmente en Amazon EC2. Sin embargo, los nodos de trabajo de su clúster de Amazon EKS (que son EC2 instancias) también pueden beneficiarse de este modelo de ahorro de costes, siempre que la carga de trabajo requiera un uso predecible y a largo plazo.
Los servicios de producción, las bases de datos y otras aplicaciones activas que necesitan una alta disponibilidad y un rendimiento uniforme son ejemplos de cargas de trabajo estables que son ideales para las instancias reservadas.
Las instancias reservadas ofrecen las siguientes funciones clave:
-
Ahorro de costos: las instancias reservadas ofrecen ahorros en comparación con las instancias bajo demanda, según la duración (1 o 3 años) y el plan de pago
(todo por adelantado, con pago parcial o sin pago inicial). -
Compromiso a largo plazo: se compromete a un plazo de 1 o 3 años para un tipo, tamaño y tamaño de instancia específicos. Región de AWS Esto es ideal para cargas de trabajo estables y que se ejecutan de forma continua a lo largo del tiempo.
-
Precios predecibles: dado que se compromete a cumplir un plazo específico, las instancias reservadas ofrecen costos mensuales o iniciales predecibles, lo que facilita la presupuestación para las cargas de trabajo a largo plazo.
-
Flexibilidad de instancias: con las instancias reservadas convertibles, puede cambiar el tipo, la familia o el tamaño de las instancias durante el período de reserva. Las instancias reservadas convertibles ofrecen más flexibilidad que las instancias reservadas estándar, que no permiten cambios.
-
Capacidad garantizada: las instancias reservadas garantizan que la capacidad esté disponible en la zona de disponibilidad en la que se realiza la reserva, lo cual es crucial para las cargas de trabajo críticas que necesitan una potencia informática constante.
-
Sin riesgo de interrupción: a diferencia de las instancias puntuales, las instancias reservadas no están sujetas a ninguna interrupción. AWS Esto las hace ideales para ejecutar cargas de trabajo de misión crítica que requieren un tiempo de actividad garantizado.
AWS Instancias de Graviton
AWS Graviton
Las instancias Graviton son una excelente opción para las aplicaciones nativas de la nube y las que requieren un uso intensivo de cómputo, ya que ofrecen una relación precio-rendimiento superior a la de las instancias x86. Sin embargo, cuando se plantee adoptar instancias Graviton, tenga en cuenta la compatibilidad con ARM.
AWS Las instancias Graviton ofrecen las siguientes funciones clave:
-
Arquitectura basada en ARM: los procesadores AWS Graviton se basan en la arquitectura ARM, que es diferente de las arquitecturas x86 tradicionales, pero muy eficiente para muchas cargas de trabajo.
-
Rentables: las EC2 instancias de Amazon basadas en Graviton suelen ofrecer una mejor relación precio-rendimiento en comparación con las instancias basadas en x86. EC2 Esto los convierte en una opción atractiva para los clústeres de Kubernetes que ejecutan Amazon EKS.
-
Rendimiento: los procesadores Graviton2, la segunda generación de AWS Graviton, ofrecen mejoras significativas en términos de rendimiento informático, rendimiento de la memoria y eficiencia energética. Son ideales para cargas de trabajo con un uso intensivo de la CPU y de la memoria.
-
Diversos tipos de instancias: las instancias de Graviton vienen en varias familias, como las t4g, m7g, c7g y r7g, y abarcan una variedad de casos de uso, desde cargas de trabajo de uso general hasta cargas de trabajo optimizadas para la computación, optimizadas para la memoria y estables.
-
Grupos de nodos de Amazon EKS: puede configurar grupos de nodos gestionados por Amazon EKS o grupos de nodos autogestionados para incluir instancias basadas en Graviton. Con este enfoque, puede ejecutar cargas de trabajo optimizadas para la arquitectura ARM en el mismo clúster de Kubernetes junto con instancias basadas en x86.