Вопросы обновления или модернизации Портала возникают всякий раз, когда появляется очередные "заплатки" (patch) или новые версии. Риски связанные с этой операцией сведены к минимуму, но всё же они присутствуют и могут стать причиной "головной боли" для администратора, чтобы этого избежать необходимо ясно представлять всю картину и последовательность действий, которые необходимо соблюдать для получения успешных результатов. Обновление до версии Kablink 4xxx(базовая линейка)требует особых подготовительных действий т.к усложнилась архитектура и поменялась jdk, при этом остались неизменны основные действия которые требуются выполнить.
 
 tips  Прежде всего убедимся, что резервная копия есть и находится в актуальном состоянии.

 

1. План обновления

 Скачиваем свежею версию Kablink и распаковываем архив пакета в каталог kab (условно)

# mkdir /home/kab 
# tar xvf kablink-vibe-4.x.x-linux.tar -C kab

 Из каталога предыдущей версии kab_old копируем файл установок, что бы не вводить все параметры заново

cp /home/kab_old/installer.xml /kab

 Обновляем java JDK и удаляем старую версию jdk

 # rpm -Uvh jdk-8uxxx-linux-xxx.rpm
# rpm -qa|grep jdk
jdk1.8.0_xxx-1.8.0_xxx-fcs
# rpm -e jdk1.8.0_xxx-1.8.0_xxx-fcs

Сохранение локальных форм и определений

Локальные формы и определения могут быть потеряны при обновлении Портала

Рисунок №1 update img1

 

 Сохранение глобальных форм и определений

 Рисунок №2 update img2

 

 # /etc/init.d/teaming stop

2. Обновление

  Порядок выполнения операций не особенно важен, главное, последовательность ввода команд и их точность

Обновление базы данных MySQL

Распаковываем архив структуры базы данных MySQL

4kab]# unzip teaming-4.0.0-db.zip
4kab]# chmod -R 744 db

Редактируем права доступа к файлу сценария для создания таблиц

# cd db
db] # vim mysql-liquibase.properties
  driver: com.mysql.jdbc.Driver
  url:
  jdbc:mysql://localhost:3306/sitescape?useUnicode=true&characterEncoding=UTF-8
  username : root
  password : kablink
:qw

Проверяем кодировку utf-8 базы данных MySQL

db]# mysql -uroot -pkablink
mysql> use sitescape;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql> SHOW VARIABLES LIKE "character_set_database";
+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| character_set_database | utf8  |
+------------------------+-------+
1 row in set (0,00 sec)
mysql> quit 

Перестраиваем  базу данных MySQL Kablink

db] # ./manage-database.sh mysql updateDatabase
INFO :liquibase: Successfully acquired change log lock
INFO :liquibase: Reading from `DATABASECHANGELOG`
INFO :liquibase: Reading from DATABASECHANGELOG
...
WARNING :liquibase: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use and re-specify all configuration if this is the case
...
INFO :liquibase: ChangeSet scripts/changelog/mysql-changelog-quartz-1.8-to-2.2.xml::1-1::jong ran successfully in 9ms
INFO :liquibase: ChangeSet scripts/changelog/mysql-changelog-quartz-1.8-to-2.2.xml::1-2::jong ran successfully in 4ms
INFO :liquibase: ChangeSet scripts/changelog/mysql-changelog-quartz-1.8-to-2.2.xml::2-1::jong ran successfully in 36ms
...
INFO :liquibase: Marking ChangeSet: scripts/changelog/mysql-changelog-quartz-1.8-to-2.2.xml::5-7::jong::(Checksum: 3:a50e6cfc290ccee54f760206347e5036) ran despite precondition failure due to onFail='MARK_RAN':
          scripts/changelog/mysql-changelog-master.xml : Index FK_SSQRTZ_CRON_TRIGGERS_SSQRTZ_TRIGGERS does not exist
...
INFO :liquibase: ChangeSet scripts/changelog/mysql-changelog-quartz-1.8-to-2.2.xml::11-1::jong ran successfully in 42ms
INFO :liquibase: Successfully released change log lock
Liquibase Update Successful

Обновление пользовательских хранилищ Kablink

Для выполнения задачи обновления выбираем текстовый режим, доступен также GUI сценарий из графической среды

db] # cd ..
4kab]# ./installer-teaming.linux --text
...
1. New installation
2. Update software and settings
3. Reconfigure settings
Selection?  [2]:

...........
End: Apply Settings
Settings successfully applied.
Clearing JSP caches...
Getting database creation scripts....
Installation completed.You can start Novell Vibe by running the startup script:
/opt/novell/teaming/apache-tomcat/bin/teaming start

3. Выполнение задач после обновления Kablink

Проверяем локальное время контейнера apache-tomcat

# /opt/novell/teaming/apache-tomcat/bin/catalina.sh
JAVA_OPTS=....-Duser.timezone=GMT ...-Duser.timezone=Europe/Moscow

Прежде всего убедимся, что всё прошло без ошибок, для этого выполним команду

# /etc/init.d/teaming start

Компиляция сервлетов может занять некоторое время, следим за процессом загрузки

# tailf /opt/novell/teaming/apache-tomcat/logs/appserver.log

Если ошибок нет, регистрируемся на Портале как  admin и выполняем

Возвращение локальным форм и определений

 Рисунок №3  update img4

 

Возвращение глобальных форм и определений

Рисунок №4 update img5

 

Выполнение глобальной индексации хранилища

 Рисунок №5 update img 3

 

z1      Действия, Рис №1,Рис №2,Рис №3,Рис №4 строго не обязательны, но технологически правильны

Теперь, когда все действия прошли успешно,  можно перевести Портал в режим эксплуатации.

4. Обновление исправлений типа "заплатки" (patch)

  Теперь рассмотрим другой тип обновления, который касается небольших исправлений, "заплаток", относящихся в основном к контейнеру apache-tomcat. Сам файл с обновлением выглядит примерно так, vibe-4.x.x-PX-xxxxxxxx.zip, где 'x' это цифровая номенклатура присвоенная файлу исправлений. Познакомится подробно с самим списком включенных обновлений можно прочитав страничку readme.txt внутри zip архива. Прежде чем произвести обновление сделаем небольшие подготовительные мероприятия, а именно резервную копию каталога apache-tomcat, так на всякий случай, хотя сценарий отрабатывающий установку заплатки и создаёт свой резервный архив.

 home]# tar czfv apach_tom.tar /opt/novell/teaming

Разархивируем архив с исправлениями

# vibe-4.x.x-PX-xxxxxxxx.zip
unzip vibe-4.x.x-PX-xxxxxxxx.zip

Останавливаем Портал

 # /etc/init.d/teaming stop

Запускаем сценарий обновления Kablink

 # cd vibe-4.x.x-PX-xxxxxxxx
tclsh vibe-ftf-installer.tcl
Is Vibe shut down? [N]:Y
--------
/etc/init.d/teaming start

 

  Более подробную информацию можно получить на Kablink Документы