Веб-служба Monit недоступна

Я пытаюсь настроить monit на своем сервере с помощью chef solo. Когда я посещаю порт 2812, я отвечаю, что эта веб-страница недоступна .

config / chef / files / default / monitrc

set daemon 30
set pidfile /var/run/monit_real.pid
set logfile syslog facility log_daemon
set idfile /var/monit/id
set statefile /var/monit/state
set eventqueue
    basedir /var/monit/events
    slots 100
set httpd port 2812
    allow admin:"secret"
include /etc/monit/conf.d/*

monit recipe

package 'monit' do
  action :install
end

service "monit" do
  supports :status => true, :restart => true, :start => true,:stop => true
  action [ :enable, :start ]
end

directory '/etc/monit' do
  owner 'deploy'
  group 'deploy'
  mode '0755'
  recursive true
  action :create
  notifies :restart, resources(:service => "monit"), :immediate
end

cookbook_file '/etc/monit/monitrc' do
  source 'monitrc'
  owner 'deploy'
  group 'deploy'
  mode '0755'
  action :create
end

cookbook_file '/etc/monit/conf.d/puma.conf' do
  source 'monit-puma'
  owner 'deploy'
  group 'deploy'
  mode '0755'
  action :create
end

cookbook_file '/etc/monit/conf.d/nginx.conf' do
  source 'monit-nginx'
  owner 'deploy'
  group 'deploy'
  mode '0755'
  action :create
end

execute 'sudo monit reload'
execute 'sudo monit start all'
1
задан 9 February 2016 в 19:01
1 ответ

Часть этого - отладка, почему monit не запускается.

С помощью оператора журнала logfile syslog ... вы должны посмотреть на вывод вашего syslog daemon, чтобы узнать подробности регистрации. Я изменил monitrc, чтобы использовать файл для упрощения отладки, например:

set logfile /var/log/monit.log

Вывод показывает:

[UTC Mar  3 13:13:14] info     : Starting monit daemon with http interface at [*:2812]
[UTC Mar  3 13:13:14] error    : Cannot open for write -- No such file or directory

Итак, одна из директив конфигурации указывает на несуществующий путь.

Вы также можете запустить monit в интерактивном режиме, чтобы получить более подробную информацию.

/usr/bin/monit -c /etc/monit/monitrc -I -vv

Это выдаст много отличной отладочной информации.

В этом случае мы видим, что одно и то же сообщение повторяется:

Cannot open for write -- No such file or directory

К сожалению, вывод не сообщает нам, какой файл или каталог.

Посмотрев на конфигурацию, мы можем увидеть пути, которые начинаются с / var / monit / - но нет связанного ресурса для создания этих путей в вашем рецепте Chef.

# ls /var/monit
ls: cannot access /var/monit: No such file or directory

Таким образом, это будет означать, что демон monit пытается открыть / записать файлы состояния, идентификатора и очереди по несуществующему пути.

Пути по умолчанию, используемые в пакете Ubuntu для использования monit / var / lib / monit / - вы можете изменить свою конфигурацию, чтобы использовать этот путь, или вы можете добавить другой ресурс в свой рецепт, чтобы создать желаемый путь.

1
ответ дан 3 December 2019 в 23:51

Теги

Похожие вопросы