LINUX

Cómo crear Vagrant CentOS 7 usando VirtualBox

Vagrant es una herramienta increíble desarrollada por HashiCorp para crear y configurar entornos de desarrollo ligeros, reproducibles y portátiles construidos sobre la tecnología estándar de la industria y controlados por un único flujo de trabajo consistente para ayudar a maximizar la productividad y la flexibilidad.

Es como un contenedor de alto nivel alrededor de software de virtualización como VirtualBox, VMware, KVM y Linux Containers (LXC), y alrededor de software de gestión de configuración como Ansible, Chef, Salt y Puppet. Vagrant hace que sea mucho más fácil girar máquinas virtuales locales usando VirtualBox. Utiliza el entorno de virtualización e implementa las máquinas virtuales de su elección y administra al usuario para que tenga acceso directo y administre múltiples máquinas virtuales encima.

En este tutorial, aprenderemos cómo crear una caja base de CentOS 7 vagabunda desde cero usando VirtualBox.

1. Instalación de VirtualBox

En primer lugar, descargaremos la última versión, es decir, la caja virtual 4.3.28 para la virtualización de vagrant. Lo descargaremos del Página de descarga oficial de VirtualBox usando nuestro navegador web o podemos usar wget usando terminal. Aquí, estamos ejecutando Ubuntu 14.04 en nuestra máquina host, así que descargaremos el paquete debian para Ubuntu.

# wget http://download.virtualbox.org/virtualbox/4.3.28/virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb

--2015-06-16 17:49:13-- http://download.virtualbox.org/virtualbox/4.3.28/virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb
Resolving download.virtualbox.org (download.virtualbox.org)... 137.254.120.26
Connecting to download.virtualbox.org (download.virtualbox.org)|137.254.120.26|:80... connected.
...
HTTP request sent, awaiting response... 200 OK
Length: 65115674 (62M) [application/x-debian-package]
Saving to: ‘virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb’
100%[===============================>] 65,115,674 36.8MB/s in 1.7s
2015-06-16 17:49:15 (36.8 MB/s) - ‘virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb’ saved

Después de descargar el archivo debian, lo instalaremos usando el administrador de paquetes dpkg.

# dpkg -i virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb

Luego, para arreglar las dependencias requeridas, ejecutaremos el siguiente comando.

# apt-get -f install

2. Instalación de Vagrant

Como estamos ejecutando Ubuntu 14.04 en nuestra máquina host, ahora vamos a descargar la última versión de vagrant ie 1.7.2 de nuestro Página oficial de descarga de Vagrant usando wget o usando nuestro navegador web favorito.

# wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.7.2_x86_64.deb

Después de la descarga, ahora lo instalaremos usando el administrador de paquetes dpkg.

# dpkg -i vagrant_1.7.2_x86_64.deb

Selecting previously unselected package vagrant.
(Reading database ... 117170 files and directories currently installed.)
Preparing to unpack vagrant_1.7.2_x86_64.deb ...
Unpacking vagrant (1:1.7.2) ...
Setting up vagrant (1:1.7.2) ...

3. Preparación de la máquina virtual

Descarga del archivo de imagen CentOS

Como estamos haciendo todo desde cero en este tutorial, crearemos nuestra máquina virtual mediante nuestra propia instalación y configuración en Virtual Box. Entonces, antes de comenzar a configurar la VM, necesitaremos descargar nuestro propio archivo iso centos 7. Podemos descargarlo desde http://mirror.centos.org/centos/7/isos/x86_64/ seleccionando el espejo cercano a nuestro lugar y el archivo de imagen requerido. Aquí, descargaremos la iso mínima de CentOS 7. Ahora que nuestro archivo de imagen iso está listo para funcionar, continuaremos con la creación de la máquina virtual en la caja virtual.

Crear máquina virtual

Ahora, lanzaremos la caja virtual que acabamos de instalar en nuestro sistema operativo host. Luego, haremos clic en Nuevo Botón. Luego le daremos a la máquina virtual un nombre como centos-7 entonces elegiremos Linux en Tipo.

Creación de la máquina virtual Centos 7

Y elige Red Hat (64 bits) como versión. Debajo Tamaño de la memoria, nos vamos RAM a 512 MB como vagabundo tiene la capacidad de cambiarlo.

Asignar memoria

Ahora, seleccionaremos Crea un disco duro virtual ahoray haga clic en Crear. Dejaremos el nombre predeterminado debajo Ubicación del archivo. Luego, establezca el tamaño del archivo del disco duro en 40,00 GB y seleccione VDI (VirtualBox Disk Image) como Tipo de archivo de disco duro.

