Entorno de kubernetes con Rancher 2.5
Published on December 09, 2021 by Lucho
post linux kubernetes rancher
3 min READ
Kubernetes es un proyecto Open Source de Google para la gestión de aplicaciones en contenedores, en especial los contenedores Docker, permitiendo programar el despliegue, escalado, monitorización de los contenedores, etc. Permite empaquetar las aplicaciones en contenedores, trasladarlos fácil y rápidamente a cualquier equipo para ejecutarlas. Fue diseñado para ser un entorno para la creación de aplicaciones distribuidas en contenedores. Es un sistema para la construcción, funcionamiento y gestión de sistemas distribuidos.
Rancher fue construido originalmente para trabajar con múltiples orquestadores. Rancher 2 implementa y administra exclusivamente los clústeres de Kubernetes que se ejecutan en cualquier lugar y en cualquier proveedor. Rancher puede aprovisionar Kubernetes desde un proveedor alojado, aprovisionar nodos de cómputo y luego instalar Kubernetes en ellos, o importar clústeres de Kubernetes existentes que se ejecutan en cualquier lugar.
Rancher Kubernetes Engine (RKE) es una distribución de Kubernetes certificada por la CNCF que se ejecuta completamente dentro de contenedores Docker. Funciona en servidores bare-metal y virtualizados. RKE resuelve el problema de la complejidad de la instalación, un problema común en la comunidad de Kubernetes. Con RKE, la instalación y operación de Kubernetes se simplifica y se automatiza fácilmente, y es completamente independiente del sistema operativo y la plataforma que está ejecutando. Siempre que pueda ejecutar una versión compatible de Docker, puede implementar y ejecutar Kubernetes con RKE
En esta pequeña practica estaremos viendo el despliegue de un cluster con RKE y su posterior administracion con Rancher 2.5
Flujo de trabajo
El aprovisionamiento de las maquinas/servidores/nodos se trata de la actualización/instalación/configuracion de los componentes para el posterior despliegue de la infraestructura
Para el despliegue de un cluster con RKE es necesario tener el binario estatico de rke, y configurar el manifiesto de despliegue
wget https://github.com/rancher/rke/releases/download/v1.3.2/rke_linux-amd64
chmod +x rke_linux-amd64
mv rke_linux-amd64 /usr/bin/rke
rke config --name cluster.yml # Configurar el manifiesto de acuerdo a sus necesidades
rke up
Al terminar el despliegue de RKE se nos crea un fichero “kube_config_cluster.yml” con el cual nos conectaremos al cluster con el cliente kubectl
alias k="kubectl --kubeconfig kube_config_cluster.yml"
Para el correcto despliegue de muchas aplicaciones requerimos de una identidad certificadora dentro del clúster. Dicha identidad certificadora es “cert-manager” la cual se encarga de emitir, revocar certificados de seguridad, etc…. Para el despliegue de dicho aplicativo, se crearon dos manifiestos en YML para su correcto despliegue
Para esta pequeña demo yo estare utlizando varias aplicaciones como:
Estos servicios ya los tengo previamente desplegados
En la documentacion oficial de Rancher se recomienda el despliegue con helm. Aunque en esta pequeña demo yo tengo los manifiestos en claro
Por ultimo afectamos el /etc/hosts para poder llegar a nuestro dominio de “rancher.k8s.lab” para poder llegar con nuestro navegador
FIN !!
Un saludo