infopen / ansible-role-airflow Goto Github PK
View Code? Open in Web Editor NEWAnsible role to deploy and configure Airflow
License: MIT License
Ansible role to deploy and configure Airflow
License: MIT License
Running the playbook on a systemd (Centos 7) host results in the following error:
TASK [infOpen.airflow : SERVICE | Manage airflow services states] ********************************************************************
failed: [192.168.122.242] (item={u'state': u'started', u'enabled': True, u'name': u'airflow-webserver'}) => {"changed": false, "item": {"enabled": true, "name": "airflow-webserver", "state": "started"}, "msg": "Could not find the requested service airflow-webserver: host"}
failed: [192.168.122.242] (item={u'state': u'started', u'enabled': True, u'name': u'airflow-scheduler'}) => {"changed": false, "item": {"enabled": true, "name": "airflow-scheduler", "state": "started"}, "msg": "Could not find the requested service airflow-scheduler: host"}
Manually running systemctl daemon-reload
on the host, and re-running the playbook/role results in successful completion.
Hi,
while trying to use this role (latest master with airflow 1.10.11) I get stuck in the following task:
TASK [infOpen.airflow : CONFIG | Manage configuration templating] **********************
task path: /Users/pjs/.ansible/roles/infOpen.airflow/tasks/manage_configuration.yml:24
[...]
fatal: [airflow-server]: FAILED! => {
"changed": false,
"msg": "AnsibleUndefinedVariable: 'dict object' has no attribute 'iteritems'"
}
Looks like a variable is not defined? Any idea which one?
I added some variables and other configuration to get SSL config via letsencrypt and https://github.com/geerlingguy/ansible-role-certbot going.
Facing some minor issues still but I can do a PR one they are resolved if this is of general interest to you.
If non-default install locations are used, where Airflow is installed outside of the airflow_user_home_path
, then permission denied errors can result, as the paths are not created / checked correctly.
e.g. using the following install locations:
airflow_user_home_path: "/home/airflow"
airflow_base: "/opt/airflow"
airflow_virtualenv: "{{ airflow_base }}/venv"
airflow_defaults_config:
core:
airflow_home: "{{ airflow_base }}/app"
Results in the following error:
TASK [infOpen.airflow : INSTALL | Manage airflow installation] ***********************************************************************
failed: [192.168.122.242] (item={u'version': u'2.1.5', u'name': u'GitPython'}) => {"changed": false, "cmd": "/bin/virtualenv --no-site-packages -ppython2 /opt/airflow/venv", "item": {"name": "GitPython", "version": "2.1.5"}, "msg": "stdout: Running virtualenv with interpreter /bin/python2\n\n:stderr: Traceback (most recent call last):\n File \"/usr/lib/python2.7/site-packages/virtualenv.py\", line 2327, in <module>\n main()\n File \"/usr/lib/python2.7/site-packages/virtualenv.py\", line 712, in main\n symlink=options.symlink)\n File \"/usr/lib/python2.7/site-packages/virtualenv.py\", line 924, in create_environment\n site_packages=site_packages, clear=clear, symlink=symlink))\n File \"/usr/lib/python2.7/site-packages/virtualenv.py\", line 1109, in install_python\n mkdir(lib_dir)\n File \"/usr/lib/python2.7/site-packages/virtualenv.py\", line 323, in mkdir\n os.makedirs(path)\n File \"/usr/lib64/python2.7/os.py\", line 150, in makedirs\n makedirs(head, mode)\n File \"/usr/lib64/python2.7/os.py\", line 150, in makedirs\n makedirs(head, mode)\n File \"/usr/lib64/python2.7/os.py\", line 150, in makedirs\n makedirs(head, mode)\n File \"/usr/lib64/python2.7/os.py\", line 157, in makedirs\n mkdir(name, mode)\nOSError: [Errno 13] Permission denied: '/opt/airflow'\n"}
Apply Infopen Ansible role template 0.41.1 to this role
With py27-ansible-devel test case, failed to template config file and broke the build.
Not occurs with 2.0 and 2.1, so I temporaly disabled the "-devel" build.
Take time to check why happens. I already test these case, without changes:
< TASK [. : Manage configuration templating] >
--------------------------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
fatal: [f3472f9f03916825f6bd0d5cd5c8bc69a26890ff7e6f5f24aa24f3baeda72302]: FAILED! => {"changed": true, "failed": true, "msg": "Source /tmp/ansible-tmp-1466515761.43-60345451370661/source not found"}
to retry, use: --limit @./testing_deployment.retry
Hi ๐
This is my first visit to this fine repo, but it seems you have been working hard to keep all dependencies updated so far.
Once you have closed this issue, I'll create separate pull requests for every update as soon as I find one.
That's it for now!
Happy merging! ๐ค
Adding a service for airflow kerberos
to airflow_services_systemd
and airflow_services_states
fails because a handler does not exist to start/restart the service.
Last builds failed on Travis.
Check with updated pip and/or virtualenv packages to be able to process waiting PR
Hi,
I tried using your role and struck up on this step
TASK [deploy_airflow : INSTALL | Manage system dependencies] ******************************************************************************************
ok: [dmpServer] => (item={'name': 'python3-dev'})
ok: [dmpServer] => (item={'name': 'libpq-dev'})
ok: [dmpServer] => (item={'name': 'libssl-dev'})
ok: [dmpServer] => (item={'name': 'libffi-dev'})
ok: [dmpServer] => (item={'name': 'libxml2'})
ok: [dmpServer] => (item={'name': 'libxml2-dev'})
ok: [dmpServer] => (item={'name': 'libxslt1-dev'})
ok: [dmpServer] => (item={'name': 'build-essential'})
failed: [dmpServer] (item={'name': 'python-virtualenv'}) => {"ansible_loop_var": "item", "changed": false, "item": {"name": "python-virtualenv"}, "msg": "No package matching 'python-virtualenv' is available"}
failed: [dmpServer] (item={'name': 'python-pip'}) => {"ansible_loop_var": "item", "changed": false, "item": {"name": "python-pip"}, "msg": "No package matching 'python-pip' is available"}
How to proceed further.
Regards
Rajaniesh
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.