Содержание


Дисклеймер о текущих ограничениях и известных ошибках

Настоящий документ содержит информацию о текущих ограничениях и известных ошибках, обнаруженных при использовании инструмента миграции данных из Корпоративного сервера 2019 (далее - КС2019) в Корпоративный сервер 2024 (далее – КС2024). Мы стремимся обеспечить высокий уровень качества нашего продукта, однако на данный момент выявлены следующие проблемы, которые могут повлиять на функционирование и предупреждаем о возможных рисках его использования:

1. Интерфейс и настройки доступа:
  • В интерфейсе настроек доступа в КС2024 не отображаются права пользователей на документы, наследуемые от прав папок: Некоторые права пользователей могут не отображаться в интерфейсе КС2024, что может вводить в заблуждение при работе с делегированием прав на документы. При просмотре прав на документ отображаются только права выданные непосредственно на документ, права наследованные от папок не отображаются.
2. Права администратора:
  • Не мигрирует встроенная УЗ Администратора КС2019: Возможно отсутствие доступа к важному функционалу для отдельных групп пользователей.
  • Не мигрируют права администратора, выданные пользователю портала: Права администратора, выданные пользователям для работы с модулями портала, не переносятся в КС2024. Возможно отсутствие доступа к важному функционалу для отдельных групп пользователей.
3. Документы и папки:
  • Не мигрируют права на документы, добавленные в папку Общие с правами на Чтение: Возможна потеря доступа к отдельным документам.
4. Атрибуты пользователей:
  • Некорректно мигрируют даты создания пользователей: Даты создания учетных записей могут быть неправильно перенесены, что может искажать некоторую личную информацию пользователей.
  • Не мигрируют руководители пользователей: Информация о руководителях пользователей может быть потеряна. Необходимо ручное восстановление атрибутов пользователей.
  • Не мигрируют должности пользователей: Информация о должностях пользователей может быть потеряна. Необходимо ручное восстановление атрибутов пользователей.
  • Некорректно мигрирует телефонный код: Телефонные коды могут быть неправильно перенесены. Необходимо ручное восстановление атрибутов пользователей.
5. Проблемы доступа к информации:
  • При миграции УЗ с правами Гость получает права на редактирование к некоторым документам: Учетные записи с правами только на чтение могут получать непредусмотренные права на редактирование к некоторым документам, что может нарушать политику прав доступа к корпоративной информации. Под «некоторыми документами» понимаются документы КС2019 из папки «Общие», полный доступ к которым был выдан группе «Все». Для обхода данной ошибки перед выполнением миграции требуется исключить все УЗ с правами Гость из группы «Все».
  • Не мигрируют внешние ссылки на документы и папки: Возможно отсутствие доступа к определенным документам для отдельных групп пользователей.

Примечание: Обращаем внимание, что инструмент миграции находится в стадии активной разработки. В связи с этим просим не проводить миграцию без предварительного тестирования на непродуктивном контуре. Мы активно работаем над исправлением указанных ошибок и улучшаем функциональность инструмента миграции. Рекомендуем вам следить за обновлениями и устанавливать последние версии для получения исправлений и улучшений.

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

0. Предварительные условия миграции

  1. Корпоративный сервер 2024 должен быть установлен;
  2. Должны быть открыты сетевые взаимодействия между Корпоративным сервером 2019 и Корпоративным сервером 2024 по портам 3306, 2049;
  3. На Корпоративном сервере 2024 должен быть открыт порт 15672 для мониторинга.

В данной инструкции:

  • 172.17.7.77 — это Корпоративный сервер 2019;
  • 172.17.7.74 — это Корпоративный сервер 2024.

1. Предоставление доступа на Корпоративный сервер 2019

1.1. База данных

1.1.1. Создайте пользователя в БД r7-office с правами Select

CREATE USER 'cddisk'@'172.17.7.74' IDENTIFIED WITH mysql_native_password BY 'StrongSecurityPassword';
GRANT SELECT ON `r7-office`.* TO 'cddisk'@'172.17.7.74';

Где:

  • 172.17.7.74 — IP-адрес Корпоративного сервера 2024;
  • StrongSecurityPassword — пароль пользователя cddisk;
  • cddisk — пользователь, с доступом к БД;
  • r7-office — имя базы данных.

