Cómo instalar Rancher Kubernetes Panel en Ubuntu 22.04
Rancher es una plataforma de orquestación multiclúster, gratuita y de código abierto, que permite a las organizaciones desplegar contenedores en un entorno de producción. Te permite agilizar el despliegue de clústeres en bare metal, nubes privadas, nubes públicas o vSphere, y protegerlos mediante políticas de seguridad globales. Con esta plataforma de gestión de contenedores, puedes desplegar, gestionar y ejecutar Kubernetes en cualquier lugar.
Características de Rancher
- Redes entre hosts
- Equilibrio de carga de contenedores
- Servicios de almacenamiento persistente
- Descubrimiento de servicios
- Actualizaciones de servicios
- Gestión de recursos
- Arrendamiento múltiple y gestión de usuarios
- Motores de Orquestación Múltiples
Este tutorial te mostrará cómo instalar la plataforma de gestión de contenedores Rancher Kubernetes en Ubuntu 22.04.
Requisitos previos
- Un servidor con Ubuntu 22.04.
- Un mínimo de 4 GB de RAM.
- Una contraseña de root configurada en el servidor.
Cómo empezar
Antes de empezar, es una buena idea actualizar todos los paquetes del sistema a la última versión. Puedes actualizarlos todos ejecutando el siguiente comando:
apt update apt upgrade
Una vez actualizados todos los paquetes, puedes pasar al siguiente paso.
Instalar Docker CE
En primer lugar, tendrás que instalar Docker CE en tu servidor. Por defecto, la última versión de Docker CE está disponible en el repositorio por defecto de Ubuntu 22.04. Puedes instalarlo con el siguiente comando:
apt install docker.io -y
Una vez instalado el Docker CE, verifica la versión de Docker con el siguiente comando:
docker version
Deberías ver la siguiente salida:
Client: Version: 20.10.12 API version: 1.41 Go version: go1.17.3 Git commit: 20.10.12-0ubuntu4 Built: Mon Mar 7 17:10:06 2022 OS/Arch: linux/amd64 Context: default Experimental: true Server: Engine: Version: 20.10.12 API version: 1.41 (minimum version 1.12) Go version: go1.17.3 Git commit: 20.10.12-0ubuntu4 Built: Mon Mar 7 15:57:50 2022 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.5.9-0ubuntu3 GitCommit: runc: Version: 1.1.0-0ubuntu1 GitCommit: docker-init: Version: 0.19.0 GitCommit:
Una vez que hayas terminado, puedes pasar al siguiente paso.
Gestionar los servicios Docker
Por defecto, el servicio Docker es gestionado por systemd. Puedes gestionarlo fácilmente utilizando el comando systemctl.
Para iniciar el servicio Docker y permitir que se inicie al reiniciar el sistema, ejecuta el siguiente comando:
systemctl start docker systemctl enable docker
También puedes comprobar el estado de Docker con el siguiente comando:
systemctl status docker
Deberías ver la siguiente salida:
? docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2022-07-24 05:09:45 UTC; 24s ago TriggeredBy: ? docker.socket Docs: https://docs.docker.com Main PID: 115654 (dockerd) Tasks: 7 Memory: 30.5M CPU: 356ms CGroup: /system.slice/docker.service ??115654 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock Jul 24 05:09:45 ubuntu dockerd[115654]: time="2022-07-24T05:09:45.440732558Z" level=info msg="scheme \"unix\" not registered, fallback to def> Jul 24 05:09:45 ubuntu dockerd[115654]: time="2022-07-24T05:09:45.440869430Z" level=info msg="ccResolverWrapper: sending update to cc: {[{uni> Jul 24 05:09:45 ubuntu dockerd[115654]: time="2022-07-24T05:09:45.440999011Z" level=info msg="ClientConn switching balancer to \"pick_first\"> Jul 24 05:09:45 ubuntu dockerd[115654]: time="2022-07-24T05:09:45.493588262Z" level=info msg="Loading containers: start." Jul 24 05:09:45 ubuntu dockerd[115654]: time="2022-07-24T05:09:45.728082693Z" level=info msg="Default bridge (docker0) is assigned with an IP> Jul 24 05:09:45 ubuntu dockerd[115654]: time="2022-07-24T05:09:45.888415790Z" level=info msg="Loading containers: done." Jul 24 05:09:45 ubuntu dockerd[115654]: time="2022-07-24T05:09:45.919227724Z" level=info msg="Docker daemon" commit=20.10.12-0ubuntu4 graphdr> Jul 24 05:09:45 ubuntu dockerd[115654]: time="2022-07-24T05:09:45.919727905Z" level=info msg="Daemon has completed initialization" Jul 24 05:09:45 ubuntu systemd[1]: Started Docker Application Container Engine.
Una vez que hayas terminado, puedes pasar al siguiente paso.
Instalar Rancher Ubuntu 22.04
Llegados a este punto, Docker está instalado en tu sistema. Ahora puedes ejecutar el siguiente comando para descargar e iniciar el contenedor Rancher.
docker run -d --name=rancher-server --restart=unless-stopped -p 80:80 -p 443:443 --privileged rancher/rancher:v2.4.18
Deberías ver la siguiente salida:
Unable to find image 'rancher/rancher:v2.4.18' locally v2.4.18: Pulling from rancher/rancher 11323ed2c653: Pull complete b7dc5ddb9fe7: Pull complete 0372c040ea0d: Pull complete 5a7eaf28cae2: Pull complete 0d1eff5b3c25: Pull complete 041282f2e586: Pull complete 7cc8371df882: Pull complete 3150273d5f70: Pull complete afc5be66b12f: Pull complete 178a32bc5aa3: Pull complete 54d219a8d26f: Pull complete ea3ba9f14df5: Pull complete a97b83c715bd: Pull complete a895bd7633e7: Pull complete 516c02ccca88: Pull complete dcb1f2890247: Pull complete Digest: sha256:69a7403fb9fe5fe0e58c5a5ff94d04e2ca74d7fce6ed7f29a5c04311ba14cc79 Status: Downloaded newer image for rancher/rancher:v2.4.18 51405105eee8eed48dcaf7589ef253295275c941fc3963a2ca9e9c43d844b410
El comando anterior descargará la imagen Rancher del registro Docker Hub y creará un contenedor a partir de ella. Puedes ver la imagen descargada utilizando el siguiente comando:
docker images
Deberías ver la siguiente salida:
REPOSITORY TAG IMAGE ID CREATED SIZE rancher/rancher v2.4.18 da1ad4a1e248 3 months ago 890MB
También puedes verificar el contenedor en ejecución utilizando el siguiente comando:
docker ps
Deberías ver el contenedor Rancher en la siguiente salida:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 2d32d612b497 rancher/rancher:v2.4.18 "entrypoint.sh" 23 seconds ago Up 21 seconds 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp rancher-server
Cuando hayas terminado, puedes pasar al siguiente paso.
Acceder a la interfaz web de Rancher
En este punto, Rancher está instalado y escucha en el puerto 443. Ahora puedes acceder a él utilizando la URL https://your-server-ip. Serás redirigido a la pantalla de bienvenida de Rancher:
Establece tu contraseña de administrador y pulsa el botón Continuar. Deberías ver la siguiente pantalla:
Define la URL de tu servidor y pulsa el botón Guardar URL. Deberías ver la siguiente pantalla:
Permitir la recopilación de información anónima y pulsa el botón Lo tengo. Deberías ver el panel de control de Rancher en la siguiente pantalla:
Gestionar Contenedor Rancher
También puedes ver los registros de Rancher utilizando el siguiente comando:
docker container logs rancher-server
Deberías ver la siguiente salida:
2022/07/24 05:13:27 [INFO] kontainerdriver azurekubernetesservice listening on address 127.0.0.1:39997 2022/07/24 05:13:27 [INFO] kontainerdriver azurekubernetesservice stopped 2022/07/24 05:13:27 [INFO] dynamic schema for kontainerdriver azurekubernetesservice updating 2022/07/24 05:14:15 [INFO] Catalog-cache removed 2 entries from disk 2022/07/24 05:14:40 [INFO] Updating TLS secret for serving-cert (count: 4): map[listener.cattle.io/cn-127.0.0.1:127.0.0.1 listener.cattle.io/cn-172.17.0.2:172.17.0.2 listener.cattle.io/cn-localhost:localhost listener.cattle.io/cn-syspass.example.com:syspass.example.com listener.cattle.io/hash:e7ccf1ee0884f026725549817c91f5797ccfd133a810b5bd9c7446e03fa9383f] 2022/07/24 05:14:40 [INFO] Active TLS secret serving-cert (ver=2125) (count 4): map[listener.cattle.io/cn-127.0.0.1:127.0.0.1 listener.cattle.io/cn-172.17.0.2:172.17.0.2 listener.cattle.io/cn-localhost:localhost listener.cattle.io/cn-syspass.example.com:syspass.example.com listener.cattle.io/hash:e7ccf1ee0884f026725549817c91f5797ccfd133a810b5bd9c7446e03fa9383f] 2022/07/24 05:14:40 [INFO] Active TLS secret serving-cert (ver=2125) (count 4): map[listener.cattle.io/cn-127.0.0.1:127.0.0.1 listener.cattle.io/cn-172.17.0.2:172.17.0.2 listener.cattle.io/cn-localhost:localhost listener.cattle.io/cn-syspass.example.com:syspass.example.com listener.cattle.io/hash:e7ccf1ee0884f026725549817c91f5797ccfd133a810b5bd9c7446e03fa9383f] I0724 05:18:41.035933 22 controller.go:606] quota admission added evaluator for: preferences.management.cattle.io 2022/07/24 05:19:08 [INFO] Creating token for user user-jb9gv time="2022-07-24 05:19:08" level=info msg="Telemetry Client v0.5.14" time="2022-07-24 05:19:08" level=info msg="Listening on 0.0.0.0:8114" time="2022-07-24 05:19:08" level=info msg="Collecting anonymous data from https://localhost:443/v3"
Para detener el contenedor Rancher, ejecuta el siguiente comando:
docker container stop rancher-server
Para iniciar el contenedor Rancher, ejecuta el siguiente comando:
docker container start rancher-server
Para pausar el contenedor Rancher, ejecuta el siguiente comando:
docker container pause rancher-server
Para eliminar el contenedor Rancher, ejecuta el siguiente comando:
docker container remove rancher-server
Conclusión
En este post, hemos explicado cómo instalar Rancher en Ubuntu 22.04. Ahora puedes importar tus clusters Kubernetes o crear un nuevo contenedor desde el panel de control de Rancher y gestionarlos todos desde una ubicación central. No dudes en preguntarme si tienes alguna duda.