¿Interesado en reducir los costes de infraestructura reutilizando componentes existentes?

Kubernetes, un vistazo rápido a este administrador de contenedores
Sabemos que el uso de contenedores tiene gran popularidad desde hace ya varios años, y el día de hoy queremos hablar de lo que se ha vuelto el orquestador por defecto de las organizaciones para administrar sus aplicaciones, Kubernetes.
Antes de hablar sobre Kubernetes y contenedores o clusters, es necesario entender qué son los microservicios. Estos se basan en dividir las aplicaciones en elementos con entidad propia, independientes entre sí; de esta forma la aplicación aprovecha para realizar las funciones que tiene encomendada.
Los microservicios implican un cambio de paradigma respecto a la arquitectura tradicional monolítica, donde todas las funciones del código son compiladas en una sola aplicación. Así, entre las ventajas de utilizar infraestructura de microservicios, se destaca principalmente distribuir las cargas de los sistemas y optimizar el desarrollo de estas. Con las cargas distribuidas es necesario utilizar algún medio para administrarlas, y es aquí donde entra Kubernetes.
Kubernetes es una plataforma open source para la organización en contenedores que automatiza muchos de los procesos manuales involucrados en la implementación, la gestión y el ajuste de las aplicaciones que se alojan en ellos. A traves de k8s es posible añadir o eliminar nodos de un cluster facilmente, reiniciar los contenedores que lleguen a fallar de manera ordenada entre otras funcionalidades.
Principios de diseño de Kubernetes

El diseño de un clúster con esta tecnología se basa en tres principios.
- Seguridad: debe seguir las prácticas recomendadas de seguridad más recientes.
- Enfocarse en RBAC
- Usar el autorizador de nodo
- Utilizar comunicación segura entre los componentes del plano de control
- Utilizar comunicación segura entre el servidor API y los kubelets
- Bloquear la API de kubelet
- Bloquear el acceso a la API para componentes del sistema como kube-proxy y CoreDNS
- Bloquear lo que puede acceder un token de arranque.
- Facilidad de uso: debe poder operarse con algunos comandos sencillos.
- Capacidad de expansión: no debe favorecer a un solo proveedor. Además, debe poder personalizarse desde un archivo de configuración
Ventajas para las empresas
- Reduced Time-to-market: Kubernetes y los contenedores hacen posible un desarrollo homogeneo con entornos de prueba y despliegues en tiempo real. Originando numerosas ventajas a la hora de tener nuevos despliegues.
- Capacidad y portabilidad de multicloud: Kubernetes y los contenedores garantizan que las aplicaciones funcionen en gran medida de forma independiente respecto al entorno. De esta manera, las aplicaciones se pueden mover a diferentes plataformas en la nube sin sufrir afectaciones en sus funcionalidades.
- Mejor estabilidad y disponibilidad: Kubernetes garantiza un mayor grado de automatización y, por lo tanto, una mayor solidez y menos esfuerzo en la gestión de incidencias y facilita la resolución de problemas asi como la capacidad de autoreparación.
- Costes optimizados y esfuerzo reducido: Kubernetes permite una capacidad de empaquetado de diferentes aplicaciones basadas en contenedores, por lo tanto, garantiza una utilización y un consumo más eficientes de los recursos. Esto reduce los costes de infraestructura y también abriendo la posibilidad de la reutilización de los componentes de la infraestructura realizada.
Valores constantes y caminos conocidos
Luego de conocer de que se trata kubernetes y cuáles son las ventajas de trabajar a traves de el mismo, queremos dejar una lista de valores constantes y caminos conocidos que se han definido para facilitar el aprendizaje de la plataforma y tambien simplificar el desarrollo de herramientas a través de kubernetes:
/etc/kubernetes la ruta dada en la mayoría de los casos, y la ubicación más intuitiva
/etc/kubernetes/manifests como el camino donde kubelet debería buscar manifiestos estáticos de Pod
Los nombres de los manifiestos estáticos de Pod son:
– yaml
– kube-apiserver.yaml
– kube-controller-manager.yaml
– kube-scheduler.yaml
– /etc/kubernetes/como la ruta donde kubeconfig archiva con identidades para el plano de control Los componentes están almacenados.
Los nombres de los archivos kubeconfig son:
– conf (bootstrap-kubelet.conf durante el arranque TLS )
– controller-manager.conf
– conf
– confpara el administrador del clúster y el propio kubeadm
Nombres de certificados y archivos clave:
– crt, ca.key para la autoridad de certificación Kubernetes
– crt, apiserver.key para el certificado del servidor API
– apiserver-kubelet-client.crt, apiserver-kubelet-client.key para el certificado del cliente utilizado por el servidor API para conectarse a los kubelets de forma segura
– pub, sa.key para la clave utilizada por el gerente del controlador al firmar ServiceAccount
– front-proxy-ca.crt, front-proxy-ca.key para la autoridad de certificación de representación frontal
– front-proxy-client.crt, front-proxy-client.key para el cliente proxy frontal
¡Solo recuerde! Docker crea un contenedor, mientras que Kubernetes lo administra.
Conozca más sobre administración de contenedores y cómo son utilizados de manera práctica con la plataforma Dataiku, para reducir los costes de infraestructura y elevar la calidad de los datos del negocio.
Conversemos sobre una Demo: info@excibit-corp.come
David Talaga, Dataiku
Trabaje con datos claros y disponibles para cada decisión.
Nuestro equipo les acompaña con entusiasmo, para acercarles al futuro que desean.
