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