Post Top Ad

Your Ad Spot

viernes, 9 de octubre de 2020

Introducción a VirtualBox y Vagrant


Comencemos con VirtualBox y Vagrant para crear entornos de desarrollo. Esta es una advertencia justa: si decide aventurarse por este camino, definitivamente está ingresando al mundo en toda regla conocido por los piratas informáticos como DevOps. DevOps es donde los sueños van a morir. Aquí en Vegibit, hemos tendido a centrarnos en los aspectos divertidos del desarrollo web. Cosas como crear HTML, programar PHP, programar JavaScript y jQuery, diseñar diseños y jugar con marcos de pila completos como Laravel, Yii y Codeigniter. DevOps es un juego de pelota completamente diferente. Gran parte de este conocimiento es el precursor para empezar a trabajar con Laravel Homestead. Sin embargo, si eres nuevo en VirtualBox o Vagrant, hazte un favor y evita la granja por ahora. Primero aprenda los conceptos básicos, pronto verá por qué.


¿Qué es DevOps?

Piensa en DevOps de esta manera. Quieres crear un sitio web, pero sabes que hay bastantes pasos. Podría verse algo como esto.

Objetivo: desarrollar un sitio web.

  • 1. Elija el idioma.
  • 2. Elija el tipo de servidor.
  • 3. Elija el marco de backend.
  • 4. Elija el marco frontend.
  • ...
  • 50. Escribe algo de HTML.

Como puede ver, tenemos muchos pasos para crear un sitio web, ¡y la mayoría de ellos ni siquiera tienen que ver con la creación real del sitio! Bueno, la gente de DevOps es responsable de los pasos 1 a 49. De hecho, en el escenario más probable, y especialmente si trabajas para alguien que no entiende estas cosas, o eres un fenómeno autónomo de una sola persona, DevOps es simplemente parte de lo que haces como desarrollador web. Guau. ¿No te alegra haber decidido dedicarte al desarrollo de sitios web?


La virtualización es una inversión

Toda esta tecnología gira en torno a la virtualización. La virtualización es la palabra de moda de nuestra generación y, aparentemente, todo en la informática se puede virtualizar. Se han creado negocios y paradigmas completamente nuevos sobre la base de la virtualización. Piense en cosas como VMWare, instancias EC2, alojamiento de AWS, alojamiento en Rackspace o incluso cosas como VoIP alojado o varias ofertas de software empresarial SAAS como servicio. Todas estas cosas se ejecutan como máquinas virtualizadas que se ejecutan en la nubeLa virtualización es buena para la consolidación de la infraestructura, las pruebas, la recuperación ante desastres y la ejecución de varios sistemas operativos en la misma máquina al mismo tiempo. Todas las carreras se basan en nada más que ser un experto en virtualización, por lo que si algo de esto parece un poco abrumador al principio, no hay necesidad de preocuparse. Aprender estas cosas requiere una gran inversión de tiempo, y para ser bueno en estas cosas se requiere una inversión inicial y luego práctica continua con el uso diario en su flujo de trabajo. Con suerte, esta guía introductoria a la virtualización, VirtualBox y Vagrant ayudará con esto. Para obtener una descripción general más completa de la virtualización, consulte el Manual de VirtualBox para obtener información excelente.


¡Cuidado con VirtualBox y los sistemas operativos Windows!

Ahora vamos a ponerle goma a la carretera. De hecho, vamos a comenzar a instalar todo esto en un nuevo Lenovo T440s con unidades SSD, mucha memoria y ciclos de CPU, Windows 7 y todas las campanas y silbidos. Básicamente, un ultrabook realmente agradable o la versión WinTel de algo como un Macbook Pro. Con tal hardware instalado, ¿qué podría salir mal?

La matriz

