CoreOS es un poderoso medio para agrupar contenedores. Sin embargo, implementar esta plataforma como una máquina virtual no es tan sencillo como se podría pensar. Así es como funciona el proceso.
Contenedores. ¿Necesito decir más? Probablemente no, pero lo haré de todos modos.
Si no ha oído hablar de CoreOS, se lo está perdiendo. CoreOS es un sistema operativo ligero y de código abierto diseñado para proporcionar la plataforma necesaria para la implementación de contenedores en clúster, a la vez que se centra en la automatización, la facilidad de implementación de aplicaciones, la seguridad, la fiabilidad y la escalabilidad. Un factor que hace que CoreOS sea tan atractivo para las empresas es su seguridad. CoreOS fue diseñado de tal manera que sólo se puede acceder a él a través de la autenticación de clave ssh. De hecho, la imagen ISO de inicio se crea con una unidad de configuración que contiene la clave ssh. Eso es importante. También debería indicar que el proceso de implementación de una máquina virtual para CoreOS no es exactamente tan sencillo como en otras plataformas.
Permítanme explicarles el proceso de implementación de CoreOS como una máquina virtual dentro de VirtualBox. Al final, sólo podrá iniciar sesión en esa máquina virtual a través de una máquina que contenga su clave pública ssh. ¿Está listo para escribir a máquina? Abra un terminal en su máquina Linux y hagámoslo.
Creación del disco virtual
Lo primero que vamos a hacer es crear un nuevo directorio que contenga algunos archivos. Emita el comando mkdir -p /data/VirtualBox/Templates. Ahora cambie a ese directorio recién creado con el comando cd /data/VirtualBox/Templates.
NOTA: Puede crear cualquier directorio que necesite o incluso utilizar un directorio ya existente.
Debemos descargar un práctico script que simplificará enormemente la creación de nuestro archivo VDI. Agarra dicho script con el comando:
wget https://raw.githubusercontent.com/coreos/scripts/master/contrib/create-coreos-vdi
Dar a ese comando permisos ejecutables con el comando chmod +x create-coreos-vdi.
VER: Informe especial: La decisión sobre el cloud v. data center (PDF gratuito) (ConsejoTecnologico.com)
VER: Por qué los contenedores son críticos para el éxito de los proyectos DevOps (Tech Pro Research)
Creación de la imagen
Ahora vamos a crear una imagen, basada en el canal estable de CoreOS. Para ello, ejecute el comando:
./create-coreos-vdi -V estable
Una vez que ese comando se complete (toma algún tiempo y puede parecer que se ha estancado, pero no lo ha hecho), tendrás el archivo coreos_production_XXX.vdi (donde XXX es el número de versión.
Lecturas imprescindibles del centro de datos
Creación de la unidad config
Este siguiente paso es donde creamos una unidad de configuración que contendrá nuestras claves ssh, para la autenticación. Esto requiere que usted ya tenga una clave ssh creada. Si no lo hace, el proceso es un simple comando ssh-keygen -t rsa. Asegúrese de guardar la llave con el nombre y la ubicación predeterminados.
Con esa clave en su lugar, necesita descargar otro script con el comando:
wget https://raw.github.com/coreos/scripts/master/contrib/create-basic-configdrive
Déle a ese script permisos ejecutables con el comando chmod +x create-basic-configdrive y luego ejecute el comando con:
./create-basic-configdrive -H mycore -S ~/.ssh/id_rsa.pub
En lugar de mycore, puedes ponerle el nombre que quieras. Sólo recuerda el nombre, ya que lo usarás en un momento. El comando anterior creará una ISO que configurará su máquina virtual para que acepte su clave ssh para la autenticación.
Redimensionar su máquina virtual
Lo que tenemos hasta ahora es el coreos_production_XXX.vdi (el archivo que usaremos para construir la máquina virtual) y el mycore.iso (la imagen que aplicaremos que contiene la información de configuración de la clave ssh.
Lo primero que vamos a hacer es clonar la imagen vdi (querrá basar todas sus implementaciones CoreOS en esto. Emita el siguiente comando:
VBoxGestionar clonehd coreos_production_XXX.vdi mycore.vdi
Donde XXX es el número de liberación.
NOTA: Puede nombrar el archivo.vdi resultante a lo que necesite.
A continuación necesitamos redimensionar el disco virtual con el comando:
VBoxManage modifica mycore.vdi --resize 20000
Puede cambiar el tamaño de ese archivo vdi para que se ajuste a sus necesidades.
Despliegue de la máquina virtual
Ahora continúe con el proceso de creación de la máquina virtual VirtualBox de la forma habitual. Aquí sólo hay una diferencia. Una vez que haya creado la máquina virtual, debe adjuntar el archivo mycore.iso. Para ello, abra la sección Configuración de su máquina virtual CoreOS recién creada y haga clic en la sección Almacenamiento. Seleccione la sección Controlador: IDE, haga clic en el botón + y, desde la ventana emergente, haga clic en el botón + para Agregar unidad óptica. Luego localizará y seleccionará el archivo mycore.iso (.
También deberá asegurarse de configurar la conexión en red de su VM a un adaptador puenteado (de lo contrario, no podrá acceder a la VM desde su red.
Arranque e inicio de sesión
En este punto, inicie su máquina virtual CoreOS. Cuando finalmente arranque, se le presentará la dirección IP de la máquina virtual. Vaya a su equipo que contiene la clave ssh pública utilizada para la unidad de configuración e inicie sesión con ssh core@SERVER_IP (donde SERVER_IP es la dirección del servidor. No se le pedirá una contraseña, porque CoreOS está usando su clave ssh para la autenticación . Sólo las máquinas con esa clave podrán iniciar sesión en la máquina virtual.
Vale la pena la molestia
Usted podría pensar que esto es un medio demasiado complicado para crear una máquina virtual, pero CoreOS vale la pena. Con la seguridad de saber que sólo se puede iniciar sesión desde máquinas específicas, puede controlar mejor quién obtiene acceso y quién puede gestionar sus despliegues de contenedores.
Boletín de noticias de Data Center Trends
DevOps, virtualización, la nube híbrida, el almacenamiento y la eficiencia operativa son sólo algunos de los temas del centro de datos que destacaremos. Entregado Lunes y Miércoles