3.0 KiB
Prepare ansible Installation
Option 1
-
Install ansible with Python.
-
Install library jmespath (https://jmespath.org/). Will be used to parse JSON data.
-
Install hcloud (python library for hetzner)
pip3 install ansible jmespath hcloud netaddr
OR
pip3 install -r pip-requirements
Option 2
-
Install python dependencies with poetry
poetry install
Install needed ansible collections / roles
Without poetry
ansible-galaxy install -r galaxy-requirements.yml
With poetry
poetry run ansible-galaxy install hetzner.hcloud
Setup
Create/Start servers for stage-dev
ansible-playbook -i stage-dev provisioning.yml --vault-password-file ~/vault-pass
ansible-playbook -i stage-dev start.yml --vault-password-file ~/vault-pass
ansible-playbook -i stage-dev stop.yml --vault-password-file ~/vault-pass
with Poetry prefix with
poetry run
Provisioning
ansible-playbook -i stage-dev setup.yml --vault-password-file ~/vault-pass -u root
ansible-playbook dynamic-provisioning.yml --vault-password-file ~/vault-pass -e "stage=dev name=test node=01 service=connect"
with Poetry prefix with
poetry run
Setup Smardigo Service
Setup/Configure a Server, Database, Realm (keycloak) and Smardigo
ansible-playbook create-server.yml -e "stage='dev' tenant_id='sken' cluster_name='test01' cluster_size='1' cluster_service='connect' stage='dev'"
ansible-playbook create-database.yml -e "stage='dev' tenant_id='sken' cluster_name='test01' cluster_size='1' cluster_service='connect' stage='dev'"
ansible-playbook create-realm.yml -e "stage='dev' tenant_id='sken' cluster_name='test01' cluster_size='1' cluster_service='connect' stage='dev' current_realm_name='sken' current_realm_display_name='S-K-E-N'"
ansible-playbook create-service.yml -e "stage='dev' tenant_id='sken' cluster_name='test01' cluster_size='1' cluster_service='connect' stage='dev' current_realm_name='sken' current_realm_display_name='S-K-E-N'"
with Poetry prefix with
poetry run
Remove Smardigo Service
Remove a Server, Database, Realm (keycloak) and Smardigo
ansible-playbook remove-server.yml -e "stage='dev' tenant_id='sken' cluster_name='test01' cluster_size='1' cluster_service='connect' stage='dev'"
with Poetry prefix with
poetry run
TODO
IPFire 149.233.6.129 - eShelter 212.121.131.106 - Siemansdamm
Prometheus curl -X POST https://{{ prometheus-url }}/-/reload
Prometheus (Grafana) docker exec -i df4d6b176f5e sh -c 'grafana-cli plugins install grafana-piechart-panel' docker restart df4d6b176f5e
AWX -> /etc/kubernetes/k9s wget https://github.com/derailed/k9s/releases/download/v0.24.14/k9s_Linux_x86_64.tar.gz tar -xzf k9s_*.tar.gz -C . ln -s /etc/kubernetes/k9s/k9s /usr/bin/k9s kubectl taint nodes --all node-role.kubernetes.io/master-
Wordpress Database Dump ansible-playbook upload-database-dumb.yml -e "cluster_services_str='connect,connect_wordpress' stage='dev' upload_file="smardigo/wordpress_portal.sql.gz""