Entonces, ¿qué tiene que ver la matriz con esto? Bueno, si recuerdas (y si no has visto The Matrix, deja de leer ahora) en el Matrix original, Neo tiene la oportunidad de descubrir qué es real frente a qué es una ilusión. La ilusión por supuesto es Matrix, nada más que un mundo virtual creado por máquinas. Neo puede elegir entre una pastilla roja o azulEl azul es la feliz ignorancia de la ilusión, mientras que el rojo es la dolorosa verdad de la realidad. Al comenzar con Virtualization, VirtualBox y Vagrant, es posible que se enfrente a una elección similar. Para mí, la virtualización me pareció maravillosa y tentadora. Sin embargo, como en Matrix, sabía que algo simplemente no se sentía bien. Este algo es lo que me hizo decidir que era hora de tomar la píldora roja y descubrir qué hay realmente detrás del telón de la virtualización.

La historia de la virtualización de Blue Pill

La versión de la píldora azul de la configuración de estas herramientas es realmente una historia maravillosa, aunque una ilusión. Es algo parecido a esto.

“¡Todo lo que tienes que hacer es instalar VirtualBox y Vagrant en tu máquina! ¡Es tan increíble! ¡Ahora tenemos los entornos de desarrollo ideales! Ok, ¿instalaste Vagrant? ¡Todo lo que tienes que hacer es escribir vagrant upy tu vida ahora es perfecta! "

¡Santo cielo! ¡Necesito poner mis manos en esta combinación de Vagrant VirtualBox de la que hablas! ¡No puedo esperar para empezar!

La píldora roja de la virtualización

Amigo, ahora trabaja en DevOps. No trabajas en Ventas y Marketing donde se hacen promesas y la vida es perfecta. No, como buen técnico, siempre optas por la píldora roja. Debes enfrentar la dolorosa realidad y la verdad de hacer que las cosas inconexas funcionen todos los días. Siempre hay problemas. Inconsistencias. Loco. Software Beta. Software antiguo, que todavía apesta. Hardware con poca potencia. No importa, porque usted es el Macgyver moderno de DevOps, convirtiendo ideas terribles con fondos insuficientes en maravillosos activos funcionales para la empresa. Usted es un héroe. Con eso en mente, ahora exploraremos la dolorosa verdad de hacer que todo funcione.

Instalar Virtual Box

Ok, primero parece que necesitamos una copia de virtualBox. Parece que podemos hacerlo aquí, así que hagámoslo. En el momento de escribir este artículo, parece que 4.3.20 es la versión actual. Iremos con eso.

Instalar Git con Git Bash

Necesitaremos crear una clave SSH y una buena terminal para trabajar. Git Bash es perfecto para esto, y todo lo que tenemos que hacer es visitar este sitio para descargarlo ahora.

Instalar Vagrant

Ahora podemos instalar la gran herramienta Vagrant. Simplemente visite su sección de descargas y descargue el instalador.

Ejecutando los instaladores

Si hay algo que no puedo soportar, es agregar un nuevo software a una PC nueva, de funcionamiento súper rápido y limpia. Conoces el sentimiento, “¿algo se va a romper? ¿Se ralentizarán las cosas? ¿Se romperá algo que no sepa, solo para descubrir algún tipo de problema semanas después que afecte mi trabajo diario? " No importa. Debemos seguir adelante frente al miedo. Ejecute todos los paquetes de instalación de software enumerados anteriormente y muévase con valentía al mundo de la virtualización por sí mismo.

Hell Begins
Ok, en este punto, probablemente necesitemos reiniciar la PC. Uno o más de los instaladores anteriores lo están solicitando, así que hagámoslo ahora. Cierre todos los programas abiertos, guarde los archivos abiertos, reinicie.

Perfecto. Estamos de regreso. Ahora podemos simplemente escribir dos comandos en la terminal de acuerdo con la documentación, y estamos listos para comenzar. Primero que nada, ¿qué terminal? ¿Es este el símbolo del sistema de Windows? ¿Estamos usando masilla para esto? ¿Qué pasa con Git Bash? Para esto, queremos usar Git Bash. Busque el programa en su lista de programas instalados y ejecútelo. Ahora, suponiendo que haya colocado su instalación de Vagrant C:vagrant, querremos acceder a ese directorio desde Git Bash de esa manera.

$ cd c:/vagrant

Ahora ejecutemos esos comandos.

$ vagrant init hashicorp/precise32

