Best Practices for Upgrading the Operating System on Nodes in a Vertica Cluster
At some point, you may need to upgrade the operating system or Linux kernel on the nodes in your Vertica cluster. This document explains the steps you should take to accomplish the upgrade.
Note This document does not discuss upgrading your Vertica version. It only addresses an operating system or kernel upgrade. Your database version will not change.
Before You Start
You should consider the following common constraints when preparing for a system upgrade:
-
Verify that the operating system you plan to upgrade to is supported by the version of Vertica you are running.
- You may need to keep the cluster up and running for the duration of the upgrade.
- The operating system upgrade may require that you reboot one or more nodes.
Before you upgrade your operating system or kernel, execute the following tasks:
- Back up your Vertica database and your operating system.
- Always upgrade the operating system to a Vertica supported version.
- Test the upgrade steps on a staging system before you apply them in production .
- Before you upgrade your operating system, follow these steps in Prepare Your Vertica Database for Maintenance. While these steps focus on preparing for a database upgrade, they apply to upgrading your operations system as well.
Options for Upgrading Your Operating System
You have four options for upgrading your operating system:
- Use Copy Cluster with Two Clusters
- Upgrade All Nodes During Down Time
- Upgrade the Cluster and Restore a Backup
Use Copy Cluster with Two Clusters
Use copy cluster when you need to replicate an existing Vertica cluster. In this situation, the target cluster onto which you replicate the source cluster runs the upgraded operating system.
Using copy cluster is the fastest option, and you can keep your existing cluster up while the target is being copied to. However, switching user applications from the source cluster to the target cluster may require connection resets with minor down time.
The copy cluster approach requires that you set up an entirely new cluster with the new operating system. You must have hardware available to run two clusters for a short duration. If you are running on virtual infrastructure, copy cluster might be the best choice.
To perform a copy cluster operation, follow the steps in Copying Data Between Similar Vertica Clusters.
Upgrade All Nodes During Down Time
Upgrading all nodes during system down time is the traditional way to upgrade to a new operating system. However, it may not be convenient to shut down your entire cluster to perform the upgrade. The steps are:
- Back up the database and operating system.
- Shut down the Vertica cluster.
- Upgrade the operating system on all nodes.
- Reboot the nodes.
- Restart the Vertica cluster.
Upgrade the Cluster and Restore a Backup
A minor variation on the previous two options, you can upgrade the cluster, and restore a database backup to the same cluster. Use this option when Vertica is in the same file system as the operating system. Follow these steps:
- Back up the database and operating system.
- Shut down the Vertica cluster.
- Upgrade the operating system on all nodes.
- Reboot the nodes.
- Restore the Vertica cluster from the backup, as described in Copy and Restore Data from a Vertica Cluster to a Backup.
This option is not as efficient as the previous two options, but it may be necessary if the operating system upgrade results in errors, unexpected corruption, or loss of nodes. In those situations, you must rely on a backup to restore the database.
After You Upgrade
After you upgrade the operating system, check if there are operating system changes that need to be implemented to follow up the Vertica installation. To perform this check, execute this command:
$ /opt/vertica/oss/python/bin/python -m vertica.local_verify