#consul
#consul
Вопрос:
на моем сервере consul и других узлах я добавил 3 проверки на загрузку процессора, использование памяти и использование жесткого диска. Я не знаю, почему они терпят неудачу во время проверки. что я делаю не так.
{
"retry_join": [
"172.20.20.31"
],
"data_dir": "/tmp/consul",
"client_addr": "0.0.0.0",
"checks": [
{
"id": "check_cpu_utilization",
"name": "CPU Utilization",
"script": "/vagrant/provision/hc/cpu_utilization.sh",
"interval": "10s"
},
{
"id": "check_mem_utilization",
"name": "MEM Utilization",
"script": "/vagrant/provision/hc/mem_utilization.sh",
"interval": "10s"
},
{
"id": "check_hdd_utilization",
"name": "HDD Utilization",
"script": "/vagrant/provision/hc/hdd_utilization.sh",
"interval": "10s"
}
]
}
и если я проверю файл конфигурации consul.
consul validate common.json
Config validation failed: Error parsing common.json: 3 errors occurred:
* invalid config key checks[0].script
* invalid config key checks[1].script
* invalid config key checks[2].script
моя версия consul 1.8.3
Ответ №1:
Правильный способ определения проверок скрипта — использовать args
параметр в определении проверки.
{
"id": "check_cpu_utilization",
"name": "CPU Utilization",
"args": ["/vagrant/provision/hc/cpu_utilization.sh"],
"interval": "10s"
}
Примеры на странице Проверки определений также показывают использование args
поля.