Se Vagrantfileha colocado A en este directorio. ¡Ahora está
listo para vagrant upsu primer entorno virtual! Lea
los comentarios en Vagrantfile, así como la documentación
vagrantup.compara obtener más información sobre el uso de Vagrant.

Se ve bien. Probemos al vagabundo infamemente fácil.

$ vagrant up

Trayendo la máquina 'por defecto' con el proveedor 'virtualbox'…
==> por defecto: Importando el cuadro base 'hashicorp / exact32'…
==> por defecto: Dirección MAC coincidente para redes NAT…
==> por defecto: Marcando la casilla 'hashicorp / exact32 'está actualizado…
==> predeterminado: configurando el nombre de la VM: vagrant_default_1419987513948_16273
==> predeterminado : borrando cualquier interfaz de red previamente configurada…
==> predeterminado: preparando interfaces de red según la configuración…
predeterminado: adaptador 1: nat
= => predeterminado: puertos de reenvío…
predeterminado: 22 => 2222 (adaptador 1)
==> predeterminado: arrancando VM…

Han pasado cinco minutos. ¿Se supone que debe permanecer en Booting VM durante tanto tiempo? Oh, espera, aquí tienes un bonito mensaje de error.

¡Actualice la BIOS!

¡Ah, ja! Debo haber olvidado actualizar la BIOS en esta PC con Windows. Mencionó en algún lugar u otro que podríamos necesitar habilitar la virtualización en la BIOS. ¿Cómo volvemos a hacer eso? No me meto con la BIOS muy a menudo. Oh, sí, reiniciemos y sigamos presionando la tecla Enter hasta que escuchemos pitidos que indican que hemos detenido el proceso de inicio normal. Perfecto, ahora elija F1 para la configuración de BIOS, flecha hacia la derecha varias veces hasta que presionemos el menú de seguridad, flecha hacia abajo hasta llegar a la virtualización, luego elija F10 para guardar y arrancar.

¡Si! No puedo esperar para probar mi nueva virtualización. Ahora que hemos vuelto a arrancar, intentemos con nuestro vagabundo de nuevo.

$ vagrant up

Trayendo la máquina 'por defecto' con el proveedor 'virtualbox'…
==> por defecto: Importando el cuadro base 'hashicorp / exact32'…
==> por defecto: Dirección MAC coincidente para redes NAT…
==> por defecto: Marcando la casilla 'hashicorp / exact32 'está actualizado…
==> predeterminado: configurando el nombre de la VM: vagrant_default_1419987513948_16273
==> predeterminado : borrando cualquier interfaz de red previamente configurada…
==> predeterminado: preparando interfaces de red según la configuración…
predeterminado: adaptador 1: nat
= => predeterminado: puertos de reenvío…
predeterminado: 22 => 2222 (adaptador 1)
==> predeterminado: arrancando VM…

Pulgares retorcidos. Hmm, seguro que parece que todavía está tardando mucho. Oh, espera, aquí vamos, más mensajes de error. Parece que son los mismos que antes. ¿Que? ¿Qué está mal? Oh, espera, noté que había dos opciones para la virtualización en la BIOS. Hubo la tecnología de virtualización Intel R y la función Intel R VT-d. Solo habilitamos el primero. Habilitemos el segundo por si acaso, quiero decir, ¿qué más podría estar saliendo mal? Ok, guarda todos los archivos abiertos, cierra los programas abiertos, reinicia la PC ...

Estamos empezando a arrancar, ¡pulsa el botón de retorno varias veces! Ahora escuchamos pitidos: el proceso de arranque se detiene. Modifiquemos la BIOS nuevamente. Presione F1, flecha hacia Seguridad, flecha hacia abajo hasta Virtualización, esta vez elija Función Intel R VT-d y configúrela como habilitada. Seleccione F10 para guardar y arrancar. Perfecto. Un par de contratiempos, pero vamos camino del Nirvana de la virtualización.

Y estamos de regreso. Sigamos adelante e intentemos con un vagabundo una vez más.

$ vagrant up

