"args"
- должен быть массив строк. Консул видит вашу единственную строку как команду для выполнения, игнорируя пробелы.
Ваш чек должен выглядеть примерно так:
"check": {
"args": ["/usr/bin/mysqladmin", "ping", "--host=192.168.56.35", "--port=6033", "--user=root", "password=123"],
"interval": "3s"}
}
При желании вы можете использовать вместо него следующее, поскольку строка передается /bin/sh
, ее не нужно делить на подстроки. (в большинстве примеров для Consul Checks используется этот синтаксис, поэтому он должен работать окончательно):
"check": {
"args": ["/bin/sh", "-c", "/usr/bin/mysqladmin ping --host=192.168.56.35 --port=6033 --user=root password=123"],
"interval": "3s"}
}
Также убедитесь, что пользователь, под которым работает процесс агента Consul, может выполнить /usr/bin/mysqladmin
, иначе вы получите в доступе отказано в разрешении