Перевод продуктов на пакетный метод установки

Материал из ISPWiki
Перейти к: навигация, поиск

Порядок перевода продуктов со старого способа установки (через COREmanager) на новый (через пакетный менеджер ОС).

В настоящее время поддерживается только CentOS-6 и Debian-7 с версии COREmanager 5.21


Для начала необходимо выполнить обновление ПО до последней версии в рамках выбранного уровня стабильности (beta или stable).

Для ISPmanager рекомендуется запустить команду

/usr/local/mgr5/sbin/mgrctl -m ispmgr software

И убедиться, что для всех программных продуктов указана правильная версия (например, version=nginx-full-1.2.1-2.2+wheezy3) и состояние "сконфигурирован" (state=configured)


Далее нужно скачать скрипт convert.py

wget http://master.download.ispsystem.com/convert.py

Для запуска скрипта на сервере необходим python. Скорее всего, он уже будет установлен. Если нет, то запустите:

  • CentOS:
    yum install python
  • Debian:
    apt-get update && apt-get install python


Для запуска скрипта нужно выполнить

python convert.py

или

chmod +x convert.py && ./convert.py

Все логи скрипт пишет только на экран, если вы хотите сохранить их, то

python convert.py 2>&1| tee -a convert.log

Если необходимо перейти не на последнюю версию продукта, а обновиться до определенной версии, то скрипт конвертации можно запустить с параметром --release, например:

python convert.py --release 5.60

где 5.60 - желаемая версия.

Технические подробности

Данный скрипт:

  • Подключит репозиторий, если он не подключен.
  • Определит список установленных продуктов. [1]
  • Определит список пакетов, которые требуется установить. [2]
  • Создаст резервную копию директории /usr/local/mgr5 в файл /root/isp_backup.tgz
  • Установит переменную окружения ISPCONVERT=yes
  • Запустит установку пакетов, с подтверждением установки. [3]
  • Выполнит некоторые послеустановочные действия. [4]

Если что-то (например, NSD) не поддерживается в пакетной версии, то соответствующий пакет установлен не будет(ввиду его отсутствия), но ПО продолжит работать, так как из кода поддержка не убирается и настройки продукта не трогаются.

ISPmanager

При конвертации меняется пароль в админку afterlogic. Посмотреть его можно в файле /usr/local/mgr5/www/webmail-afterlogic/webmail/data/settings/settings.xml

Список пакетов для установки составляется согласно сконфигурированному ПО в разделе Программное обеспечение. Убедитесь, что в нем нет проблем.

VMmanager

Конвертация выполняется только на мастер-ноде. После выполнения установки пакета, будет вызвана функция afterupdate ispconvert=yes, которая произведёт конвертацию на нодах. О наличии ошибок при конвертации нод можно узнать в разделе "Проблемы"

VMmanager-OVZ

Используется ли мастер нода в качестве обслуживающей, определяется по налиичии записи manager vemini в файле /usr/local/mgr5/etc/mgrlist.conf. Если строки нет, нода обслуживающей не считается и пакет vmmanager-ovz-vemini установлен не будет.

VMmanager-KVM

Пакет vmmanager-kvm-vmnode ставится на мастер-ноду при конвертации всегда, так как не требует дополнительных зависимостей и ни на что не влияет при неиспользовании ноды, в качестве обслуживающей.

Примечания

  1. Это будет выполнено, если нет файла /usr/local/mgr5/tmp/.mgr_list. Если файл есть, список пакетов будет взят оттуда(файл в формате pickle). После определения списка, скрипт создаёт этот файл.
  2. Это будет выполнено, если нет файла /usr/local/mgr5/tmp/.pkg_list. Если файл есть, список пакетов будет взят оттуда(файл в формате pickle). После определения списка, скрипт создаёт этот файл.
  3. Это будет выполнено, если нет файла /usr/local/mgr5/tmp/.pkg_installed. Если файл есть, действие пропустится. После установки файл будет создан.
  4. Это будет выполнено, если нет файла /usr/local/mgr5/tmp/.post_run_ok. Если файл есть, действие пропустится. После установки файл будет создан.