1.2. Предоставление доступа к файлам

1.2.1. Установите nfs сервер

# .deb
apt install nfs-kernel-server -y
# .rpm
yum install nfs-utils nfs4-acl-tools
# ALT Linux
apt-get install nfs-server
1.2.1.1. Запустите службу
systemctl start nfs-server
systemctl enable nfs-server

1.2.2. Добавьте каталог для создания сетевого ресурса

1.2.2.1. Откройте файл
nano /etc/exports
1.2.2.2. Добавьте строку
/var/www/r7-office/Data/Products/Files 172.17.7.74/32(rw,nohide,all_squash,anonuid=115,anongid=122,no_subtree_check)

Где:

  • /var/www/r7-office/Data/Products/Files — путь до каталога с файлами пользователей, где следующим является каталог «00»;
  • 172.17.7.74/32 — IP-адрес Корпоративного сервера 2024;
  • anonuid=115 — uid пользователя cddisk на Корпоративном сервере 2024;
  • anongid=122 — gid группы cddisk на Корпоративном сервере 2024.

Посмотреть uid и gid возможно командой

id cddisk

1.2.3. Примените изменения

exportfs -ra

1.3. Сессии файлов

1.3.1. Остановите сессии

Путь до скрипта:

bash /usr/bin/documentserver-prepare4shutdown.sh

1.3.2. Проверьте, что файлы не открываются на редактирование

2. Настройка на Корпоративном сервере 2024

2.1. Доступ к БД и NFS

2.1.1. Проверьте доступ к СУБД

telnet 172.17.7.77 3306
telnet 172.17.7.77 2049

Где:

  • 177.17.7.77 — IP-адрес Корпоративного сервера 2019;
  • 3306 — порт для MySQL;
  • 2049 — порт nfs.

2.2. Доступ к файлам

2.2.1. Установите клиент nfs

Эта команда установит необходимые программы для работы с файлами, которые хранятся на сервере с ПО Корпоративный сервер 2019.

# для deb
sudo apt-get install nfs-common
  
# для yum
sudo yum install nfs-utils

2.2.2. Создайте каталог

Эта команда создаст папку на вашем сервере, в которую будут монтироваться файлы с сервера с ПО Корпоративный сервер 2019.

mkdir /mnt/cs

2.2.3. Добавьте строку в /etc/fstab

Эта строка в файле fstab указывает, как подключить сетевую папку («шару») к вашей системе, чтобы она автоматически монтировалась при загрузке сервера.

172.17.7.77:/var/www/r7-office/Data/Products/Files /mnt/cs nfs defaults 0 2

Где:

  • 172.17.7.77 — IP-адрес Корпоративного сервера 2019;
  • /var/www/r7-office/Data/Products/Files — имя каталога, который сделали сетевым;
  • /mnt/cs — куда монтируется.

Замените StrongSecurityPassword на ваш реальный пароль.

2.2.4 Чтобы примонтировать сетевой каталог указанный на этапе 2.2.3 без перезагрузки сервера, выполните команду:

Эта команда монтирует сетевую папку, указанную в файле /etc/fstab.

mount -a

2.3 Проверьте наличие кода в Processing

2.3.1 /opt/r7-office/Processing/services.json

Проверить наличие кода:

Начиная со второй релизной версии, уже имеется, но может иметь другой вид, править не нужно.

{
      "name": "CS.UserImport",
      "handlers": [
        {
          "name": "ImportReadStatusEmailMessageHandler",
          "type": "ImportReadStatusEmailMessageHandler",
          "subscriptionEndpoint": "Import.Read.Status.Email",
          "useExchange": true,
          "degreeOfParallelism": 1
        },
        {
          "name": "ExportDataFromCsMessageHandler",
          "type": "ExportDataFromCsMessageHandler",
          "subscriptionEndpoint": "Export.Data.From.Cs",
          "folder": "/mnt/cs",
          "customer": 1,
          "useExchange": true,
          "degreeOfParallelism": 20
        },
        {
          "name": "ImportDataWithFilesFromCsToCdHandler",
          "type": "ImportDataWithFilesFromCsToCdHandler",
          "subscriptionEndpoint": "Import.User.From.Cs",
          "useExchange": true,
          "degreeOfParallelism": 4
        }
      ]
    },

