Diferencia entre revisiones de «Virtualización con libvirt»
(→Paso 2: Instalación de paquetes necesarios) |
(→Paso 3: Configuración la imagen de Ubuntu con cloud-init) |
||
Línea 47: | Línea 47: | ||
= Paso 3: Configuración la imagen de Ubuntu con cloud-init = | = Paso 3: Configuración la imagen de Ubuntu con cloud-init = | ||
− | Para configurar la imagen de Ubuntu cloud, hay que crear un fichero de configuración | + | Para configurar la imagen de Ubuntu cloud, hay que crear un fichero de configuración para la herramienta '''cloud-init'''. |
− | Este fichero siempre | + | Este fichero empieza siempre por la línea #cloud-config y se estructura en formato yaml. |
== Paso 3.1: Configurar usuario y contraseña para login == | == Paso 3.1: Configurar usuario y contraseña para login == |
Revisión del 11:30 6 ago 2019
Para la realización de esta práctica necesitará de una imagen de Ubuntu Cloud que descargaremos de https://cloud-images.ubuntu.com/ y necesitaremos un sistema anfitrión con Ubuntu 18.04.
En esta práctica se emplearán la imagen descargada de la web Ubuntu Cloud y se hará uso de la herramienta cloud-init para configurarla.
Contenido
- 1 Paso 1: Descarga de la imagen Ubuntu Cloud
- 2 Paso 2: Instalación de paquetes necesarios para entorno de virtualización libvirt
- 3 Paso 3: Configuración la imagen de Ubuntu con cloud-init
Paso 1: Descarga de la imagen Ubuntu Cloud
Entramos en https://cloud-images.ubuntu.com/ y descargamos la imagen de Ubuntu 18.04 LTS (Long Time Support).
Puedes descargarla directamente con la orden wget:
wget https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img
si comenzó a descargar verás una salida similar a esta:
-2019-08-06 12:26:26-- https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img
Resolviendo cloud-images.ubuntu.com (cloud-images.ubuntu.com)... 91.189.88.89, 2001:67c:1560:8001::8001
Conectando con cloud-images.ubuntu.com (cloud-images.ubuntu.com)[91.189.88.89]:443... conectado.
Petición HTTP enviada, esperando respuesta... 200 OK
Longitud: 343474176 (328M) [application/octet-stream]
Grabando a: “bionic-server-cloudimg-amd64.img”
bionic-server-cloudimg-amd64.img. 0%[ ] 2,21M 472KB/s eta 14m 6s
Espera hasta que la imagen esté descargada al 100%.
Paso 2: Instalación de paquetes necesarios para entorno de virtualización libvirt
Esta práctica requiere de los siguientes paquetes que estén instalados en el sistema anfitrión:
- virt-manager: interfaz gráfica para la gestión de hipervisores.
- cloud-init: herramienta para configurar una imagen de Ubuntu cloud.
- cloud-image-utils: esta herramienta es complementaria a cloud-init y sirve para modificar imágenes de Ubuntu cloud.
Podemos instalar estos paquetes con la herramienta apt desde el intérprete de órdenes:
sudo apt install cloud-init cloud-image-utils virt-manager
En los ordenadores del aula de prácticas estos paquetes ya estarán preinstalados, con lo que puedes saltarte este paso.
Paso 3: Configuración la imagen de Ubuntu con cloud-init
Para configurar la imagen de Ubuntu cloud, hay que crear un fichero de configuración para la herramienta cloud-init.
Este fichero empieza siempre por la línea #cloud-config y se estructura en formato yaml.
Paso 3.1: Configurar usuario y contraseña para login
Para añadir una contraseña y permitir el acceso por ssh con este usuario hay que crear el fichero de configuración cloud.cfg para la herramienta cloud-init:
#cloud-config password: qwerty123 chpasswd: { expire: False } ssh_pwauth: True
Por defecto, el usuario es ubuntu.
Una vez añadida esta configuración, podemos configurar la imagen para que apliquen estos cambios con el siguiente comando:
cloud-localds bionic-server-cloudimg-amd64.img cloud.cfg
De esta forma, al entrar por ssh, necesitaremos poner la contraseña del usuario:
ssh ubuntu@IP # Esto nos pedirá nuestra contraseña de usuario
Paso 3.2: Configurar de acceso ssh con clave pública
Este paso es opcional, si quieres configurar el acceso con clave pública ssh, tienes que generar el par de claves pública y privada.
ssh-keygen # Generará clave pública/privada para la autenticación
cat ~/.ssh/id_rsa.pub # Mostrará nuestra clave pública generada
La configuración del fichero cloud.cfg resultaría la siguiente:
#cloud-config users: - name: practica ssh-authorized-keys: - ssh-rsa AA... miusuario@nombremaquina sudo: ALL=(ALL) NOPASSWD:ALL groups: sudo shell: /bin/bash
ssh practica@IP # No nos pedirá clave de usuario
Paso 3.3: Configurar hostname y un id de instancia
#cloud-config instance-id: my-instance-id local-hostname: my-hostname
Configurar repositorio: añadir e instalar paquetes
Ejecutar comandos al iniciar
Crear VM utilizando virt-manager
copiar volumen de cloud-init e imagen de ubuntu a /var/lib/libvirt/images/ https://gist.github.com/shettyg/455ff78605ea4c45febe7b5aa345c87d
Configuración de virt-manager
abrir virt-manager y crear VM
Buscar ip local de la VM para conectarnos por ssh
buscar ip máquina https://www.cyberciti.biz/faq/find-ip-address-of-linux-kvm-guest-virtual-machine/