Instalación de Docker con RancherOS y Rancher

Instalación de Docker con RancherOS y Rancher

Docker: Plataforma de código abierto que automatiza el despliegue de aplicaciones dentro de contenedores de software, ver (What Is Docker)

Container: Abstracción de la capa de aplicación en el que se empaqueta el código y las dependencias necesarias para su ejecución. Múltiples containers pueden ejecutarse en la misma máquina y compartir el kernel del Sistema Operativo anfitrión con otros containers. Los containers ocupan menos espacio que una Máquina Virtual (generalmente decenas de Mb) y se inician instantáneamente. Ver (What is a Container)

Máquina Virtual: Abstracción de hardware para convertir un servidor en varios servidores. Cada Maquina Virtual es una copia completa de un Sistema Operativo, las aplicaciones, los binarios y las librerías necesarias para su ejecución (generalmente decenas de Gb) y pueden ser demoradas en iniciar. Ver (What is a Container)

RancherOS: Distribución de Linux minimalista construida con containers de Docker enfocado con el propósito de ser un Sistema Operativo ultra liviano para ejecutar containers a escala en desarrollo, prueba y producción.

Rancher: Plataforma de administración de containers con la que se pueden desplegar múltiples cluster de Docker sobre múltiples nubes.

Instalación de RancherOS

Descargar la última ISO estable (preferiblemente LTS) de: https://github.com/rancher/os/releases

Si se instala en VirtualBox, crear maquina virtual con:
Nompre: RancherOS
Tipo: Linux
Versión: Other Linux 64
Memoria Base: 2048 Mb = 2 Gb
Almacenamiento: 8 Gb
Tipo de archivo de disco duro: VMDK con reservado dinamico
Audio: deshabilitado
Red: Conectado a: Adaptador Puente
Almacenamiento: cargar en el emulador de CD la ISO descargada de RancherOS

Iniciar la maquina y cuando termine la instalación verificar que el usuario es rancher con el comando
$ whoami

Verificar configuración de red eth0
$ ip addr |more

Establecer configuración de red (en nuestro caso la ip 172.16.0.40 mascara 22, puerta de enlace 172.16.0.3)
$ sudo ip addr add 172.16.0.40/22 dev eth0
$ sudo route add default gw 172.16.0.4

Verificar conectividad
$ ping 172.16.0.4

Cambiar la contraseña
$ sudo passwd rancher

Con PuTTYgen generar la llave publica y privada

Conectándose a RancherOS por PuTTY
Verificar que estamos en /home/rancher
$ pwd

Agregar los siguientes datos al archivo cloud-config.yml
$ vi cloud-config.yml
#cloud-config
ssh_authorized_keys:
 - ssh-rsa AA(toda la llave generada)
hostname: rancheros
rancher:
 network:
  dns:
   nameservers:
    - 172.24.24.30
  interfaces:
   eth*:
    dhcp: false
   eth0:
    address: 172.16.0.41/22
    gateway: 172.16.0.4
    mtu: 1500

Guardar el archivo y verificar
$ cat cloud-config.yml

Ver discos disponibles
$ sudo fdisk -l
 Disk /dev/sda: 8 GiB, 8589934592 bytes, 16777216 sectors

Instalar la configuración
$ sudo ros install -c cloud-config.yml -d /dev/sda

Decirle continuar con instalación pero no continuar con reboot
$ sudo poweroff

En VirtualBox
En Almacenamiento eliminar el ISO
En Sisema / Placa Base / Orden de arranque dejar de primeras el Disco Duro y no seleccionar Disquete y Optica

Iniciar la máquina
Nota: Por seguridad RancherOS no deja logear por la consola

En PuTTY
Agregar a la sesión Connection / SSH / Auth la ruta de la llave privada

Para cambiar la contraseña y permitir el ingreso desde la consola pero al reinicio se pierde
$ sudo passwd rancher

Instalar el controlador web Rancher
$ sudo docker run -d --restart=unless-stopped -p 8080:8080 rancher/server:stable
$ sudo docker logs -f <CONTAINER_ID>

En Chrome
172.16.0.41:8080 para acceder a Rancher
En menú / ADMIN / Access Control vincular con la cuenta de github
En Menú / INFRASTRUCTURE / Hosts / Add Host adicionar el host RancherOS 172.16.0.41

Referencias y Fuentes

  1. Sitio Oficial de Docker www.docker.com
  2. Sitio Oficial de RancherOS y Rancher rancher.com
  3. dondocker.com, RANCHEROS. SO PARA CONTENEDORES DOCKER HECHO CON DOCKER
  4. Jason Soto, Guía de Inicio en Docker, Meet Docker

Comentarios