Despliega OpenShift 4.6 en cinco minutos en tu propio portátil o servidor

Quizás uno de los retos a la hora de aprender sobre Red Hat OpenShift, es disponer de un buen entorno de pruebas para comprender bien la plataforma, poder desplegar aplicaciones de prueba y familizarizarse tanto con el GUI como con la línea de comandos. Si bien un cluster mínimo a partir de la versión 4 de OpenShift, require de al menos 6 nodos, existe un sistema todo-en-uno llamado Red Hat CodeReady Containers. Incluye un cluster mínimo de la última versión OpenShift 4 con una serie de ajustes para que funcione en una única máquina virtual que podemos desplegar en nuestros servidores de prubas, o incluso en tu propio ordenador portátil. Si bien se trata de un proyecto dirigido principalmente para los desarrolladores de software, pero que nos sirve perfectamente, para aprender a configurar y administrar esta plataforma.

¿Qué otras diferencias existen?

  • Solo hay un nodo, que actúa como “master” y “worker” a la vez. Verás muchos mensajes de “warning” pero no es un problema.
  • Los Operadores de Kubernetes están deshabilitados. También la monitorización para ahorrar recursos.
  • No se puede actualizar a versiones nuevas de OpenShift. Aunque esto no es un problema porque podemos descargar y ejecutar las nuevas versiones de esta máquina virtual que Red Hat va publicando regularmente.
  • Se trata de un entorno que hay que recrear cada cierto tiempo. Red Hat recomienda hacerlo una vez al mes, pero en nuestra experiencia práctica, cada dos o tres días de uso, se va volviendo cada vez más lento y es necesario destruirlo y volver a crearlo.
  • Como se ejecuta dentro de una máquina virtual, puede que nos toque hacer alguna configuración adicional de la red a mano.

¿Cuales son los requisitos de HW y SW?

  • Última versión de Red Hat o Centos 7.X o 8.X. Nosotros preferimos Centos pues la configuración es más rápida.
  • 4 virtual CPUs (vCPUs)
  • 8 GB de memoria RAM
  • 35 GB de espacio en disco.

Si nada de esto te supone un problema, puedes descargar aquí la imágen. Ten en cuenta que necesitas una cuenta de desarrollador de Red Hat (gratuita).

Verás que además de seleccionar el sistema operativo (hay una imágen para cada tipo de “Hypervisor”), también existe un “secret”, esto no deja de ser una especie de clave-licencia, que nos pedirá durante la creación del entorno virtual. No la descargues aún, pero anota el “pull secret” en un bloc de notas o similar.

Si estamos desplegando el entorno en Red Hat Linux, necesitaremos ejecutar estos dos comandos para instalar y activar el NetworkManager:

$ su -c ‘yum install NetworkManager’

$ su -c ‘sytemctl start NetowrkManager’

También añadiremos un usuario no administrador con permisos de sudo, imprescindible para que todo funcione correctamente.

$ useradd crc

$ passwd crc

$ vi /etc/sudoers

## Allow root to run any commands anywhere

root    ALL=(ALL)       ALL

crc     ALL=(ALL)       ALL      

Con este usuario, descargaremos Code Ready Containers y lanzaremos el configurador del entorno.

$ su – crc

$ cd /home/crc/

$ wget https://mirror.openshift.com/pub/openshift-v4/clients/crc/latest/crc-linux-amd64.tar.xz

$ tar -xvf crc*.xz

$ mv crc-linux-1.xxx-amd64/* /home/crc/bin/

$ crc setup

Esto último es un truco necesario para que funcionen correctamente los DNS

$ crc start -n ‘8.8.8’

Al cabo de unos minutos deberías ver este mensaje.

To access the cluster, first set up your environment by following ‘crc oc-env’ instructions.

Then you can access it by running ‘oc login -u developer -p developer https://api.crc.testing:6443’.

To login as an admin, run ‘oc login -u kubeadmin -p dpDFV-xamBW-kKAk3-Fi6Lg https://api.crc.testing:6443‘.

Necesitas configurar una serie de variables de entorno con

$ eval $(crc oc-env)

Ahora puedes registrarte como administrador:

$ oc login -u kubeadmin -p dpDFV-xamBW-kKAk3-Fi6Lg https://api.crc.testing:6443

.. o como desarrollador:

$ oc login -u developer -p developer https://api.crc.testing:6443

Si no tienes entorno gráfico instalado en este servidor, no podrás acceder al entorno web (via crc console), pero puedes usar el Firefox de cualquier otro sistema donde tengas Linux instalado.

Es necesario que copies el contenido de /etc/hosts del servidor donde hayas instalado OpenShift al final de tu fichero local /etc/hosts

A continuación deberás abrir una VPN por ssh desde un entorno de escritorio como Ubuntu hasta el servidor donde hayas desplegado OpenShift

$ sudo apt-get install sshuttle

$ sudo sshuttle -r root@remote-server-ip -x remote-server-ip 0.0.0.0/0 -vv

Y ahora, si abres el navegador y accedes a https://console-openshift-console.crc.testing verás el GUI

 

Si necesitas saber más, tenemos cursos prácticos tanto de Docker y kubernetes como de OpenShift. Consúltanos sin compromiso.