CreditCardsCom.airflow
Rol de Ansible: airflow
Instala y configura un host de airflow. Se puede usar para configurar nodos maestros y trabajadores.
Requisitos
Necesitarás acceso sudo al host que se está aprovisionando, usa lo siguiente para ejecutar como root.
- name: Aprovisionar hosts maestros de airflow
hosts: airflow_hosts
become: yes
roles:
- creditcardscom.airflow
Variables del Rol
Variables de configuración base de airflow:
# Usuario bajo el cual se debe iniciar airflow
airflow_user: airflow
# Versión de airflow que se instalará
airflow_version: 1.8.1
# Directorio donde se instalará airflow
airflow_install_directory: /usr/share/airflow
# Paquetes adicionales que se instalarán para airflow via pip install
airflow_extra_packages:
- celery
- alldbs
# Servicios que se iniciarán en el host
airflow_services:
- webserver
- scheduler
- worker
airflow.cfg
La configuración principal de airflow se realiza con objetos yaml, que simplemente es la configuración predeterminada default_airflow fusionada con cualquier sobreescritura encontrada en el objeto airflow. Todas las claves del objeto se templarán en el airflow.cfg bajo la sección correspondiente. Todos los valores son los valores predeterminados de airflow.
airflow:
core:
dags_folder: "/usr/share/airflow_dags"
base_log_folder: "/var/log/airflow"
webserver:
base_url: "{{ airflow_base_url }}"
scheduler:
statsd_on: True
Dependencias
Ninguna
Ejemplo de Playbook
play.yml
- hosts: airflow-masters
become: yes
roles:
- creditcardscom.airflow
vars/main.yml
airflow_user: airflow_user
airflow_version: 1.8.0
airflow_services:
- webserver
- scheduler
airflow:
core:
dags_folder: "/home/{{ airflow_user }}/dags"
Licencia (MIT)
Copyright (c) 2017 CreditCards.com
Se concede permiso, de forma gratuita, a cualquier persona que obtenga una copia de este software y archivos de documentación asociados (el "Software"), para usar el Software sin restricción, incluyendo sin limitación los derechos de usar, copiar, modificar, fusionar, publicar, distribuir, sublicenciar y/o vender copias del Software, y permitir a las personas a quienes se les proporcione el Software hacerlo, sujeto a las siguientes condiciones:
El aviso de copyright anterior y este aviso de permiso deben incluirse en todas las copias o partes substanciales del Software.
EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O IMPLÍCITA, INCLUYENDO PERO NO LIMITÁNDOSE A LAS GARANTÍAS DE COMERCIALIZABILIDAD, ADECUACIÓN PARA UN PROPÓSITO PARTICULAR Y NO INFRACCIÓN. EN NINGÚN CASO LOS AUTORES O TITULARES DE LOS DERECHOS DE AUTOR SERÁN RESPONSABLES DE CUALQUIER RECLAMO, DAÑO O OTRA RESPONSABILIDAD, YA SEA EN UNA ACCIÓN DE CONTRATO, AGRAVIO O DE OTRA MANERA, QUE SURJA DE, O EN CONEXIÓN CON EL SOFTWARE O EL USO O OTRO TRATO EN EL SOFTWARE.
ansible-galaxy install CreditCardsCom.airflow