Diferències
Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.
| Ambdós costats versió prèvia Revisió prèvia Següent revisió | Revisió prèvia | ||
| info:cursos:pue:devops2022:s9 [09/02/2022 09:20] – mate | info:cursos:pue:devops2022:s9 [17/03/2022 03:09] (actual) – [TODO] mate | ||
|---|---|---|---|
| Línia 1: | Línia 1: | ||
| - | = DevOps Sesión 9 (2022-03-09) | + | = DevOps Sesión 9 (2022-03-09) |
| == Documentación relacionada | == Documentación relacionada | ||
| - | == Clase | + | <callout type=" |
| - | == TODO | + | * 3-Topic 703 Machine Deployment/ |
| - | <callout type=" | + | </ |
| + | |||
| + | == Vagrant | ||
| + | <callout type=" | ||
| + | * ./2-Uso básico de vagrant.pdf | ||
| + | * ./Clase Resumen Vagrant.txt | ||
| + | * ./ | ||
| + | </ | ||
| + | * montar entornos en local (pensado para desarrollo) | ||
| + | * hypervisores (providers): | ||
| + | * [[https:// | ||
| + | * box: máquina virtual que me puedo descargar (para uno a varios providers, no intercambiable) | ||
| + | * [[https:// | ||
| + | |||
| + | === primeros comandos | ||
| + | * '' | ||
| + | * '' | ||
| + | * descarga box | ||
| + | * crea VM en provider | ||
| + | * natea red | ||
| + | * crea llaves públicas-privadas | ||
| + | * ssh en puerto 2222 (o superior si hay más máquinas) | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | === vagrant box | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * actualiza versiones de las boxes del escenario | ||
| + | * '' | ||
| + | * '' | ||
| + | * no aplica cambios de provisioning | ||
| + | * '' | ||
| + | |||
| + | === package | ||
| + | * '' | ||
| + | * '' | ||
| + | * subir a repositorio local | ||
| + | |||
| + | === provisionamiento | ||
| + | * pág 149 (Herramientas Devops entornos de desarrollo en local, para programadores con Docker y Vagrant .pdf) | ||
| + | * [[https:// | ||
| + | * se aplica con: | ||
| + | * '' | ||
| + | * '' | ||
| + | * métodos: | ||
| + | * inline:< | ||
| + | ... | ||
| + | config.vm.provision " | ||
| + | yum install httpd* mariadb* php php-mysql mod_ssl -y | ||
| + | systemctl restart httpd | ||
| + | systemctl enable httpd | ||
| + | mkdir /codigo | ||
| + | systemctl stop firewalld | ||
| + | systemctl disable firewalld | ||
| + | systemctl restart mariadb | ||
| + | systemctl enable mariadb | ||
| + | cd / | ||
| + | wget https:// | ||
| + | mv adminer-4.3.1-mysql.php adminer.php | ||
| + | SHELL | ||
| + | ... | ||
| + | </ | ||
| + | * script | ||
| + | * puppet/ | ||
| + | |||
| + | === network | ||
| + | * pag 136 (Herramientas Devops entornos de desarrollo en local, para programadores con Docker y Vagrant .pdf) | ||
| + | * reenvio de puertos | ||
| + | * sencillo de configurar, suficiente en la mayoría de casos, solo expone los puertos especificados | ||
| + | * ojo si los puertos ya están en uso en el host | ||
| + | * no se pueden usar puertos por debajo del 1024 (a menos que vagrant se ejecute como root - no recomendado) | ||
| + | * private network | ||
| + | * redes para compartir con el anfitrion | ||
| + | * podemos añadir todas las VMs que queramos | ||
| + | * más complejo de configurar | ||
| + | * atención al direccionamiento estático | ||
| + | * Vagrant podría ser que no configurase los interfaces en el anfitrion (depende del SO) | ||
| + | * public network (modo bridge) | ||
| + | * acceso a la red de la VM como si fuese una máquina física | ||
| + | * la opción más potente para acceder desde el exterior | ||
| + | |||
| + | === carpetas compartidas | ||
| + | * pag 124 (Herramientas Devops entornos de desarrollo en local, para programadores con Docker y Vagrant .pdf) | ||
| + | * compartir datos entre el anfitrion y la máquina virtual | ||
| + | * **config.vm.synced_folder** | ||
| + | * '' | ||
| + | * mount options: | ||
| + | * fmode = file mode | ||
| + | * dmode = directory mode | ||
| + | * NFS, CIFS | ||
| + | |||
| + | === provider | ||
| + | * aplicar cambios en la máquina virtual | ||
| + | * [[https:// | ||
| + | * **check_guest_additions** | ||
| + | * **customize** | ||
| + | * **memory** | ||
| + | * **cpus** | ||
| + | * **linked_clone** | ||
| + | * **default_nic_type** | ||
| + | * **name** | ||
| + | |||
| + | === snapshots | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | == Vagrantfile | ||
| + | * ruby | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | === provider | ||
| + | * [[https:// | ||
| + | * <code ruby> | ||
| + | vb.gui = true | ||
| + | vb.name = " | ||
| + | vb.memory = " | ||
| + | end</ | ||
| + | === provision | ||
| + | * pag 149 | ||
| + | * <code ruby> | ||
| + | comando | ||
| + | comando | ||
| + | SHELL | ||
| + | </ | ||
| + | * '' | ||
| + | * <code ruby> | ||
| + | ansible.playbook = " | ||
| + | end | ||
| + | </ | ||
| + | === network | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | === synced_folder | ||
| + | * '' | ||
| + | * <code ruby> | ||
| + | owner: " | ||
| + | | ||
| + | | ||
| + | |||
| + | |||
| + | |||
| + | == Extra | ||
| + | * Dashboard k8s (mejor que portainer) | ||
| + | * 2-Despliegue de Aplicaciones Kubernetes/ | ||
| + | * Ingress/ | ||
| + | * 2-Despliegue de Aplicaciones Kubernetes/ | ||
| + | * 2-Despliegue de Aplicaciones Kubernetes/ | ||
| + | * RBAC | ||
| + | * documentación oficial (no docs) | ||
| + | |||