Где:

  • "folder": /mnt/cs — путь к примонтированному каталогу от Корпоративного сервера 2019.

2.3.2 /opt/r7-office/Processing/appsettings.json

Найдите секцию ConnectionStrings:

"ConnectionStrings": {
"R7StorageServerUserActions": "Database=cddisk;Username=cddisk;Password=I85q8xvzzyZp;Host=localhost;Port=5432;",
"R7StorageServer": "Database=cddisk;Username=cddisk;Password=I85q8xvzzyZp;Host=localhost;Port=5432;",
"CommunityRepository": "Server=10.10.2.4;UserID=cddisk;Database=r7-office;Password=i1ONnPrnXi6pPDShkp",
"Payments": "Database=Payments;Username=cddisk;Password=I85q8xvzzyZp;Host=localhost;Port=5432;",
"GeoNames": "Database=GeoNames;Username=cddisk;Password=I85q8xvzzyZp;Host=localhost;Port=5432;"
},

Изменив значения в строке CommunityRepository:

# Данные для подключения к MySQL Корпоративного сервера 2019
"CommunityRepository": "Server=172.17.7.77;UserID=cddisk;Password=StrongSecurityPassword;Database=r7-office;SslMode=none"

Где:

  • 172.17.7.77 — IP-адрес Корпоративного сервера 2019;
  • cddisk — пользователя с доступом к БД Select;
  • StrongSecurityPassword — пароль пользователя;
  • r7-office — база данных Корпоративного сервера 2019.

2.3.3. Настройте почтовый сервер

2.3.3.1. Зайдите в Р7-Управление

https://admin.example.ru

Миграция Корпоративный сервер 2019 (Linux) на Корпоративный сервер 2024 (Linux)

 

2.3.3.2. Выберите Вашу организацию и отредактируйте её

Миграция Корпоративный сервер 2019 (Linux) на Корпоративный сервер 2024 (Linux)

Для того, чтобы изменить информацию об организации, нажмите в правом верхнем углу кнопку Редактировать Миграция Корпоративный сервер 2019 (Linux) на Корпоративный сервер 2024 (Linux).

2.3.3.3. Добавьте настройки почтового сервера

Важно, добавленный сервер должен быть единственным на время миграции.

В меню редактирования организации, перейдите на вкладку «Почтовые серверы»:

Миграция Корпоративный сервер 2019 (Linux) на Корпоративный сервер 2024 (Linux)

 

2.3.3.4. Пример настройки сервера
mail.r7-office.rur7-office.ru
mx.example.ru995None
mx.example.ru143StartTlsWhenAvailable
mx.example.ru587StartTls

2.4. Понизьте SSL протокол

Данный пункт необходим только, если используется почтовое решение, установленное по данной инструкции.

Если нет, переходите к п.2.5.

2.4.1. /etc/ssl/openssl.cnf

Приведите к виду:

MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=2

2.4.2. Перезапустите сервисы

supervisorctl restart all

2.5. Откройте доступ к rabbitmq

Данный пункт необходим для того, чтобы мониторить работу миграции в реальном времени.

2.5.1. Включите плагин

rabbitmq-plugins enable rabbitmq_management

2.5.2. Перезапустите сервис

systemctl restart rabbitmq-server

2.5.3. Создайте пользователя и выдаём права

rabbitmqctl add_user cddisk StrongSecurityPassword
rabbitmqctl set_permissions -p / cddisk ".*" ".*" ".*"
rabbitmqctl add_vhost 172.17.7.17
rabbitmqctl set_permissions -p 172.17.7.17 cddisk ".*" ".*" ".*"
rabbitmqctl set_user_tags cddisk administrator

Где:

  • cddisk — имя пользователя;
  • StrongSecurityPassword — пароль пользователя;
  • 172.17.7.17 — IP, для которого будет предоставлен доступ, например IP рабочего ноутбука;
  • administrator — права администратора.

2.5.4. Откройте порт 15672

sudo firewall-cmd --zone=home --add-port=15672/tcp
sudo firewall-cmd --runtime-to-permanent

2.6. Измените пароль r7_admin

2.6.1. Зайдите в профиль

Миграция Корпоративный сервер 2019 (Linux) на Корпоративный сервер 2024 (Linux)

 

2.6.2. Измените пароль