Creación de disco duro virtual

Entonces seleccionaremos Asignado dinámicamente y haga clic en Crear. Viva. hemos creado con éxito la máquina virtual en nuestra Virtual Box.

Configuración adicional de la máquina virutal

Luego, para una mayor configuración, haremos clic en el nombre de la máquina virtual y haremos clic en Ajustes. Entonces ve al Almacenamiento pestaña y haga clic en Vacío justo debajo Controlador IDE, luego en el lado derecho de la ventana, haga clic en el Icono de CDy seleccione elija un archivo de disco de CD / DVD virtual. Navegue hasta donde el Imagen iso de CentOS 7 se descargó, selecciónelo y haga clic en Abierto. Entonces queremos hacer clic OK para cerrar el Ajustes menú.

Elección de la imagen de Centos 7

4. Instalación de CentOS 7 en una máquina virtual

Finalmente, estamos instalando nuestro CentOS 7 en la máquina virtual que acabamos de crear. El proceso de instalación es bastante simple y es tan fácil como instalar normalmente y se pueden usar la mayoría de las opciones predeterminadas. También puede seguir http://linoxide.com/how-tos/centos-7-step-by-step-screenshots/ para la parte de instalación del sistema operativo.

Ahora, después de que se haya instalado el sistema operativo, configuraremos el sistema operativo para que funcione con Vagrant.

Ahora, abriremos una consola dentro de la máquina virtual e iniciaremos sesión como root.

Como eth0 está deshabilitado por defecto, necesitaremos recuperarlo.

# ifup eth0

Ahora, instalaremos algunos paquetes adicionales como openssh, nano, ntp, curl desde el repositorio usando el administrador de paquetes yum.

# yum install -y openssh-clients nano wget ntp curl

Luego, habilitaremos el servicio ntpd para que se inicie en cada arranque.

# chkconfig ntpd on

Después de eso, queremos establecer la hora del servidor time.nist.gov.

# service ntpd stop

# ntpdate time.nist.gov

# service ntpd start

Ahora, habilitaremos el servicio ssh para que se inicie en el arranque para que podamos entrar en la máquina tan pronto como arranque.

chkconfig sshd on

Deshabilitaremos los servicios iptables e ip45.55.88.66tables para que no se inicien en el arranque.

# chkconfig iptables off

# chkconfig ip6tables off

Luego configuraremos SELinux en permisivo.

# sed -i -e 's/^SELINUX=.*/SELINUX=permissive/' /etc/selinux/config

Después de eso, queremos agregar un nuevo usuario llamado vagrant para que podamos usarlo usando vagrant.

# useradd vagrant

Ahora, crearemos la carpeta .ssh del usuario vagabundo para que las claves ssh y la información se almacenen allí.

# mkdir -m 0700 -p /home/vagrant/.ssh

Si queremos usar nuestra propia clave SSH pública / privada, entonces crearemos una clave SSH pública / privada en nuestra estación de trabajo y copiaremos la clave pública en /home/vagrant/.ssh/authorized_keys en la máquina virtual.

De lo contrario, si queremos usar la clave pública / privada SSH proporcionada por Vagrant, simplemente podemos ejecutar el siguiente comando:

# curl https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub >> /home/vagrant/.ssh/authorized_keys

Ahora, queremos cambiar los permisos en los archivos autorizados_keys para que sean más restrictivos con chmod.

# chmod 600 /home/vagrant/.ssh/authorized_keys

Luego, arreglaremos la propiedad de la carpeta .ssh para el usuario y el grupo vagabundos que usan chown.

# chown -R vagrant:vagrant /home/vagrant/.ssh

Ahora, aquí está el principal cambio importante que debemos hacer, necesitaremos comentar requiretty en / etc / sudoers. Este cambio es importante porque permite a ssh enviar comandos remotos usando sudo. Si esto no se hace, el vagabundo no podrá aplicar cambios al inicio. Esto se puede hacer ejecutando el siguiente comando.

# sed -i 's/^(Defaults.*requiretty)/#1/' /etc/sudoers

Permitiremos que el usuario vagabundo use sudo sin ingresar una contraseña ejecutando el siguiente comando.

# echo "vagrant ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

Entonces abriremos / etc / sysconfig / network-scripts / ifcfg-eth0 y hacer que se vea exactamente como el siguiente

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp

Ahora, quita el reglas de red persistentes de udev archivo usando el comando rm.