Trayendo la máquina 'por defecto' con el proveedor 'virtualbox'…
==> por defecto: Importando el cuadro base 'hashicorp / exact32'…
==> por defecto: Dirección MAC coincidente para redes NAT…
==> por defecto: Marcando la casilla 'hashicorp / exact32 'está actualizado…
==> predeterminado: configurando el nombre de la VM: vagrant_default_1419987513948_16273
==> predeterminado : borrando cualquier interfaz de red previamente configurada…
==> predeterminado: preparando interfaces de red según la configuración…
predeterminado: adaptador 1: nat
= => predeterminado: puertos de reenvío…
predeterminado: 22 => 2222 (adaptador 1)
==> predeterminado: arrancando VM…

Todavía es un poco lento aquí. Hombre, estas máquinas virtuales tardan mucho en arrancar. ¡¿QUÉ 3UC! @ ... ¡¿QUÉ PASA CON ESTOS MENSAJES DE ERROR ?!

Proceda a Google. Google cualquier cosa y todo lo relacionado con las máquinas virtuales que no se inician con VirtualBox y Vagrant.

Ah, ja, puede que haya visto algo. Parece que esos Microsoft cometieron un error. Parece que lanzaron una actualización, KB3004394, que rompe un montón de cosas, y esta es una de ellas. Afortunadamente, han lanzado un parche para solucionar este problema aquí mismoIncreíble. Sin daño, sin falta. Hemos tenido algunos problemas, pero si instalamos este pequeño y agradable parche de Windows, finalmente podremos ponernos en marcha con Vagrant y VirtualBox en nuestro Windows Box. Ok, descargamos la actualización como ejecutable .exe y la ejecutamos. Hmm, eso fue fácil, en realidad no pasó nada. Bueno, está instalado, debemos estar listos, vamos a vagar.

$ vagrant up

Trayendo la máquina 'por defecto' con el proveedor 'virtualbox'…
==> por defecto: Importando el cuadro base 'hashicorp / exact32'…
==> por defecto: Dirección MAC coincidente para redes NAT…
==> por defecto: Marcando la casilla 'hashicorp / exact32 'está actualizado…
==> predeterminado: configurando el nombre de la VM: vagrant_default_1419987513948_16273
==> predeterminado : borrando cualquier interfaz de red previamente configurada…
==> predeterminado: preparando interfaces de red según la configuración…
predeterminado: adaptador 1: nat
= => predeterminado: puertos de reenvío…
predeterminado: 22 => 2222 (adaptador 1)
==> predeterminado: arrancando VM…

Este POS todavía no funciona. ¡VA A HABER PROBLEMAS ALREDEDOR DE AQUÍ SI NO HACEMOS QUE ESTE FUNCIONAMIENTO!

Bueno, pensemos en esto. El sitio web de Microsoft dijo que podríamos o no necesitar reiniciar una vez que se haya instalado el parche. Sabes, no reiniciamos. Quizás ese sea el problema. Reiniciemos nuevamente para asegurarnos de que el parche se haya ejecutado. Cierre todos los archivos abiertos, guarde su trabajo. Cierre todos los programas abiertos. Reiniciar.

...

Y estamos una vez más vivos. Qué proceso. No ha sido fácil, pero esto seguramente nos arreglará ahora que tenemos el parche instalado Y reiniciamos la PC una vez más para una medida segura. Es tiempo errante bebé.

$ vagrant up

Trayendo la máquina 'por defecto' con el proveedor 'virtualbox'…
==> por defecto: Importando el cuadro base 'hashicorp / exact32'…
==> por defecto: Dirección MAC coincidente para redes NAT…
==> por defecto: Marcando la casilla 'hashicorp / exact32 'está actualizado…
==> predeterminado: configurando el nombre de la VM: vagrant_default_1419987513948_16273
==> predeterminado : borrando cualquier interfaz de red previamente configurada…
==> predeterminado: preparando interfaces de red según la configuración…
predeterminado: adaptador 1: nat
= => predeterminado: puertos de reenvío…
predeterminado: 22 => 2222 (adaptador 1)
==> predeterminado: arrancando VM…

Ni siquiera puedo hablar. Todavía está roto.

