Moving ZCS to Another Server

Posted in PowerTips - Admins by John Holder on October 9th, 2007

In this Zimbra Administrator’s PowerTip, we’ll discuss how to move your instance of Zimbra to another machine. It applies to all version of Zimbra.



Administrator’s PowerTip
#4: October 09, 2007
Zimbra ForumsZimbra wikiZimbra
Blog

Introduction


Either you, or someone you know has been there. Almost out of Disk space, RAM is topped out, and the CPU is constantly running above 80%. It’s time to upgrade the hardware. But how easy and safe is it to move the Zimbra server instance? Well, it’s easier than you might think.

In this Zimbra Administrator’s PowerTip, we’ll discuss how to migrate your Zimbra server to another Machine or OS. The one big caveat is that both instances of Zimbra MUST be running the same version. So if your old server is running 4.5.5, then you’ll need to install 4.5.5 on your new server. This wouldn’t be the time to upgrade your ZCS version.

Part 1 : Backing Up

Zimbra Network Edition contains a backup feature, and although it’s useful, we won’t be using it in this tip.

We have an external Hard Disc mounted to /mnt/migration. When rsync’ed, this is now your live copy (although it’s not live), and you should always have a backup of your live data. So, you might want to rsync again to another location to be safe.

Once you’ve rsync’ed all your data, umount the external drive, and put it somewhere safe.

Part 2 : Meet Your New Server

The only thing that really matters on your new server, is whether or not meets Zimbra’s server Hardware and the Operating System requirements.

It’s also very important that you have resolved any dependency issues. The ZCS installer for your newer OS should check for these.

Setup the newer server with the old server’s networking attributes. Make sure your older server is offline.

If changing the hostname, please see this wiki article: Set zmhostname


Part 3 : Create a "dummy" Install Then Remove It


The goal of this step is to get the rpm/dpkg databases correct. When you download ZCS, make sure it’s for your newer OS, and the SAME version of ZCS that’s rsync’ed.

Run the installer with the -s option. This tells the installer to only install the software, and not to configure the installation.

Once the installer has completed, delete it by rm -rf /opt/zimbra. This wipes any dummy data you have in that location.



Part 4 : Mount Your Backup HD, rsync, and Install


Connect and mount your external hard drive. Then, rsync the backed up data to its new location (rsync -avH /mnt/migration/zimbra /opt).

Connect and mount your external hard drive. Then, rsync the backed up data to its new location (rsync -avH /mnt/migration/zimbra /opt).
Unmount your backed up copy, and keep it in a safe place.
Now that our data is all in place, we need to fix some permissions. Go into the /opt/zimbra/libexec directory and run zmfixperms. This helps insure that all the files are owned correctly.
Once that has completed, re run the installer that you downloaded. It will detect ZCS already installed, and ask if you want to upgrade. Select Yes.




7 Responses to 'Moving ZCS to Another Server'

Subscribe to comments with RSS or TrackBack to 'Moving ZCS to Another Server'.

  1. Stijn Tintel said,

    on March 28th, 2010 at 1:42 pm

    I have successfully used the above procedure to migrate a ZCS 6.0.5 Open Source Edition from Debian 5.0 amd64 to CentOS 5.4, but had to fix a problem with unresolved symbols after doing so.

    After getting all the dependencies right (I installed with packages –nobase in kickstart file to have a real slick CentOS without all kinds of stuff that one never needs on a Zimbra server anyway), I had to manually remove this directory:

    /opt/zimbra/zimbramon/lib/x86_64-linux-gnu-thread-multi/

    This directory is just called “/opt/zimbra/zimbramon/lib/x86_64-linux-thread-multi/” (without gnu) when you install Zimbra on RHEL/CentOS 5. If it’s still there, Zimbramon will include stuff from the directory containing “gnu” first, and you will get unresolved symbol errors.

    Regards,
    Stijn

  2. eduardo said,

    on May 10th, 2010 at 9:04 pm

    Hi all
    I’m Zimbra 6.06 user and I have a query/

    The first time I installed zimbra, I did.

    # ./install.sh –platform-override
    (and blablabla)

    Then, if I will install a new server for migrate my older, After Download, Should I do

    # ./install.sh -s
    (with the –platform-override option)

    Example

    # ./install -s –platform-override
    (or only)
    # ./install -s

    Later you say
    “”Once that has completed, re run the installer that you downloaded. It will detect ZCS already installed, and ask if you want to upgrade. Select Yes.”"

    This is

    # ./install.sh –platform-override or only
    # ,/install.sh

    Thank You


  3. on May 23rd, 2010 at 10:34 am

    Wonderfull tutorial, i have succeed moving my zimbra to a new machine.

    Thank you

  4. Ivan Marinkovic said,

    on June 3rd, 2010 at 8:39 pm

    Nice tutorial, but how can I do a similar procedure, but moving from a single server install to a brand new multiserver installation?

    Any tip/idea/tutorial?

    Thanks a lot.
    Ivan

  5. Amar said,

    on June 4th, 2010 at 6:34 am

    Thanks for the article. Here are some of my observations

    zmfixperms does not fix permissions for all the folders (newer versions of zimbra). you have to run “zmfixperms -extended” command. Even then the permissions for /opt/zimbra/.ssh is not fixed. You need to fix that manuaaly using chowm command.

  6. Aeun Balaji said,

    on June 16th, 2010 at 1:45 am

    ./install.sh -s –platform-override option is working.

    Nice tutorial.

    Thanks
    Arun

  7. Victor Zapata said,

    on July 16th, 2010 at 2:57 pm

    Very nice tutorial.
    Amar is right, the zmfixperms doesn’t fix all the permissions.

    I had troubles with the zimbra store, so I had to fix them manually with the command (as root)

    # chown -R zimbra:zimbra /opt/zimbra/store/

    [spanish]
    Excelente tutorial.
    Amar tiene razón, el comando zmfixperms no soluciona todos los permisos.

    Tuve problemas con el Zimbra store, así que tuve que corregirlos manualmente con el comando (como root)

    # chown -R zimbra:zimbra /opt/zimbra/store/

|  Blog Home

Subscribe


Subscribe by Email



Categories


Archives

  • August 2010
  • July 2010
  • June 2010
  • May 2010
  • April 2010
  • March 2010
  • February 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009