GithubHelp home page GithubHelp logo

ansible-capstone's Introduction

Ansible WordPress Capstone

Ansible Wordpress Capstone es un proyecto desarrollado para automatizar el despliegue de un sitio web Wordpress en servidores Linux basados en RedHat o Debian. Este proyecto ha sido probado exitosamente en Centos 7 y Ubuntu 20.

Este proyecto es el resultado del Curso Mastering Ansible Automation de Coursera.

Que aprendí en el curso y con el desarrollo de este proyecto?

  • Conocer los conceptos básicos de la sintaxis de Ansible y la administración de un host.
  • Administrar paquetes, usuarios y archivos de con Ansible.
  • Administrar módulos de Ansible de terceros y proveedores de la nube.
  • Implementar WordPress en una instancia de servidor Linux usando Ansible.
  • Conectar la instancia a una base de datos para que WordPress almacene sus datos usando Ansible.
  • Gestionar las versiones del código en GitHub.

Instalación

Primero debes Instalar Ansible según las instrucciones para tu Sistema Operativo.

Lo siguiente, en todos los nodos administrados debe estar creado el usuario ansibleuser, con el que ansible se conectará a los nodos administrados. El usuario debe tener privilegios sudo y tener la misma contraseña en todos los nodos administrados.

adduser ansibleuser (managed_node1)
adduser ansibleuser (managed_node2)
...

Lo siguiente, copiar la clave pública del nodo de control hacia el directorio ssh del usuario ansibleuser de todos los nodos administrados.

ssh-copy-id ansibleuser@managed_node1
ssh-copy-id ansibleuser@managed_node2
...

Clona el repositorio en el nodo de control

git clone https://github.com/edssn/Ansible-Capstone.git

En el nodo de control, modifica el archivo Ansible-Capstone/inventory/main.yml y agrega las ips de tus nodos administrados

all:
  hosts:
    ip_managed_node1:
    ip_managed_node2:
    ...

Ejecuta el playbook de ansible

ansible-playbook -i inventory/main.yml wordpress.yml -K

BECOME password:

La ejecución del comando solicitará una contraseña. Debes ingresar la contraseña del usuario ansibleuser Al ingresar la contraseña, las tareas del playbook iniciaran su ejecución en todos los nodos administrados.

PLAY [all] *******************************************************************************************************************************************************************************

TASK [Gathering Facts] *******************************************************************************************************************************************************************
ok: [192.168.56.105]
ok: [192.168.56.106]

TASK [wordpress : Print My Os Family] ****************************************************************************************************************************************************
ok: [192.168.56.105] => {
    "ansible_os_family": "RedHat"
}
ok: [192.168.56.106] => {
    "ansible_os_family": "Debian"
}
......

Por último, abre tu navegador y escribe la ip de cada uno de tus nodos administrados en el puerto 80. Deberías visualizar la página de instalación de Wordpress

Nodo Administrado 1 (192.168.56.105)

Working Image

Nodo Administrado 2 (192.168.56.106)

Working Image

ansible-capstone's People

Contributors

evanfingerman avatar edssn avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.