Álvaro Rodríguez Márquez
Mi proyecto es un conjunto de recetas con las cuales desplegaremos un escenario de pruebas .
Conseguir un sistema:
Recomiendo que el despliegue sea sobre Ubuntu 16.04
Homer
Barney
Lisa
Anfitrión
Linux Containers es una tecnología de virtualización a nivel del sistema operativo.
Creación de una máquina :
Podemos entrar en la máquina :
Y al acabar la borramos con :
lxc-create -t debian -n ejemplo-proyecto
lxc-console -n ejemplo-proyecto
lxc-destroy -n ejemplo-proyecto
Ansible es una herramienta de orquestación.
Utiliza el protocolo ssh.
Prueba con ping:
Instalación de paquete:
ansible local -m ping -u usuario -k
ansible local -m apt -a "name=htop update_cache=yes state=present" -u root -k
Los playbooks son archivos con instrucciones .
Con ellos podemos instalar y configurar servicios.
---
- hosts: lxc
become: yes
become_user: root
tasks:
- name: prueba de ping + ssh
ping:
Playbook para probar la conexión:
Playbook para crear una máquina:
---
- hosts: local
become: yes
become_user: root
tasks:
- name: Creación del contenedor Lisa
lxc_container:
name: lisa
container_log: true
template: centos
state: started
Preparación de la máquina:
---
- hosts: local
become: yes
become_user: root
tasks:
- name: instalación ssh lisa
lxc_container:
name: lisa
container_command: |
yum update | yum install openssh-server sshpass sudo -y
- name: creación de usuario
lxc_container:
name: lisa
container_command: useradd usuario -s /bin/bash -m
- name: configuración del usuario
lxc_container:
name: lisa
container_command: |
echo -e "usuario\nusuario" | passwd usuario
- name: configuración de sudo
lxc_container:
name: lisa
container_command: |
echo "usuario ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
Instalación de un servicio:
---
- name: instalación de httpd (apache)
yum: name=httpd state=present
- name: instalación de php
yum: name=php state=present
- name: Copiar la página de presentación
copy: src=index.html dest=/var/www/html/index.html
---
- hosts: lisa
become: yes
become_user: root
roles:
- httpd
Playbook que llama al rol
Tarea main.yml