Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # superset setup
- The following ansible playbook installs the pre-requisites for superset on a CentOS 7.4 host:
- - hosts: superset
- user: root
- vars:
- mysql_root_password: ********
- tasks:
- - name: yum update
- yum: name=*
- state=latest
- - name: install epel, mlocate, ntp, pip, gcc, etc.
- yum: name={{ item }}
- state=installed
- with_items:
- - epel-release
- - mlocate
- - ntp
- - bind-utils
- - python-pip
- - mysql-devel
- - python-devel
- - openssl-devel
- - gcc
- - gcc-c++
- - cyrus-sasl-devel
- - lsof
- - supervisor
- - name: upgrade pip
- shell: pip install --upgrade pip
- - name: install mysqldb Python package
- pip: name={{ item }}
- with_items:
- - MySQL-python
- - superset
- - name: enable ntpd and supervisord
- service: name={{ item }}
- state=running
- enabled=yes
- with_items:
- - ntpd
- - supervisord
- - name: create superset database
- mysql_db: login_user=root
- login_password={{ mysql_root_password }}
- name=superset
- encoding=utf8
- state=present
- - name: add superset MySQL user
- mysql_user: login_user=root
- login_password={{ mysql_root_password }}
- name=superset
- host=%
- password={{ mysql_root_password }}
- priv='superset.*:ALL,GRANT'
- state=present
- - name: open port 8088
- firewalld:
- port: 8088/tcp
- permanent: true
- state: enabled
- - name: restart firewalld
- service: name=firewalld state=restarted
- Note: MySQL was manually installed on this host, and is not part of this playbook because MySQL could be installed anywhere.
- Edit the configuration file `/usr/lib/python2.7/site-packages/superset/config.py`:
- SQLALCHEMY_DATABASE_URI = 'mysql://superset:superset-password@localhost/superset'
- Then initialize the superset database tables per the superset docs:
- # Create an admin user (you will be prompted to set username, first and last name before setting a password)
- fabmanager create-admin --app superset
- # Initialize the database
- superset db upgrade
- # Create default roles and permissions
- superset init
- To run superset as a service managed by supervisord create a file in `/etc/supervisord.d/supervisor.ini` containing:
- [program:superset]
- command = /usr/bin/superset runserver
- autostart = true
- autorestart = true
- startretries = 3
- stdout_logfile = /var/log/supervisor/superset.log
- stdout_logfile_maxbytes = 100MB
- stdout_logfile_backups = 5
- stderr_logfile = /var/log/supervisor/superset-err.log
- stderr_logfile_maxbytes = 100MB
- stderr_logfile_backups = 5
Add Comment
Please, Sign In to add comment