# rm -f /etc/udev/rules.d/70-persistent-net.rules

Ahora queremos limpiar yum usando el siguiente comando.

# yum clean all

Ahora, borraremos el tmp directorio y limpiarlo.

# rm -rf /tmp/*

Luego, limpie los últimos registros de usuarios conectados.

# rm -f /var/log/wtmp /var/log/btmp

Limpiaremos la historia.

# history -c

Después de eso, apagaremos la máquina virtual.

# shutdown -h now

Una vez que la máquina virtual esté apagada, haremos clic en Configuración para la máquina virtual. Entonces ve al Almacenamiento pestaña luego seleccione Controlador IDE y haga clic en el cuadrado verde con el icono rojo menos en la esquina inferior derecha de la sección Árbol de almacenamiento de la pestaña Almacenamiento. Luego haga clic en OK para cerrar el menú Configuración. Después de eso, iremos a crear la Vagrant Box.

5. Creando Vagrant Box

Asegúrese de que el valor del base El interruptor de línea de comando coincide con el nombre de la máquina virtual en VirtualBox:

# vagrant package --output centos-7.box --base centos-7

6. Añadiendo la Vagrant Box

Agregue el Vagrant Box recién creado a vagrant (esto copiará el Vagrant Box a otra ubicación):

# vagrant box add centos-7 centos-7.box

Además, la máquina virtual VirtualBox se puede eliminar.

7. Creación de un proyecto Vagrant y configuración de Vagrantfile

Los Proyectos Vagrantes se pueden crear tantos como queramos. Cada uno contendrá diferentes Vagrantfiles que contienen la definición del Vagrant Project y diferentes máquinas virtuales. Para hacerlo, crearemos un directorio llamado vagabundo bajo directorio linóxido para almacenar el Vagrantfile y las máquinas virtuales asociativas.

# mkdir -p ~/linoxide/vagrant

# cd ~/linoxide/vagrant

Ahora, crearemos el Vagrantfile de la siguiente manera.

# vagrant init centos-7

Ahora tenemos un Vagrantfile que apunta al cuadro base centos-7 que acabamos de crear arriba. Si usamos nuestra propia clave SSH privada / pública, y no la clave SSH privada / pública proporcionada por Vagrant, debemos decirle a Vagrantfile dónde encontrar la clave privada SSH. Para hacerlo, necesitaremos agregar lo siguiente dentro del Vagrantfile que acabamos de crear.

# nano Vagrantfile

config.ssh.private_key_path = "~/.ssh/id_rsa"

Si no desea compartir carpetas entre su máquina virtual y el sistema operativo host, simplemente deshabilítelo agregando lo siguiente a su Vagrantfile.

config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", disabled: true

8. Iniciando Vagrant

Ahora, como hemos realizado todos los pasos anteriores por completo, finalmente queremos ejecutar nuestra primera máquina virtual vagabunda de fábrica. Para ejecutar nuestra máquina virtual vagabunda con el sistema operativo centos 7, solo necesitaremos ejecutar el siguiente comando.

# vagrant up

Si todo salió bien como se esperaba, deberíamos poder ver nuestro cuadro de vagabundo en ejecución mientras ejecutamos el comando de estado de vagabundo.

# vagrant status

Si queremos entrar en la caja vagabundo y queremos controlar la máquina virtual, simplemente ejecutaremos vagrant ssh

# vagrant ssh

Una vez que hayamos terminado con nuestro trabajo y queramos eliminar o destruir nuestra caja virtual vagabunda en ejecución, simplemente podemos ejecutar vagrant destroy que lo destruirá.

# vagrant destroy

Conclusión

Finalmente, hemos creado nuestra caja Vagrant ejecutando CentOS 7 desde cero usando Virtual Box. Este artículo nos facilita la creación de una caja de Vagrant si ya tiene un archivo de imagen de centos 7, un DVD o una máquina virtual y no quiere descargar la imagen de una caja de centos 7 para vagrant. Este método también le ayuda a crear una caja Vagrant si no tiene una conexión a Internet disponible en ese momento, pero tiene una imagen o un DVD de CentOS 7.

El tutorial anterior es realmente una guía simple y fácil de hacer para crear nuestra caja base vagrant centos 7 desde cero, incluso podemos crear vagrant box de cualquier distribución de Linux con pasos similares anteriores. Por lo tanto, si tiene alguna pregunta, comentario o retroalimentación, escriba en el cuadro de comentarios a continuación y háganos saber qué cosas deben agregarse o mejorarse.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar