#apache #centos #chef-infra #chef-solo
#apache #centos #шеф-повар-инфра #шеф-соло
Вопрос:
Я подготавливаю виртуальную машину vagrant, используя chef_solo
, используя bento/centos7.2
. Я устанавливаю httpd
через кулинарную книгу httpd со следующим кодом.
# Install Apache and starts it
httpd_service 'mine' do
mpm 'prefork'
action [:create, :start]
listen_ports ['80', '443']
run_user node['webserver']['run_user'] # the value is 'vagrant'
end
# Add the site configuration
httpd_config 'mine' do
instance 'mine'
source 'mine.conf.erb'
notifies :restart, 'httpd_service[mine]'
end
# Create document rood directory
directory "#{node['webserver']['document_root']}" do
recursive true
end
# Homepage
template "#{node['webserver']['document_root']}/index.php" do
source 'index.php.erb'
mode '0644'
owner node['webserver']['user']
group node['webserver']['group']
action :create_if_missing
end
# Install the mod_php Apache module.
httpd_module 'php' do
instance 'mine'
end
# Install memcached
package 'memcached'
# Install php-pecl-memcache
package 'php-pecl-memcache' do
action :install
notifies :restart, 'httpd_service[mine]'
end
# Install php-pecl-memcached
package 'php-pecl-memcached' do
action :install
notifies :restart, 'httpd_service[mine]'
end
# Install php-mysql
package 'php-mysql' do
action :install
notifies :restart, 'httpd_service[mine]'
end
# Install php-pdo
package 'php-pdo' do
action :install
notifies :restart, 'httpd_service[mine]'
end
# Install php-intl
package 'php-intl' do
action :install
notifies :restart, 'httpd_service[mine]'
end
# Install php-mssql
package 'php-mssql' do
action :install
notifies :restart, 'httpd_service[mine]'
end
Забавно, что когда я запускаю kitchen converge
, все хорошо и httpd
работает отлично (проверка теста проходит, и я проверяю вручную kitchen login
).
Но когда я запускаю vagrant, он уничтожается с самого начала и умирает после каждого запроса. Я не знаю почему, и я не знаю, есть ли какой-либо журнал, который я могу прочитать для отладки этого поведения. Есть идеи?
UDPATE:
Это журнал, найденный в /var/log/httpd-mine/error_log
Это вход в систему sudo journalctl
Комментарии:
1. Что в журнале ошибок Apache или журнале systemd?
2. В журнале Apache ничего нет (поскольку Apache мертв, он ничего не будет регистрировать). Я не уверен, где находится системный журнал, каково его местоположение по умолчанию?
3. Это не файл, вы должны взаимодействовать с ним через
journalctl
него. Журнал ошибок Apache обычно содержит что-то во время сбоя. Также убедитесь, что вы не нажимаете на oomkiller (у него были бы записи в системном журнале, если бы он был активирован).4. @coderanger Я обновил свой ответ, чтобы включить журналы.