本文档适用于 Zimbra Daffodil 版本 10.0 和 10.1.0。
许可证
Synacor, Inc.,2022-2023
© 2022-2023 Synacor, Inc. Zimbra Daffodil (v10) 多节点 NG 模块通过就地升级迁移指南
本作品已获得 Creative Commons 许可归因-相同方式共享 4.0 国际许可,除非您与其他许可协议 Synacor, Inc. 另有规定。要查看此许可证的副本,请访问 http://creativecommons.org/licenses/by-sa/4.0或写信给 Creative Commons,邮政信箱 1866,山景城,CA 94042,美国。
Synacor, Inc.,2022-2023
埃利科特街 505 号,A39 室
布法罗, 纽约 14203
US
Zimbra Daffodil (v10.1) 中引入的许可更改
Zimbra Daffodil (v10.1) 开始引入了新的许可系统,该系统允许更灵活地管理许可证并启用未来的细粒度功能附加组件。
添加了名为许可证守护程序服务 (LDS) 的新服务,它是支持许可证管理所需的服务。
在开始迁移之前,请参阅Zimbra Daffodil (v10.1) 许可部分并查看更改。
简介
本指南提供使用就地迁移方法将 8.8.15/9.0.0 多服务器环境迁移到 Zimbra Collaboration Daffodil (v10) 的步骤。就地迁移方法允许您将 Daffodil 版本安装到当前的生产系统上。为了能够使用此方法,正在使用的操作系统必须受当前生产版本和 Daffodil 支持。
您还可以参考本指南,从具有Zimbra Suite Plus (ZSP)设置的现有8.8.15-FOSS执行迁移。
就地升级还支持带或不带 NG 模块的实例。 Zimbra Collaboration 与 NG 模块一起安装时会安装以下模块:
-
分层存储管理。
-
备份和恢复。
-
移动 - ActiveSync。
-
设备管理 - ABQ。
-
委派管理员。
-
驱动器。
-
连接。
| 仅运行最新补丁版本的 Zimbra Collaboration 8.8.15 和 9.0.0 版本支持迁移。 |
| 此迁移实用程序当前不支持 Zimbra Connect / Chat 数据的迁移。 |
|
执行这些步骤时,建议在测试环境中进行测试并确保有备份以防万一。 此外,本指南的创建步骤可以一次性完成,也可以在不同的维护时段内完成。
受众
本迁移指南假定您对系统管理概念和任务有透彻的了解,并且熟悉电子邮件通信标准、安全概念、目录服务和数据库管理。
概述和先决条件
多服务器环境是一个或多个 Zimbra 组件安装在单独的服务器上的环境。每个客户的环境可能有所不同,但常见的环境是每个模块(LDAP、代理、MTA 和邮箱)的多个实例安装在独立的服务器上。
| 要执行就地升级,当前操作系统必须支持 Daffodil (v10) 服务器。 |
升级多服务器环境时,升级过程是按以下顺序升级每个组件内的所有模块:
-
LDAP 服务器
-
代理服务器
-
MTA 服务器
-
邮箱服务器
对于在同一服务器上运行多个非邮箱模块的环境,您需要首先升级包含 LDAP 的服务器,然后在开始升级任何邮箱服务器之前升级剩余的非邮箱服务器。
对于运行 NG 模块的客户,NG 模块安装在邮箱服务器上,并且非邮箱模块的升级过程没有变化。
在升级过程中,Zimbra 建议执行以下步骤:
-
测试并验证升级过程。
-
验证是否有最新的备份和/或在升级之前拍摄快照。
-
准备系统升级并记录所有自定义。
-
执行 LDAP、代理和 MTA 服务器的就地升级。
-
在邮箱服务器上,安装 NG 迁移工具并导出 NG 数据。
-
停止到邮箱服务器的所有流量。
-
在邮箱服务器上执行就地升级。
-
将 NG 数据和自定义导入到新的 Daffodil (v10) 系统。
-
测试升级系统。
-
启用流量
以下是高级的升级过程非邮箱服务器,但如果您需要比下面提供的更多指导,请打开支持案例,Zimbra 支持可以帮助您:
-
识别、记录和删除对 LDAP、代理、MTA 的任何自定义
-
下载并解压缩 Daffodil (v10) 安装程序,该安装程序可从下载中获取页。
-
运行
install.sh并按照屏幕上的说明升级节点。 -
重新安装自定义
此时所有非邮箱服务器都运行 Daffodil (v10),所有邮箱服务器都运行升级前版本。
在邮箱服务器上安装 NG 迁移工具。
在升级到 Daffodil (v10) 期间,现有的 NG 模块将被删除并替换为新的 Daffodil (v10) 模块。为了简化此过程,Zimbra 提供了 NG 迁移工具。该工具允许您在升级前导出当前的 NG 配置,然后在升级完成后将其恢复到 Daffodil (v10) 系统中。
在许多情况下,很少或不需要运行这些步骤,但这完全取决于 NG 模块的使用方式。可以迁移以下 NG 功能:
-
NG核心:
-
高速加工机
-
移动的:
-
共享配置
-
设备管理 - ABQ
-
-
委派管理员
-
-
驱动器
不需要或不支持迁移工具中提供的其他迁移功能,例如用于外部存储和备份的分层存储管理。
| 如果您使用 Zimbra Connect 或 Chat,请注意,目前不支持迁移这些模块。请联系 Zimbra 支持或销售人员获取指导。 |
| 导出数据不需要停机,但我们建议在升级之前导出数据,以确保它是最新的。 |
| 导出/导入命令中使用的管理员用户是服务器上的全局管理员。 |
下载并安装迁移工具
迁移实用程序包可在 Zimbra 的公共存储库中找到,并且需要安装在每个 Daffodil (v10) 邮箱服务器上。
以下是下载和安装迁移实用程序的步骤。
-
在 RHEL/CentOS 系统上,执行为root:
yum clean metadata yum check-update yum install zimbra-modules-porter
-
在 Ubuntu 系统上,执行为root:
apt-get update
apt-get install zimbra-modules-porter
安装成功后,一条命令zmmodulesport将在服务器上可用。
可迁移的数据有 3 种类型:
-
全局数据- 在升级任何邮箱服务器之前/之后只需导出/导入一次。
-
服务器数据- 需要在升级每个邮箱服务器之前/之后导出/导入。
-
用户数据- 需要在升级每个邮箱服务器之前/之后为属于邮箱服务器的用户导出/导入。
以下是支持的迁移模块的详细信息:
NG 模块 |
已被 Zimbra-10 模块替换 |
实用程序中的选项 |
类型 |
分层存储管理 |
存储管理 |
hsm |
服务器 |
备份和恢复 |
备份和恢复 |
备份 |
服务器 |
移动 |
Zimbra 移动同步 |
移动 |
全局 |
ABQ |
Zimbra 设备管理 |
移动 |
全局 |
委派管理员 |
委派管理员 |
管理 |
全局 |
驱动器 |
Zimbra 公文包 |
驱动器 |
用户 |
导出邮箱服务器上的 NG 数据
导出 HSM
| 不使用 HSM 或使用非 S3 卷的客户可以跳过此步骤。 |
| 由于它是服务器数据,因此您需要为每个邮箱服务器导出它。 |
要使用zmmodulesport导出 HSM 数据,请以zimbra用户身份执行命令:
su - zimbra
zmmodulesport system export --modules=hsm --filename=hsm-data --server=server.com --username=admin@domain.com --password=admin_passwd >> /opt/zimbra/log/hsm-export.log
A filehsm-data.tgz将在/opt/zimbra/tmp/modules/hsm/.
导出委派管理
| 中创建 因为它是Global数据,您只需从要升级的第一个邮箱服务器导出一次。 |
要使用zmmodulesport导出委派管理数据,请以zimbra用户身份执行命令:
su - zimbra
zmmodulesport system export --modules=admin --filename=admin-data --server=server.com --username=admin@domain.com --password=admin_passwd >> /opt/zimbra/log/da-export.log
这将创建一个文件admin-data.tgz下/opt/zimbra/tmp/modules/admin.
| 系统升级到 Daffodil 后,委派管理员将无法管理帐户,直到导入 NG 委派管理员数据或启用 Daffodil 管理员权限。 |
导出移动配置
| 由于它是全局数据,因此您只需从要升级的第一个邮箱服务器将其导出一次。 |
使用 ABQ 和/或共享文件夹同步的客户将需要迁移其配置。移动迁移数据包括 ABQ 规则和移动设备的共享文件夹配置。
使用导出移动数据zmmodulesport,以zimbra用户身份执行命令:
su - zimbra
zmmodulesport system export --modules=mobile --filename=mobile-data1 --server=server.com --username=admin@domain.com --password=admin_passwd >> /opt/zimbra/log/mobile-export.log
这将在下创建一个文件mobile-data1.tgz __ZSEP_9f7__/opt/zimbra/tmp/modules/mobile.
导出备份和恢复配置
| 由于它是服务器数据,因此您需要为每个邮箱服务器导出它。 |
迁移实用程序仅在 COS 启用/禁用备份和恢复功能时提供信息。
要使用zmmodulesport导出备份数据,请以zimbra用户身份执行命令:
su - zimbra
zmmodulesport system export --modules=backup --filename=backup-data --server=server.com --username=admin@domain.com --password=admin_passwd >> /opt/zimbra/log/br-export.log
这将创建一个文件backup-data.tgz下/opt/zimbra/tmp/modules/backup.
导入备份和恢复配置
| 由于它是服务器数据,因此您需要为每个邮箱服务器导入它。 |
| 无法通过该实用程序导入备份和恢复配置。您必须手动更新系统上的域/用户的配置。 |
| Daffodil (v10) 和 NG 备份包含不同的格式,您将无法直接使用 Daffodil (v10) 备份和恢复功能来恢复 NG 备份。此外,如果 NG 备份用于灾难恢复以外的任何用途,我们建议将 NG 备份复制到存档位置。 Zimbra 创建了一个工具,允许恢复消息数据,仅用于审核和恢复目的。 |
手动检查备份配置:
-
提取导出的backup-data.tgz文件。
-
在解压后的目录中,打开 json 文件,查看Enabled值的 COS。
-
登录 server.com 的管理控制台。
-
转到配置 → 全局设置 → 备份/恢复.
-
下选择要备份的用户 → 域和 COS,点击添加 COS按钮,在 json 文件中添加启用备份的 COS。
-
如果有多个 COS,请重复步骤。单击“保存”。
设置备份配置后,将为每晚迁移的任何新帐户创建完整备份。当当天迁移目标帐户后,可以手动执行备份。
导出驱动器数据
| 由于它是用户数据,因此您需要为每个邮箱服务器导出它,这将导出属于该邮箱服务器的帐户的数据。 |
使用 Drive 的客户需要导出用户的 Drive 数据,以便在升级后将其导入到用户公文包中。
要使用zmmodulesport导出云端硬盘数据,请以zimbra用户身份执行命令:
su - zimbra
zmmodulesport account export --modules=drive --filename=drive-data --server=server.com --username=admin@domain.com --password=admin_passwd >> /opt/zimbra/log/drive-export.log
这将创建一个文件驱动器数据.tgz下/opt/zimbra/tmp/模块/驱动器.
可以为系统上的单个用户、多个用户或所有帐户导出驱动器数据,以下是创建请求时可以使用的选项:
这account选项支持以下内容:
选项 |
说明 |
--accounts=* |
导出所有帐户。 |
--accounts=name@domain |
导出单个帐户。 |
--accounts=name1@domain1,name2@domain2 |
导出多个帐户 |
--accounts=/path/to/accounts-file.txt |
导出文件中列出的帐户。这些帐户必须在新行中列出。 |
--accounts=domain |
导出服务器上指定域的所有可用帐户。 |
|
对于用户的 Drive 数据量不大的系统,建议使用--accounts=* 选项。 请注意,此选项将仅导出执行该命令的同一邮箱服务器上托管的电子邮件帐户的云端硬盘数据。它不包括驻留在其他邮箱服务器上的帐户。 |
如果您的环境包含多个邮箱服务器,您将需要在每个服务器上单独运行此命令以导出所有用户的云端硬盘数据。
升级前禁用移动同步
由于此时尚未导入 ABQ 规则并将在升级后完成,因此建议为所有用户禁用移动同步。这是为了限制已配置的设备在升级后立即同步。由于同步的数据量较大,还可能导致 CPU 和 IO 峰值。
升级后,我们将导入 ABQ 规则,然后启用 Mobile Sync,这将强制连接的设备遵守 ABQ 规则。
zmprov ma <account@domain.com> zimbraFeatureMobileSyncEnabled FALSE
定制并准备升级。
就地升级将删除大多数自定义项。在开始升级之前,我们建议您检查您的系统并记录所有自定义设置,以便升级完成后,您可以根据需要验证并重新应用任何缺失的自定义设置。
将邮箱服务器升级到 Daffodil (v10)
是时候升级您的邮箱服务器了。下载并解压 Daffodil (v10) 安装程序,该安装程序可从下载页面获取。我们还建议关闭邮箱服务器的所有端口,以防止新邮件、设备和用户在升级期间访问系统。
通过运行以下命令禁用 NG 模块:
zmprov ms `zmhostname` zimbraNetworkModulesNGEnabled FALSE
删除 NG 模块:
zmzimletctl undeploy com_zextras_client
zmzimletctl undeploy com_zextras_drive_open
zmzimletctl undeploy com_zextras_zextras
zmzimletctl undeploy com_zextras_drive
在系统上添加 OnlyOffice 存储库。
| 如果您不使用 Zimbra Docs 或升级到 Daffodil (v10) 后不打算使用它,则可以跳过本节。 |
以下是步骤。以root用户
-
RHEL 7
$ cat > /etc/yum.repos.d/zimbra-onlyoffice.repo <<EOF
[zimbra-onlyoffice]
name=Zimbra Onlyoffice RPM Repository
baseurl=https://repo.zimbra.com/rpm/onlyoffice/rhel7
gpgcheck=1
enabled=1
EOF
$ yum --disablerepo=* --enablerepo=zimbra-onlyoffice clean metadata
$ yum check-update --disablerepo=* --enablerepo=zimbra-onlyoffice --noplugins
-
RHEL 8 身份执行命令
$ cat > /etc/yum.repos.d/zimbra-onlyoffice.repo <<EOF
[zimbra-onlyoffice]
name=Zimbra Onlyoffice RPM Repository
baseurl=https://repo.zimbra.com/rpm/onlyoffice/rhel8
gpgcheck=1
enabled=1
EOF
$ yum --disablerepo=* --enablerepo=zimbra-onlyoffice clean metadata
$ yum check-update --disablerepo=* --enablerepo=zimbra-onlyoffice --noplugins
-
乌班图 18
$ cat > /etc/apt/sources.list.d/zimbra-onlyoffice.list << EOF deb [arch=amd64] https://repo.zimbra.com/apt/onlyoffice bionic zimbra deb-src [arch=amd64] https://repo.zimbra.com/apt/onlyoffice bionic zimbra EOF $ apt-get update
-
乌班图 20
$ cat > /etc/apt/sources.list.d/zimbra-onlyoffice.list << EOF deb [arch=amd64] https://repo.zimbra.com/apt/onlyoffice focal zimbra deb-src [arch=amd64] https://repo.zimbra.com/apt/onlyoffice focal zimbra EOF $ apt-get update
升级系统
运行install.sh与--skip-ng-check标志和第一个问题是关于许可协议的:
Do you agree with the terms of the software license agreement? [N] Y
如果您收到以下警告,则意味着未使用skip-ng-check标志:
在此系统上检测到 NG 模块。如果继续此升级,NG 模块包和关联数据将被删除。 如果您想保留 NG 数据,请考虑迁移或滚动升级策略来升级系统。 如需了解更多信息,请联系 Zimbra 支持。 如果您仍想继续,请使用 --skip-ng-check
开始升级。接受许可证后,Daffodil 安装程序将通知您备份不存在,并询问您是否要继续。
Do you wish to continue without a backup? [N] Y
发生这种情况是因为它正在检查是否有 Daffodil 备份,而此时尚未创建备份。由于存在 NG 备份和/或快照,因此选择 Y 并继续。
安装程序将询问您是否要进行消息存储数据库完整性检查,选择 Enter 继续检查:
Do you want to verify message store database integrity? [Y]
系统将询问您是否希望使用 zimbra 存储库,如果您希望继续升级,请选择 Enter 继续。
Use Zimbra's package repository [Y] Do you wish to upgrade? [Y]
安装程序会询问您是否要安装尚未安装的软件包,Daffodil 的两个新软件包是zimbra-onlyoffice以及聊天和视频。zimbra-onlyoffice适用于所有获得许可的客户,并且可以在此时或稍后安装。想要使用 Zimbra 文档和协作功能的客户,仅限 zimbra 的办公室此时应该安装。
| 对于当前使用 Zimbra 聊天和视频的客户,请联系 Zimbra 销售人员或打开支持案例,了解有关 Daffadil 中聊天和视频的更多信息。对于新的聊天和视频演示感兴趣的客户,请联系 Zimbra 销售人员了解更多信息。 |
Install zimbra-archiving [N]
Install zimbra-onlyoffice [N] Y
Upgrading zimbra-license-tools
Upgrading zimbra-license-extension
Upgrading zimbra-network-store
Upgrading zimbra-patch
Upgrading zimbra-mta-patch
Upgrading zimbra-proxy-patch
Install chat and video features [N] Y
选择新软件包后,安装程序将询问您是否要升级:
The system will be modified. Continue? [N]
选择Y然后输入继续升级。 完成后,您将看到以下内容:
Finished installing network zimlets.
Getting list of all zimlets...done.
Updating non-standard zimlets...
Finished updating non-standard zimlets.
Restarting mailboxd...done.
Skipping creation of default domain GAL sync account - existing install detected.
Setting up zimbra crontab...done.
Moving /tmp/zmsetup.yyyymmdd-hhmmss.log to /opt/zimbra/log
Configuration complete - press return to exit
您的系统已升级到 Daffodil。
导入 NG 数据并应用自定义
升级的最后阶段包括导入 NG 数据并应用服务器上的任何自定义。
导入 HSM
| 由于它是服务器数据,因此您需要为每个邮箱服务器导入它。 |
| 在使服务器上线或进行任何测试之前恢复 HSM 配置至关重要。这将确保导入后可以访问电子邮件。这是服务器配置,需要从每个商店获取该配置并将其恢复到每个商店。 |
在 Daffodil (v10) 中,定位器格式与 NG HSM 不同。定位器是指向每条消息在数据库中的 blob 位置的指针。因此,在导入 HSM 配置时,命令中必须包含一个附加选项,以更新服务器上所有用户的定位器。
以下是选项的详细信息:
-
--t=inplace- 包含就地升级方法的选项。
-
-l- 启用定位器更新的选项。
-
-uam- 更新所有邮箱定位器的选项。导入 HSM 数据时将其设置为 TRUE,以便在导入 HSM 数据时将定位器更新为新格式。
请参阅管理指南了解更多详细信息。
如果定位器选项未传递给导入命令,定位器将不会更新为新格式,用户在查看电子邮件时可能会看到Missing Blob错误。
|
-
作为
zimbra用户,执行以下命令:
su - zimbra zmmodulesport system import --modules=hsm --filename=hsm-data --t=inplace --server=server.com --username=admin@domain.com --password=admin_passwd -l=true -uam=true >> /opt/zimbra/log/hsm-import.log
如果定位器在导入期间未更新,则可以在迁移 HSM 数据后更新它们。作为zimbra用户,执行以下命令:
su - zimbra
zmmodulesport system locatorUpgrade --modules=hsm --filename=hsm-data -uam=true --username=admin@domain.com --password=admin_passwd
导入委派管理员
| 由于它是全局数据,因此您只需从要升级的第一个邮箱服务器导入一次。 |
-
作为
zimbra用户,执行以下命令:
su - zimbra zmmodulesport system import --modules=admin --filename=admin-data --server=server.com --username=admin@domain.com --password=admin_passwd >> /opt/zimbra/log/da-export.log
导入移动数据
| 既然它是一个全球的数据,您只需从要升级的第一个邮箱服务器导入一次。 |
-
作为一个
zimbra用户,执行此命令:
su - zimbra zmmodulesport system import --modules=mobile --filename=mobile-data1 --server=server.com --username=admin@domain.comm --password=admin_passwd >> /opt/zimbra/log/mobile-import.log
| 导入后,正在使用的用户NG 移动密码功能必须在移动设置中更新其 zimbra 帐户的密码。 |
对于 NG Mobile,如果您已将 ABQ 模式设置为严格并且如果在NG 服务器上允许的设备列表,将移动数据导入到服务器后,更新zimbraMobileBlockedDevices以允许同步允许的设备:
-
作为
zimbra用户,执行以下命令:
su - zimbra zmprov md domain.com +zimbraMobileBlockedDevices "*"
导入驱动器数据
| 由于它是用户数据,因此您需要为每个邮箱服务器导入它,这将为属于该邮箱服务器的帐户导出数据。 |
在开始导入之前,建议增加zimbraAdminAuthTokenLifetime所以在大数据传输的情况下,会话不会超时。zimbraAdminAuthTokenLifetime的默认值为 12 小时 (12h)。
在 COS 级别上,如果要将zimbraAdminAuthTokenLifetime值增加到 24 小时,请将值指定为24h并更新邮箱服务器上的zimbraAdminAuthTokenLifetime属性。
su - zimbra
zmprov mc default zimbraAdminAuthTokenLifetime 24h
重新启动邮箱服务以使更改生效:
su - zimbra
zmmailboxdctl restart
-
要导入驱动器数据,请以
zimbra用户身份执行以下命令:
su - zimbra zmmodulesport account import --modules=drive --filename=drive-data --server=server.com --username=admin@domain.com --password=admin_passwd >> /opt/zimbra/log/drive-import.log
添加并测试配置后,您可以启用邮件流和对用户帐户的访问。
启用 Daffodil 备份
登录您的全局管理员帐户,选择配置 → 全局设置 → 备份/恢复并启用备份。检查备份配置以确保其满足您的需求。
升级后设备重新同步
服务器升级后,您可以错开在帐户上启用移动设备,以防止所有帐户同时重新同步。
zmprov ma <account@domain.com> zimbraFeatureMobileSyncEnabled TRUE
| 这只是一个建议,每个环境都不同。由系统管理员选择其环境支持的最佳方法。 |