Перейдите на вкладку Безопасность:

Миграция Корпоративный сервер 2019 (Linux) на Корпоративный сервер 2024 (Linux)

 

И нажмите кнопку Сбросить пароль.

3. Запустите экспорт

Откройте страницу вида после авторизации под пользователем r7_admin:

https://disk.example.ru/api/v1/ExportFromCs/Start

Где:

  • disk.example.ru — URL вашего модуля Р7-Диск.

3.1. Следить за прогрессом можно в rabbitmq

http://172.17.7.74:15672

Миграция Корпоративный сервер 2019 (Linux) на Корпоративный сервер 2024 (Linux)

  • Для определение прогресса выполнение экспорта, можно следить за очередью Import.User.From.Cs;
  • Где количество сообщений — это количество пользователей которые в процессе переноса;
  • Далее следить можете за экспортом файлов, это очередь Export.Data.From.Cs.

4. Работы после экспорта

4.1. Проверьте авторизацию на портале

Например, https://admin.example.ru

Где:

  • admin.example.ru – URL вашего модуля Р7-Управление.

4.2. Проверьте работу документов в модуле Р7-Диск

Например, https://disk.example.ru

Где:

  • disk.example.ru – URL вашего модуля Р7-Диск.

4.3. Проверьте модуль Р7-почта

Например, https://mail.example.ru

Где:

  • mail.example.ru – URL вашего модуля Р7-Почта.

4.4. Проверьте Р7-календарь

Например, https://calendar.example.ru

Где:

  • calendar.example.ru – URL вашего модуля Р7-Календарь.

5. Отключаем возможность повторной миграции

5.1. Удаляем пользователя с БД MySQL на Корпоративном сервере 2019, либо на вынесенной отдельно БД MySQL Master

5.1.1. Войдите в консоль MySQL как пользователь root

mysql -u root -p

5.1.2. Удалите пользователя в БД r7-office с правами Select

DROP USER 'cddisk'@'172.17.7.74';

Где:

  • 172.17.7.74 — IP-адрес Корпоративного сервера 2024;

5.2. Отключаем экспорт через nfs на Корпоративном сервере 2019

5.2.1. Удалите строки в файле exports

5.2.1.1. Откройте файл exports
nano /etc/exports
5.2.1.2. Затем удалите строку ранее прописанную в файле exports
/var/www/r7-office/Data/Products/Files 172.17.7.74/32(rw,nohide,all_squash,anonuid=115,anongid=122,no_subtree_check)

Где:

  • /var/www/r7-office/Data/Products/Files — путь до каталога с файлами пользователей, где следующим является каталог «00»;
  • 172.17.7.74/32 — IP-адрес Корпоративного сервера 2024;
  • anonuid=115uid пользователя cddisk Корпоративном сервере 2024;
  • anongid=122gid группы cddisk на Корпоративном сервере 2024.

Либо удалите полностью файл, если никакой иной экспорт на сервере не производится средствами nfs:

sudo rm /etc/exports

5.2.2. Отключаем службу nfs-server на Корпоративном сервере 2019

5.2.2.1. Отключите службу
systemctl stop nfs-server
systemctl disable nfs-server
5.2.2.2. Закройте порт 2049
sudo firewall-cmd --zone=home --remove-port=2049/nfs
sudo firewall-cmd --runtime-to-permanent

5.3. Запускаем службы DS остановленные ранее на Корпоративном сервере 2019

Если сервер DS для Корпоративного сервера 2019 вынесен отдельно, делайте это на нём.

sudo systemctl restart ds-docservice.service ds-converter.service ds-metrics.service

5.4. Работы на стороне сервера с ПО Корпоративный сервер 2024

5.4.1. Выключите плагин

rabbitmq-plugins enable rabbitmq_management

5.4.2. Закройте порт 15672

sudo firewall-cmd --zone=home --remove-port=15672/tcp
sudo firewall-cmd --runtime-to-permanent

5.4.3. Размонтируйте сетевой диск

nano /etc/fstab

Удалите строку:

172.17.7.77:/var/www/r7-office/Data/Products/Files /mnt/cs nfs defaults 0 2

Размонтируйте сетевой диск:

umount -l -f /mnt/cs

 

Была ли полезна статья?
Позвольте нам стать лучше
Дополнительные материалы