add Consul service definition for beacon node
Signed-off-by: Jakub Sokołowski <jakub@status.im>
This commit is contained in:
parent
b2f8af3f87
commit
9889971ab5
|
@ -41,7 +41,7 @@ beacon_node_mem_limit: '{{ (ansible_memtotal_mb * 0.5) | int }}'
|
|||
beacon_node_mem_reserve: '{{ (ansible_memtotal_mb * 0.4) | int }}'
|
||||
|
||||
# Consul service definition settings
|
||||
beacon_node_consul_service_name: 'beacon-node'
|
||||
beacon_node_consul_service_name: '{{ beacon_node_service_name }}'
|
||||
beacon_node_consul_service_file_name: '{{ beacon_node_consul_service_name | replace("-", "_") }}'
|
||||
beacon_node_consul_metrics_service_name: '{{ beacon_node_consul_service_name }}-metrics'
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
- name: Restart Consul
|
||||
win_service:
|
||||
name: 'consul'
|
||||
state: 'restarted'
|
|
@ -0,0 +1,23 @@
|
|||
---
|
||||
- name: 'Consul service definition - {{ beacon_node_service_name }}'
|
||||
include_role: name=consul-service
|
||||
vars:
|
||||
consul_config_name: '{{ beacon_node_consul_service_file_name }}'
|
||||
consul_services:
|
||||
- id: '{{ beacon_node_service_name }}'
|
||||
name: '{{ beacon_node_consul_service_name }}'
|
||||
port: '{{ beacon_node_listening_port }}'
|
||||
address: '{{ beacon_node_public_address }}'
|
||||
tags: ['{{ env }}.{{ stage }}', 'beacon', 'nimbus']
|
||||
|
||||
- id: '{{ beacon_node_service_name }}-metrics'
|
||||
name: '{{ beacon_node_consul_metrics_service_name }}'
|
||||
port: '{{ beacon_node_metrics_port }}'
|
||||
address: '127.0.0.1' # TODO: No WireGuard VPN on Windows
|
||||
tags: ['{{ env }}.{{ stage }}', 'beacon', 'nimbus', 'metrics']
|
||||
meta:
|
||||
container: '{{ beacon_node_service_name }}'
|
||||
checks:
|
||||
- name: '{{ beacon_node_consul_metrics_service_name }}-health'
|
||||
type: 'http'
|
||||
http: 'http://localhost:{{ beacon_node_metrics_port }}/metrics'
|
|
@ -2,6 +2,7 @@
|
|||
- import_tasks: checks.yml
|
||||
- import_tasks: user.yml
|
||||
- import_tasks: install.yml
|
||||
- import_tasks: firewall.yml
|
||||
- import_tasks: schedule.yml
|
||||
- import_tasks: service.yml
|
||||
- import_tasks: firewall.yml
|
||||
- import_tasks: consul.yml
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
{
|
||||
"services": [
|
||||
{
|
||||
"id": "{{ beacon_node_service_name }}",
|
||||
"name": "beacon-node",
|
||||
"port": {{ beacon_node_listening_port }},
|
||||
"address": "{{ beacon_node_public_address }}",
|
||||
"weights": {
|
||||
"passing": 1,
|
||||
"warning": 3
|
||||
},
|
||||
"enable_tag_override": true,
|
||||
"tags": ["{{ env }}.{{ stage }}", "beacon", "nimbus"]
|
||||
},
|
||||
{
|
||||
"id": "{{ beacon_node_service_name }}-metrics",
|
||||
"name": "beacon-node-metrics",
|
||||
"port": 9300,
|
||||
"meta": {
|
||||
"container": "beacon-node-prater-stable-large"
|
||||
},
|
||||
"address": "10.13.0.16",
|
||||
"weights": {
|
||||
"passing": 1,
|
||||
"warning": 3
|
||||
},
|
||||
"enable_tag_override": true,
|
||||
"checks": [
|
||||
{
|
||||
"name": "beacon-node-metrics HTTP check",
|
||||
"http": "http://localhost:9300/metrics",
|
||||
"method": "GET",
|
||||
"tls_skip_verify": false,
|
||||
"header": {},
|
||||
"interval": "30s",
|
||||
"timeout": "2s",
|
||||
"id": {{ beacon_node_service_name }}-metrics"
|
||||
}
|
||||
],
|
||||
"tags": ["{{ env }}.{{ stage }}", "beacon", "nimbus", "metrics"]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
Loading…
Reference in New Issue