diff --git a/.github/workflows/monitor.yml b/.github/workflows/monitor.yml new file mode 100644 index 0000000..7666d50 --- /dev/null +++ b/.github/workflows/monitor.yml @@ -0,0 +1,25 @@ +name: Monitor + +on: + schedule: + - cron: "0 */2 * * *" + workflow_dispatch: + +jobs: + monitor: + name: monitor + runs-on: ubuntu-latest + strategy: + matrix: + playbook: + - monitor + steps: + - uses: actions/checkout@v2 + + - name: Run playbook + uses: dawidd6/action-ansible-playbook@v2 + with: + directory: ansible + playbook: playbooks/${{ matrix.playbook }}/playbook.yml + key: "${{ secrets.SSH_PRIVATE_KEY }}" + options: --user ansible --verbose --diff diff --git a/ansible/inventories/hosts.ini b/ansible/inventories/hosts.ini index f69dd59..d651e74 100644 --- a/ansible/inventories/hosts.ini +++ b/ansible/inventories/hosts.ini @@ -4,3 +4,26 @@ g1.crab2.darwinia.network [darwinia_nodes] g1.darwinia2.darwinia.network +[monitor] +g1.crab2.darwinia.network +c1.crab2.darwinia.network +g1.darwinia2.darwinia.network +c1.darwinia2.darwinia.network +g1.testnets.darwinia.network +g2.testnets.darwinia.network +g3.testnets.darwinia.network +g1.generic.darwinia.network +g2.generic.darwinia.network + +c1.darwinia-rpc.itering.io +c2.darwinia-rpc.itering.io +c1.crab-rpc.itering.io +c2.crab-rpc.itering.io + +c1.collator.itering.io +c2.collator.itering.io +c3.collator.itering.io +c4.collator.itering.io + +c5.collator.itering.io +c6.collator.itering.io diff --git a/ansible/playbooks/monitor/group_vars/monitor.yml b/ansible/playbooks/monitor/group_vars/monitor.yml new file mode 100644 index 0000000..4ba9821 --- /dev/null +++ b/ansible/playbooks/monitor/group_vars/monitor.yml @@ -0,0 +1,3 @@ + +monitor: + notify_slack_webhook: "{{ lookup('env', 'SLACK_INCOMING_WEBHOOK_URL') }}" diff --git a/ansible/playbooks/monitor/playbook.yml b/ansible/playbooks/monitor/playbook.yml new file mode 100644 index 0000000..fdefde7 --- /dev/null +++ b/ansible/playbooks/monitor/playbook.yml @@ -0,0 +1,3 @@ +- hosts: monitor + roles: + - monitor diff --git a/ansible/roles/monitor/defaults/main.yml b/ansible/roles/monitor/defaults/main.yml index f1b5300..59ed131 100644 --- a/ansible/roles/monitor/defaults/main.yml +++ b/ansible/roles/monitor/defaults/main.yml @@ -5,6 +5,7 @@ monitor: notify_slack_channel: 'darwinia-alert-notification' server_name: '' check_disks: + - /dev/sda - /dev/sdb alert_thread_cpu_p2: 90 alert_thread_cpu_p1: 98