Плагин стека Nagios Docker работает локально, но не удаленно
У меня есть плагин для проверки служб, работающих на Docker.
Я просмотрел все предложения из десятков постов, которые я видел здесь, но я все еще не могу заставить это работать.
Все команды выполняются индивидуально, а скрипт запускается также локально.
Я добавил пользователя nrpe в группы wheel и docker и установил группу wheel в visudo для запуска чего-либо без пароля.
Я временно изменил / etc / passwd, чтобы позволить пользователю nrpe войти в систему с помощью оболочки. Сценарий выполняется с или без sudo.
Эта часть успешно проходит:
/bin/docker > /dev/null 2>&1
if [ $? -eq 1 ]; then
echo "UNKNOWN - Missing docker binary"
exit 3
fi
Эта часть терпит неудачу. Команда существует с '1', и я не могу получить никакого вывода от команды docker. Я пробовал несколько вещей, включая запись в файл, но каждый раз, когда файл пуст.
/bin/docker stack ls | grep $STACK
if [ $? -eq 1 ]; then
echo "UNKNOWN - $STACK does not exist. $(/usr/bin/sudo /bin/docker stack ls) \n $(whoami)"
exit 3
fi
Это вывод, который я получаю:
UNKNOWN - ValidService does not exist. \n nrpe.
Есть идеи, какое разрешение мне не хватает или это что-то еще?
1 ответ
SELinux блокирует мой скрипт для доступа к "container_runtime_exec_t".
Я начну новый вопрос о том, как это разрешить. Моя новая компания запускает selinux на большинстве систем.