Volver a Google. Es hora de buscar en Google la vida de este problema.

...

15 búsquedas de Google más tarde. Puede que hayamos encontrado algo. Algunos usuarios informan problemas con varias máquinas con Windows que inician máquinas virtuales utilizando la compilación 4.3.20 de VirtualBox. Algunos incluso han informado de que hacer retroceso a una compilación anterior puede ayudar. Ok, suena razonable, desinstalemos el VirtualBox actual, para que luego podamos instalar la versión anterior de VirtualBox que es 4.3.18. Esto realmente ha sido una mierda, pero estoy seguro de que solucionará las cosas para que finalmente podamos comenzar a trabajar con nuestras nuevas máquinas virtuales. Desinstalemos VirtualBox, de acuerdo, Windows pregunta si realmente queremos hacer esto, y si permitimos que Oracle Corporation modifique la máquina, claro, desinstalemos.

...

Diez minutos tarde…

Este programa de desinstalación de POS se ha bloqueado. Déjame cancelarlo. ¿¡Que!? "Otro programa está intentando instalar un programa, espere a que finalice el otro proceso"

Tengo esto. ctrl alt delete, encuentra la tarea de VirtualBox y termina con ese tonto. Ok, estoy haciendo clic en FINALIZAR TAREA, pero el proceso aún se está ejecutando. Bien, hagamos clic en FINALIZAR TAREA 10 veces seguidas. No El proceso aún se está ejecutando. VirtualBox se ha apoderado de mi PC. Simplemente reinicie la PC e intente nuevamente. Inicio-> Apagar…

5 minutos después ... El texto "Apagando PC" ha estado en la pantalla por más de 10 minutos. Excelente. Ahora ni siquiera puedo apagar este POS PC. Mantén pulsado el botón de encendido hasta que toda la vida abandone esta maldita máquina. Finalmente. Encienda de nuevo. Ahora estamos viendo la advertencia de que es posible que Windows no se haya cerrado correctamente y es posible que debamos comenzar en modo seguro y escanear algunos archivos para verificar su integridad. Sí, eso no está sucediendo. Elija la opción Iniciar ventanas normalmente. Intente desinstalar VirtualBox una vez más. ¡¡Si!! ¡Funcionó! Pudimos desinstalar VirtualBox 4.3.20. ¡Sigamos adelante e instalemos esta práctica versión 4.3.18 de VirtualBox y COMIENCE ESTA FIESTA DE VIRTUALIZACIÓN!

Ahora que tenemos 4.3.18 instalado y reiniciamos la PC más veces de las que puedo contar, estoy seguro de que ahora estaremos funcionando perfectamente con la virtualización una vez que simplemente escribamos vagrant up.

$ vagrant up

Te ahorraré el dolor. La basura todavía no funciona. Volver a Google.

...

15 minutos despues…

Podríamos haber encontrado algo. Estoy leyendo que desde 4.3.14 para VirtualBox, ha habido varios problemas con el arranque de máquinas virtuales debido a varios problemas de seguridad y posibles conflictos antivirus. Ni siquiera estoy seguro de poder intentarlo más. Llevamos varias horas metidos en este lío. Le daré una oportunidad más. Descarguemos la versión 4.3.12 de mayo de 2014 e intentemos nuevamente. ¿Qué podríamos tener que perder? Quiero decir, este día se filmó de todos modos, así que ...

Todo está instalado. Vagrant está instalado. VirtualBox 4.3.12 está instalado. Estoy cansado, pero continuaré. Me erguiré una vez más.

Funcionó. Finalmente.

caja virtual

Conclusión

Chicos, esta fue solo una publicación divertida para despotricar como un loco por diversión. De hecho, creo en las virtudes de la virtualización y la nueva forma de hacer las cosas con Vagrant y VirtualBox. Voy a mantener los ojos bien abiertos en el sitio web de VirtualBox en busca de actualizaciones, ya que claramente hay algo mal con Windows y VirtualBox en la versión 4.3.20. Mientras tanto, usaremos 4.3.12. ¡Espero que hayas encontrado esta perorata cómica!


No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

outbrain

Páginas