Кирилл Шушкин написал: Скажите а установку bitrix environment на CentOS 7 в OpenVZ починили?
Кирилл Шушкин , на данный момент нет. В планах есть чинить (там не только установка) и выпускать бета версией, позже в релиз.
У меня опять после очередного обновления ОС слетел КОТ. Судя по всему, до сих пор не починили проблему. ОС и VM устанавливал недавно, путем полной переустановки всего и вся, просто надоели глюки. Пытаюсь найти, куда вписать чтобы КОТ не падал, вроде где то была инфа, .но затерлось все после переустановки. Обновления зло, давно так уже думаю... Непонятно что улучшается, но текущее, довольно часто, ухудшается
vsologubov , OpenVZ исправлялся в 7.3.13 beta. Правок было много и не только по OpenVZ. А что у вас ухудшилось? Что такое КОТ??
Сообщите, пожалуйста, когда исправление для OpenVZ перейдёт в stable? Полтора года для решения одной проблемы кажется слишком большим сроком.
Заранее спасибо за Ваш ответ.
Bitrix-env и OpenVZ, Проблемы с установкой Битрикс окружения на OpenVZ
Что касается IS_CENTOS73, здесь вообще ничего не понятно, поскольку единственное место, где используется данная переменная никогда не сработает, если у Вас Centos 7:
Код
configure_nodejs(){
if [[ $IS_CENTOS7 -eq 0 ]]; then
curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - >>$LOGS_FILE 2>&1
else
if [[ $IS_CENTOS73 -gt 0 ]]; then
rpm -ivh \
https://kojipkgs.fedoraproject.org//packages/http-parser/2.7.1/3.el7/x86_64/http-parser-2.7.1-3.el7.x86_64.rpm \
>>$LOGS_FILE 2>&1
fi
fi
По сути тут условие else можно удалить и заменить чем-нибудь полезным.
2) Отсутствие ethtool в зависимостях или хотя бы наличие установки данного пакета в скрипте установки окружения, если же без него menu.sh не может корректно работать.
В случае отсутствия ethtool по-умолчанию на сервере получаем следующую ошибку:
Код
/opt/webdir/bin/bitrix_utils.sh: line 644: ethtool: command not found
Теперь по /opt/webdir/bin/bitrix_utils.sh
1) Определение ОС и её версии.
Первый пункт аналогичен первому пункту скрипта установки, разве, что код определения версии отличается:
configure_iptables(){
[[ -z $OS_VERSION ]] && get_os_type
if [[ $OS_VERSION -eq 7 ]]; then
if [[ $() -eq 0 ]]; then
# http://jabber.bx/view.php?id=89409
rpm -qi firewalld >/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU0061"
yum -y install firewalld >/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU2032"
return 2
fi
fi
systemctl enable firewalld
systemctl start firewalld
if [[ $? -gt 0 ]]; then
log_to_file "$BU2033"
return 2
fi
fi
public_firewalld
public_firewalld_rtn=$?
else
# openvz
iptables -L INPUT -n 1>/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU2034"
return 2
fi
if [[ $IS_OPENVZ -gt 0 ]]; then
iptables -I INPUT -m tcp -p tcp --dport 80 -j ACCEPT 1>/dev/null 2>&1 && \
iptables -I INPUT -m tcp -p tcp --dport 443 -j ACCEPT 1>/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU2035"
return 2
fi
else
iptables -I INPUT -m tcp -p tcp \
-m state --state NEW --dport 80 -j ACCEPT 1>/dev/null 2>&1 && \
iptables -I INPUT -m tcp -p tcp \
-m state --state NEW --dport 443 -j ACCEPT 1>/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU2035"
return 2
fi
fi
log_to_file "$BU0062"
iptables-save > /etc/sysconfig/iptables
return 0
fi
}
Здесь получается в целом неразбериха. Секция, которая срабатывает после условия else предназначается для openvz или она не должна в openvz сработать? Проблема в том, что секция else никогда не сработает для ОС Centos 7.
Если Вам требуется помощь в администрировании, то мы будем рады Вам помочь.
Bitrix-env и OpenVZ, Проблемы с установкой Битрикс окружения на OpenVZ
Как мы смогли выяснить, окружение пробует подгрузить Ваши правила iptables, затем это не удаётся из-за отсутствия модуля nat для iptables и на этом процесс останавливается, при этом цепочки iptables остаются с политикой DROP. Уточните, пожалуйста, для чего были сделаны столь излишние правила для iptables и почему отсутствует проверка на наличие модуля и отказ грузить правила, если модуля nat нету?
Bitrix-env и OpenVZ, Проблемы с установкой Битрикс окружения на OpenVZ
Уточните, пожалуйста, была ли исправлена данная проблема? К сожалению, мы всё еще сталкиваемся с тем, что при установке окружения правила iptables имеют статус DROP.
Bitrix-env и OpenVZ, Проблемы с установкой Битрикс окружения на OpenVZ
В данном коде должен проверяться файл /proc/user_beancounters.
Также стоит обратить внимание на функцию configure_iptables.
Код
configure_iptables(){
[[ -z $OS_VERSION ]] && get_os_type
if [[ $OS_VERSION -eq 7 ]]; then
if [[ $(systemctl is-active firewalld | grep -wc active) -eq 0 ]]; then
# http://jabber.bx/view.php?id=89409
rpm -qi firewalld >/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU0061"
yum -y install firewalld >/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU2032"
return 2
fi
fi
systemctl enable firewalld
systemctl start firewalld
if [[ $? -gt 0 ]]; then
log_to_file "$BU2033"
return 2
fi
fi
public_firewalld
public_firewalld_rtn=$?
else
# openvz
iptables -L INPUT -n 1>/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU2034"
return 2
fi
if [[ $IS_OPENVZ -gt 0 ]]; then
iptables -I INPUT -m tcp -p tcp --dport 80 -j ACCEPT 1>/dev/null 2>&1 && \
iptables -I INPUT -m tcp -p tcp --dport 443 -j ACCEPT 1>/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU2035"
return 2
fi
else
iptables -I INPUT -m tcp -p tcp \
-m state --state NEW --dport 80 -j ACCEPT 1>/dev/null 2>&1 && \
iptables -I INPUT -m tcp -p tcp \
-m state --state NEW --dport 443 -j ACCEPT 1>/dev/null 2>&1
if [[ $? -gt 0 ]]; then
log_to_file "$BU2035"
return 2
fi
fi
log_to_file "$BU0062"
iptables-save > /etc/sysconfig/iptables
return 0
fi
}
В данном случае условие else никогда не сработает на системе Centos 7. Скорее всего Вам нужна была подобная проверка в первом условии:
Код
[[ $OS_VERSION -eq 7 ]] && [[ $IS_OPENVZ -eq 0 ]]
Данная информация относилась к файлу /opt/webdir/bin/bitrix_utils.sh
В случае, если первый пункт выполнится на сервере с OpenVZ, сеть будет отрублена, поскольку сервис firewalld не запустится, а Вы не проверяете данный момент и пишете, что всё ОК. Также стоит отметить, что вывод функции configure_iptables в скрипте bitrix-env.sh перенаправлен в /dev/null. Если убрать данное перенаправление при оригинальном файле /opt/webdir/bin/bitrix_utils.sh, то можно увидеть, что firewall настраивается в итоге с ошибками:
Код
====================================================================
Bitrix Environment for Linux installation script.
Yes will be assumed to answers, and will be defaulted.
'n' or 'no' will result in a No answer, anything else will be a yes.
This script MUST be run as root or it will fail
====================================================================
Update system. Please wait.
EPEL repository is already configured on the server.
Getting configuration REMI repository. Please wait.
Configuration REMI repository is completed.
Configuration Percona repository is completed.
Getting configuration Bitrix repository. Please wait.
Configuration Bitrix repository is completed.
Update system. Please wait.
Install php packages. Please wait.
Install bitrix-env package. Please wait.
Root account created during the MySQL installation procedure.
You can find root password at /root/.my.cnf client config file.
Anonymous users removed from MySQL service
Remote root access to MySQL service disabled
All 'test' DB privileges revoked.
MySQL privileges restarted.
Main configuration of mysql security is complete
success
success
Error: COMMAND_FAILED
Firewall configuration is completed.
Bitrix Environment bitrix-env installation is completed.
В случае, если Вам для проверки потребуется сервер с OpenVZ, то мы готовы его для Вас предоставить.
Благодарим за внимание и ожидаем скорейшего решения данной проблемы.