bytes.cat

La wiki d'FP d'informàtica

Eines de l'usuari

Eines del lloc


vagrant

Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
vagrant [2023/05/14 15:13]
enric_mieza_sanchez [Accedint els serveis]
vagrant [2025/10/22 15:00] (actual)
enric_mieza_sanchez [Exercici 4]
Línia 20: Línia 20:
 Recordeu que Vagrant no virtualitza, sinó que automatitza tasques amb algun virtualitzador //provider//. Per tant, caldrà que tinguem instal·lat VirtualBox, VMware o similars. En GNU/Linux el més fàcil és instal·lar VirtualBox: Recordeu que Vagrant no virtualitza, sinó que automatitza tasques amb algun virtualitzador //provider//. Per tant, caldrà que tinguem instal·lat VirtualBox, VMware o similars. En GNU/Linux el més fàcil és instal·lar VirtualBox:
   $ sudo apt install virtualbox   $ sudo apt install virtualbox
 +
 +<WRAP important>
 +Es recomana utilitzar una màquina física Ubuntu 22.04 (LTS) amb
 +  * VirtualBox 7.0 (no és el de la versió dels repositoris de Ubuntu 22.04, cal anar a virtualbox.org)
 +  * Instal·lar Vagrant segons les [[https://developer.hashicorp.com/vagrant/downloads?ajs_aid=5466580f-2ad1-4fc6-812e-d32380b97335&product_intent=vagrant|indicacions de la web oficial vagrantup.com]], amb els seus propis repositoris APT.
 +
 +</WRAP>
 +
  
 \\ \\
Línia 95: Línia 103:
  
 ===== Exercicis ===== ===== Exercicis =====
 +==== Exercici 1 ====
 <WRAP todo> <WRAP todo>
-==== Exercici 1 ==== 
 Investiga com utilitzar aquestes comandes bàsiques: Investiga com utilitzar aquestes comandes bàsiques:
   vagrant halt   vagrant halt
Línia 104: Línia 112:
 </WRAP> </WRAP>
  
-<WRAP todo> 
 ==== Exercici 2 ==== ==== Exercici 2 ====
 +<WRAP todo>
 Cerca informació per configurar: Cerca informació per configurar:
   - El //hostname// de la màquina virtualitzada (anomena-la, per exemple, "zeus").   - El //hostname// de la màquina virtualitzada (anomena-la, per exemple, "zeus").
Línia 113: Línia 121:
 </WRAP> </WRAP>
  
-<WRAP todo> 
 ==== Exercici 3 ==== ==== Exercici 3 ====
 +<WRAP todo>
 Cerca informació del //provider// VirtualBox i modifica el ''Vagrantfile'' adequadament per: Cerca informació del //provider// VirtualBox i modifica el ''Vagrantfile'' adequadament per:
   - Eliminar la interfície gràfica.   - Eliminar la interfície gràfica.
Línia 122: Línia 130:
 </WRAP> </WRAP>
  
 +==== Exercici 4: Apache, PHP i userdir ====
 <WRAP todo> <WRAP todo>
-==== Exercici 4 ==== 
 Fes un Vagrantfile que crei una màquina amb les següents característiques: Fes un Vagrantfile que crei una màquina amb les següents característiques:
   - Debian darrera versió.   - Debian darrera versió.
-  - Que s'anomeni **"gaspache"** com a //hostname// i també com a nom de màquina en el VirtualBox.+  - Que tingui com a //hostname// el teu nom i també com a nom de màquina en el VirtualBox.
   - Amb un Apache i PHP preinstal·lat.   - Amb un Apache i PHP preinstal·lat.
   - Que redirigeixi el port 80 de la web d'Apache al port 9090 de la màquina //host//.   - Que redirigeixi el port 80 de la web d'Apache al port 9090 de la màquina //host//.
Línia 135: Línia 143:
 </WRAP> </WRAP>
  
 +==== Exercici 5: Wordpress ====
 +<WRAP todo>
 +Volem fer proves amb Wordpress i automatitzarem la configuració del servei en una VM amb Vagrant.
 +
 +Requeriments:
 +
 +  - El Wordpress ha de ser la darrera versió en català.
 +  - Ha d'estar preinstal·lat amb les taules creades i un usuari vagrant/vagrant.
 +  - El nom del blog ha de ser "El meu blog vagrant".
 +  - Ha de permetre que es carreguin imatges.
 +
 +Es recomana seguir aquest guió per al script del Vagrantfile:
 +
 +  - Instal·lar dependències (apache, mariadb, etc.).
 +  - Crear usuari, bd i permisos a mariadb.
 +  - Descarregar arxiu ZIP de Wordpress en català i descomprimir.
 +  - Configurar wp-config.php amb credencials per a BD (a partir de wp-config-sample.php).
 +  - Es recomana utilitzar la comanda ''sed'' per modificar l'arxiu ''wp-config.php'' copiat de ''wp-config-sample.php''
 +  - Ajustar permisos per a les càrregues d'arxius com imatges.
 +  - Crear taules del blog i configurar usuari vagrant/vagrant. Es pot solventar de diverses formes:
 +    * Amb una crida ''curl'' que simuli la introducció de les dades del formulari d'instal·lació que ens facilita Wordpress després de configurar la BD.
 +    *Amb la utilitat via comandes wp-cli.org
 +
 +Segurament el darrer pas de crear les taules del blog pot ser el menys habitual. El //hack// recomanat per fer el ''curl'' que crearà les taules es pot fer com segueix:
 +
 +  * Accedir a la web d'instal·lació.
 +  * Introduir les dades
 +  * Utilitzar l'inspector de HTML de les eines de desenvolupador del navegador, i modificar el<code html><form method="post"></code> per <code html><form method="get"></code>
 +  * Enviar el formulari. Les dades que necessitem les tenim davant nostre a la URL.
 +  * Elaborar la comanda curl amb -X POST i -d "...les-dades-que-apareixen-a-la-URL-dp-del-&..."
 +
 +...et voilà!
 +
 +</WRAP>
 +
 +==== Exercici 6: Cluster Proxmox ====
 +<WRAP todo>
 +
 +Crearem un cluster Proxmox (PVE) de 3 nodes amb Vagrant.
 +
 +  - Partirem d'una imatge de Proxmox 9 de l'usuari ''castor/proxmox''.
 +  - Ha de tenir suficient RAM (4G) i CPU (2) per node (PVE requereix recursos)
 +  - Les VMs han de tenir les adreces 192.168.40.21 , .22 i .23
 +  - Documentació disponible:
 +    * Instal·lació de Proxmox per a Debian 12 per a la configuració bàsica dels nodes.
 +    * PVE Cluster Manager per la clusterització dels nodes.
 +  - Configurar NFS per TCP si dona error de UDP (nfs_udp:false).
 +
 +Recomanacions per al script de creació:
 +
 +  - Es poden aprovisionar diversos scripts, s'executaran seqüencialment.
 +  - No utilitzar "apt install" ("apt" falla en alguns casos) sinó "apt-get install -y" (-y de "yes" evita que demani confirmació).
 +  - Arranjar el fitxer /etc/hosts (el que ve a la imatge no funciona bé per clusteritzar). Ho podeu fer amb la comanda ''sed'' o similars:
 +    * Eliminar la linia del /etc/hosts que diu "pve.example.com"
 +    * Proxmox requereix que a l'arxiu ''/etc/hosts'' hi hagi la IP pública del node, no serveix el loopback 127.0.0.1 o similars. Elimineu la línia que diu "nodeX" de ''/etc/hosts'' i afegiu la IP del node en qüestió.
 +  - Fer reboot afegint el paràmetres reboot:true al provision shell del script (si ho fem dins del script falla pq no espera el reinici).
 +  - Al node1 caldrà crear el cluster amb la comanda "pvecm create mycluster"
 +  - A la resta de nodes cal esperar (sleep) i anar-los afegint seqüencialment al cluster iniciat al node1. Esperar 10" x <numero_de_node>
 +  - Per automatitzar ens convé buscar sempre versions de les instruccions que no siguin interactives. En el cas que no tinguem mes remei, com passa a l'afegir els nodes amb "pvecm add <ip>" es poden introduir els paràmetres amb la redirecció ''<<''. Ens demana introduir la contrasenya d'admin i respondre "yes", per tant serà algo com:<code bash>pvecm add <ip> -force << EOF
 +<contrasenya>
 +yes
 +EOF
 +</code>
 +
 +
 +</WRAP>
  
vagrant.1684077211.txt.gz · Darrera modificació: 2023/05/14 15:13 per enric_mieza_sanchez