公司的zimbra 8.5.0用了差不多一年,看zimbra发布了新版本,直接升级8.7.1失败,于是先升级到8.6.0,希望能后续能直接升级到8.7.1,后来发现是绕不开的坑,必须把问题解决了才可以。于是在备份好系统快照的前提下,参考网络上的资料,开始了以下的升级。follow me…….
1、系统环境:
cat /etc/system-release
CentOS Linux release 7.3.1611 (Core)
uname -a
Linux mail.abc.com 3.10.0-514.2.2.el7.x86_64 #1 SMP Tue Dec 6 23:06:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
zmcontrol -v
Release 8.6.0_GA_1153.RHEL7_64
2、下载zimbra 8.7.1_GA安装包解压后运行install.sh进行升级
[root@mail zcs-8.7.1_GA_1670.RHEL7_64.20161025045328]# ./install.sh
Operations logged to /tmp/install.log.O3wRPSxA
Checking for existing installation...
zimbra-ldap...FOUND zimbra-ldap-8.6.0_GA_1153
zimbra-logger...FOUND zimbra-logger-8.6.0_GA_1153
zimbra-mta...FOUND zimbra-mta-8.6.0_GA_1153
zimbra-dnscache...NOT FOUND
zimbra-snmp...FOUND zimbra-snmp-8.6.0_GA_1153
zimbra-store...FOUND zimbra-store-8.6.0_GA_1153
zimbra-apache...FOUND zimbra-apache-8.6.0_GA_1153
zimbra-spell...FOUND zimbra-spell-8.6.0_GA_1153
zimbra-convertd...NOT FOUND
zimbra-memcached...FOUND zimbra-memcached-8.6.0_GA_1153
zimbra-proxy...FOUND zimbra-proxy-8.6.0_GA_1153
zimbra-archiving...NOT FOUND
zimbra-core...FOUND zimbra-core-8.6.0_GA_1153
ZCS upgrade from 8.6.0 to 8.7.1 will be performed.
Checking for existing proxy service in your environment
Error: proxy not enabled
Error: No proxy detected in your environment. Proxy is required for ZCS 8.7+.
See https://wiki.zimbra.com/wiki/Enabling_Zimbra_Proxy for details on installing proxy.
Checking for existing memcached service in your environment
Proxy and Memcached services must exist. Exiting...
显示以下错误:
Error: proxy not enabled
Error: No proxy detected in your environment. Proxy is required for ZCS 8.7+.
运行zmprov ms 启用proxy功能,mail.abc.com为示例主机名,根据自己的实际主机名进行修改。
[root@mail zcs-8.7.1_GA_1670.RHEL7_64.20161025045328]# zmprov ms mail.abc.com +zimbraServiceEnabled proxy
另如果是以下报错
Error: One or more proxies do not have zimbraReverseProxyMailEnabled and zimbraReverseProxyHttpEnabled set to TRUE.
It is required to have at least one proxy with zimbraReverseProxyMailEnabled and at least one proxy with zimbraReverseProxyHttpEnabled for ZCS 8.7+
则执行以下命令:
zmprov ms mail.abc.com zimbraReverseProxyMailEnabled TRUE
zmprov ms mail.abc.com zimbraReverseProxyHttpEnabled TRUE
查询proxy相关状态可以用命令:zmprov gcf zimbraReverseProxyHttp zimbraReverseProxyMail
3、执行完zmprov ms mail.abc.com +zimbraServroxy后继续运行install.sh
以下为安装过程显示,显示内容比较长,浏览一下即可
Operations logged to /tmp/install.log.zWezd512
Checking for existing installation...
zimbra-ldap...FOUND zimbra-ldap-8.6.0_GA_1153
zimbra-logger...FOUND zimbra-logger-8.6.0_GA_1153
zimbra-mta...FOUND zimbra-mta-8.6.0_GA_1153
zimbra-dnscache...NOT FOUND
zimbra-snmp...FOUND zimbra-snmp-8.6.0_GA_1153
zimbra-store...FOUND zimbra-store-8.6.0_GA_1153
zimbra-apache...FOUND zimbra-apache-8.6.0_GA_1153
zimbra-spell...FOUND zimbra-spell-8.6.0_GA_1153
zimbra-convertd...NOT FOUND
zimbra-memcached...FOUND zimbra-memcached-8.6.0_GA_1153
zimbra-proxy...FOUND zimbra-proxy-8.6.0_GA_1153
zimbra-archiving...NOT FOUND
zimbra-core...FOUND zimbra-core-8.6.0_GA_1153
ZCS upgrade from 8.6.0 to 8.7.1 will be performed.
Checking for existing proxy service in your environment
Checking for existing memcached service in your environment
Validating ldap configuration
LDAP validation succeeded. Continuing.
Do you agree with the terms of the software license agreement? [N] y
Checking current number of databases...
Do you want to verify message store database integrity? [Y] y
Verifying integrity of message store databases. This may take a while.
mysqld is alive
No errors found
Checking for installable packages
Found zimbra-core
Found zimbra-ldap
Found zimbra-logger
Found zimbra-mta
Found zimbra-dnscache
Found zimbra-snmp
Found zimbra-store
Found zimbra-apache
Found zimbra-spell
Found zimbra-memcached
Found zimbra-proxy
Use Zimbra's package repository [Y] n
The Zimbra Collaboration Server appears to already be installed.
It can be upgraded with no effect on existing accounts,
or the current installation can be completely removed prior
to installation for a clean install.
Do you wish to upgrade? [Y] y
Scanning for any new or additional packages available for installation
Existing packages will be upgraded
Upgrading zimbra-core
Upgrading zimbra-ldap
Upgrading zimbra-logger
Upgrading zimbra-mta
Install zimbra-dnscache [N] n
Upgrading zimbra-snmp
Upgrading zimbra-store
Upgrading zimbra-apache
Upgrading zimbra-spell
Upgrading zimbra-memcached
Upgrading zimbra-proxy
Checking required space for zimbra-core
Checking space for zimbra-store
Checking required packages for zimbra-store
zimbra-store package check complete.
Installing:
zimbra-core
zimbra-ldap
zimbra-logger
zimbra-mta
zimbra-snmp
zimbra-store
zimbra-apache
zimbra-spell
zimbra-memcached
zimbra-proxy
The system will be modified. Continue? [N] y
Installing packages
zimbra-core will be downloaded.
zimbra-ldap will be downloaded.
zimbra-logger will be downloaded.
zimbra-mta will be downloaded.
zimbra-snmp will be downloaded.
zimbra-store will be downloaded.
zimbra-apache will be downloaded.
zimbra-spell will be downloaded.
zimbra-memcached will be downloaded.
zimbra-proxy will be downloaded.
Downloading packages. This will not modify the system. This may take some time.
Downloading Remote package zimbra-memcached version
Unable to download packages zimbra-memcached from repository. System is not modified.
Saving existing configuration file to /opt/zimbra/.saveconfig
Shutting down zimbra mail
Backing up the ldap database...done.
Removing existing packages
zimbra-ldap...done
zimbra-logger...done
zimbra-mta...done
zimbra-snmp...done
zimbra-store...done
zimbra-spell...done
zimbra-memcached...done
zimbra-proxy...done
zimbra-apache...done
zimbra-core...done
Removing deployed webapp directories
Local packages zimbra-core zimbra-ldap zimbra-logger zimbra-mta zimbra-snmp zimbra-store zimimbra-spell zimbra-proxy selected for installation
Monitor /tmp/install.log.zWezd512 for package installation progress
Remote package installation started
Installing zimbra-core-components zimbra-ldap-components zimbra-mta-components zimbra-snmp-cmbra-store-components zimbra-apache-components zimbra-spell-components zimbra-memcached zimbronents....
ERROR: Unable to install required packages
WARNING: REMOTE PACKAGE INSTALLATION FAILED.
To proceed, review the instructions at:
https://wiki.zimbra.com/wiki/Recovering_from_upgrade_failure
Failure to follow the instructions on the wiki will result in complete data loss.
出现报错。看提示估计连接至官网Remote package zimbra-memcached等更新组件包下载或安装出现错误,具体可见安装log档
4、使用一下命令进行跳过升级检查强制升级
[root@mail zcs-8.7.1_GA_1670.RHEL7_64.20161025045328]# ./install.sh --force-upgrade --skip-acck --skip-upgrade-check
Operations logged to /tmp/install.log.ilBy9p3q
Checking for existing installation...
zimbra-ldap...NOT FOUND
zimbra-logger...NOT FOUND
zimbra-mta...NOT FOUND
zimbra-dnscache...NOT FOUND
zimbra-snmp...NOT FOUND
zimbra-store...NOT FOUND
zimbra-apache...NOT FOUND
zimbra-spell...NOT FOUND
zimbra-convertd...NOT FOUND
zimbra-memcached...NOT FOUND
zimbra-proxy...NOT FOUND
zimbra-archiving...NOT FOUND
zimbra-core...NOT FOUND
Do you agree with the terms of the software license agreement? [N] y
Checking current number of databases...
Checking for installable packages
Found zimbra-core
Found zimbra-ldap
Found zimbra-logger
Found zimbra-mta
Found zimbra-dnscache
Found zimbra-snmp
Found zimbra-store
Found zimbra-apache
Found zimbra-spell
Found zimbra-memcached
Found zimbra-proxy
Use Zimbra's package repository [Y] n
Do you wish to upgrade? [Y] y
Scanning for any new or additional packages available for installation
Existing packages will be upgraded
Upgrading zimbra-core
Install zimbra-ldap [N] y
Install zimbra-logger [N] y
Install zimbra-mta [N] y
Install zimbra-dnscache [N] y
Install zimbra-snmp [N] y
Install zimbra-store [N] y
Install zimbra-apache [N] y
Install zimbra-spell [N] y
Install zimbra-memcached [N] y
Install zimbra-proxy [N] y
Checking required space for zimbra-core
Checking space for zimbra-store
Checking required packages for zimbra-store
zimbra-store package check complete.
Installing:
zimbra-core
zimbra-ldap
zimbra-logger
zimbra-mta
zimbra-dnscache
zimbra-snmp
zimbra-store
zimbra-apache
zimbra-spell
zimbra-memcached
zimbra-proxy
The system will be modified. Continue? [N] y
Installing packages
zimbra-core will be downloaded.
zimbra-ldap will be downloaded.
zimbra-logger will be downloaded.
zimbra-mta will be downloaded.
zimbra-dnscache will be downloaded.
zimbra-snmp will be downloaded.
zimbra-store will be downloaded.
zimbra-apache will be downloaded.
zimbra-spell will be downloaded.
zimbra-memcached will be downloaded.
zimbra-proxy will be downloaded.
Downloading packages. This will not modify the system. This may take some time.
./util/modules/packages.sh: line 74: [: -lt: unary operator expected
./util/modules/packages.sh: line 74: [: too many arguments
Local packages zimbra-core zimbra-ldap zimbra-logger zimbra-mta zimbra-dnscache zimbra-snmp zimbra-store zimbra-apache zimbra-spell zimbra-proxy selected for installation
Monitor /tmp/install.log.ilBy9p3q for package installation progress
Remote package installation started
Installing zimbra-core-components zimbra-ldap-components zimbra-mta-components zimbra-dnscache-components zimbra-snmp-components zimbra-store-components zimbra-apache-components zimbra-spell-components zimbra-memcached zimbra-proxy-components....done
Local package installation started
Installing zimbra-core zimbra-ldap zimbra-logger zimbra-mta zimbra-dnscache zimbra-snmp zimbra-store zimbra-apache zimbra-spell zimbra-proxy...done
done
Setting defaults from saved config in /opt/zimbra/.saveconfig/config.save
HOSTNAME=mail.abc.com
LDAPHOST=mail.abc.com
LDAPPORT=389
SNMPTRAPHOST=mail.abc.com
SMTPSOURCE=admin@abc.com
SMTPDEST=admin@abc.com
SNMPNOTIFY=yes
SMTPNOTIFY=yes
LDAPROOTPW=*
LDAPZIMBRAPW=*
LDAPPOSTPW=*
LDAPREPPW=*
LDAPAMAVISPW=*
LDAPNGINXPW=*
Restoring existing configuration file from /opt/zimbra/.saveconfig/localconfig.xml...done
Operations logged to /tmp/zmsetup.20161216-163705.log
Adding /opt/zimbra/conf/ca/ca.pem to cacerts
Upgrading from 8.6.0_GA_1194 to 8.7.1_GA_1670
Stopping zimbra services...done.
This appears to be 8.6.0_GA
Starting mysql...done.
Checking ldap status...not running.
Checking ldap status...not running.
Starting ldap...done.
Checking ldap status...already running.
Schema upgrade required from version 103 to 107.
Running /opt/zimbra/libexec/scripts/migrate20150401-ZmgDevices.pl
Fri Dec 16 16:38:34 2016: Verified schema version 103.
Fri Dec 16 16:38:34 2016: Verified schema version 103.
Fri Dec 16 16:38:34 2016: Updating DB schema version from 103 to 104.
Running /opt/zimbra/libexec/scripts/migrate20150515-DataSourcePurgeTables.pl
Fri Dec 16 16:38:36 2016: Verified schema version 104.
Fri Dec 16 16:39:20 2016: Verified schema version 104.
Fri Dec 16 16:39:20 2016: Updating DB schema version from 104 to 105.
Running /opt/zimbra/libexec/scripts/migrate20150623-ZmgDevices.pl
Fri Dec 16 16:39:22 2016: Verified schema version 105.
Fri Dec 16 16:39:22 2016: Verified schema version 105.
Fri Dec 16 16:39:22 2016: Updating DB schema version from 105 to 106.
Running /opt/zimbra/libexec/scripts/migrate20150702-ZmgDevices.pl
Fri Dec 16 16:39:24 2016: Verified schema version 106.
Fri Dec 16 16:39:26 2016: Verified schema version 106.
Fri Dec 16 16:39:26 2016: Updating DB schema version from 106 to 107.
Stopping mysql...done.
Updating from 8.6.1_GA
Updating from 8.7.0_BETA1
Updating mailboxd_java_options to remove deprecated PermSize and MaxPermSize java options.
Updating from 8.7.0_BETA2
Updating from 8.7.0_RC1
Updating from 8.7.0_RC2
Updating from 8.7.0_GA
Updating from 8.7.1_GA
Updating global config and COS's with attributes introduced after 8.6.0_GA...done.
Stopping ldap...done.
Upgrade complete.
Checking ldap status....not running.
Starting ldap...done.
Setting defaults...done.
Setting defaults from existing config...done.
Checking for port conflicts
Setting defaults from ldap...done.
Main menu
1) Common Configuration:
2) zimbra-ldap: Enabled
3) zimbra-logger: Enabled
4) zimbra-mta: Enabled
5) zimbra-dnscache: Enabled
******* +Master DNS IP address(es): UNSET
+Enable DNS lookups over TCP: yes
+Enable DNS lookups over UDP: yes
+Only allow TCP to communicate with Master DNS: no
6) zimbra-snmp: Enabled
7) zimbra-store: Enabled
8) zimbra-spell: Disabled
9) zimbra-proxy: Enabled
10) Default Class of Service Configuration:
s) Save config to file
x) Expand menu
q) Quit
Address unconfigured (**) items (? - help) 5
DNS Cache configuration
1) Status: Enabled
** 2) Master DNS IP address(es): UNSET
3) Enable DNS lookups over TCP: yes
4) Enable DNS lookups over UDP: yes
5) Only allow TCP to communicate with Master DNS: no
Select, or 'r' for previous menu [r] 2
IP Address(es) of Master DNS Server(s), space separated: 61.177.7.1
DNS Cache configuration
1) Status: Enabled
2) Master DNS IP address(es): 61.177.7.1
3) Enable DNS lookups over TCP: yes
4) Enable DNS lookups over UDP: yes
5) Only allow TCP to communicate with Master DNS: no
Select, or 'r' for previous menu [r] r
Main menu
1) Common Configuration:
2) zimbra-ldap: Enabled
3) zimbra-logger: Enabled
4) zimbra-mta: Enabled
5) zimbra-dnscache: Enabled
6) zimbra-snmp: Enabled
7) zimbra-store: Enabled
8) zimbra-spell: Disabled
9) zimbra-proxy: Enabled
10) Default Class of Service Configuration:
s) Save config to file
x) Expand menu
q) Quit
*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help) a
Saving config in /opt/zimbra/config.13058...done.
Operations logged to /tmp/zmsetup.20161216-163705.log
Setting local config values...done.
Initializing core config...Setting up CA...done.
Deploying CA to /opt/zimbra/conf/ca ...done.
Setting replication password...done.
Setting Postfix password...done.
Setting amavis password...done.
Setting nginx password...done.
Creating server entry for mail.abc.com...already exists.
Setting Zimbra IP Mode...done.
Saving CA in ldap...done.
Saving SSL Certificate in ldap...done.
Setting service ports on mail.abc.com...done.
Setting Keyboard Shortcut Preferences...done.
Setting zimbraFeatureTasksEnabled=FALSE...done.
Setting zimbraFeatureBriefcasesEnabled=TRUE...done.
Setting Master DNS IP address(es)...done.
Setting DNS cache tcp lookup preference...done.
Setting DNS cache udp lookup preference...done.
Setting DNS tcp upstream preference...done.
Setting TimeZone Preference...done.
Initializing mta config...done.
Setting services on mail.abc.com...done.
Adding mail.abc.com to zimbraMailHostPool in default COS...done.
Creating user spam.xs6kf3zqc@abc.com...already exists.
Creating user ham.rvso0iaogm@abc.com...already exists.
Creating user virus-quarantine.td5vabdolb@abc.com...already exists.
Setting spam training and Anti-virus quarantine accounts...done.
Configuring SNMP...done.
Setting up syslog.conf...done.
Starting servers...done.
Checking for deprecated zimlets...done.
Checking for network zimlets in LDAP...done.
Removing network zimlets...
Finished removing network zimlets.
Installing common zimlets...
com_zimbra_adminversioncheck...done.
com_zimbra_attachcontacts...done.
com_zimbra_attachmail...done.
com_zimbra_bulkprovision...done.
com_zimbra_cert_manager...done.
com_zimbra_clientuploader...done.
com_zimbra_date...done.
com_zimbra_email...done.
com_zimbra_mailarchive...done.
com_zimbra_phone...done.
com_zimbra_proxy_config...done.
com_zimbra_srchhighlighter...done.
com_zimbra_tooltip...done.
com_zimbra_url...done.
com_zimbra_viewmail...done.
com_zimbra_webex...done.
com_zimbra_ymemoticons...done.
Finished installing common 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.
You have the option of notifying Zimbra of your installation.
This helps us to track the uptake of the Zimbra Collaboration Server.
The only information that will be transmitted is:
The VERSION of zcs installed (8.7.1_GA_1670_RHEL7_64)
The ADMIN EMAIL ADDRESS created (admin@abc.com)
Notify Zimbra of your installation? [Yes]
Notifying Zimbra of installation via http://www.zimbra.com/cgi-bin/notify.cgi?VER=8.7.1_GA_1670_RHEL7_64&MAIL=admin@abc.com
Notification complete
Setting up zimbra crontab...done.
Moving /tmp/zmsetup.20161216-163705.log to /opt/zimbra/log
Configuration complete - press return to exit
5、升级完成,查看所有服务启动正常。
[root@mail zcs-8.7.1_GA_1670.RHEL7_64.20161025045328]# su zimbra
[zimbra@mail zcs-8.7.1_GA_1670.RHEL7_64.20161025045328]$ zmcontrol status
Host mail.abc.com
amavis Running
antispam Running
antivirus Running
dnscache Running
ldap Running
logger Running
mailbox Running
memcached Running
mta Running
opendkim Running
proxy Running
service webapp Running
snmp Running
stats Running
zimbra webapp Running
zimbraAdmin webapp Running
zimlet webapp Running
zmconfigd Running
ps:另因启用了proxy,导致原来POP3收信端口110被更改为7110,原110为proxy pop3端口。各位可根据自己实际情况在web管理页面做相应修改。