DataStax Enterprise 2.2 Documentation

Preparing to Upgrade

This documentation corresponds to an earlier product version. Make sure this document corresponds to your version.

Latest DSE documentation | Earlier DSE documentation

You can upgrade from these releases to DataStax Enterprise 2.2.x:

  • A previous release of DataStax Enterprise
  • Cassandra 0.7.10, 0.8.10, or 1.0.x - 1.1.x

Critical Pre-upgrade Steps

  1. Make a backup of the data by taking a snapshot of the node to be upgraded.

  2. Save old installation keyspaces as described on the next page.

  3. Run nodetool drain to flush the commit log of the old installation:

    nodetool drain –h <hostname>
    

    This step is mandatory. Failing to perform this step could result in data loss if a power failure occurs during the upgrade.

  4. On Debian/Ubuntu, save the cassandra.yaml (and cassandra.topologies file if you use the PropertyFileSnitch) from the old installation in a safe location.

    On RHEL-based platforms, RPM saves the file automatically during the upgrade process instead of overwriting it. RPM output looks something like this:

    warning: /etc/cassandra/default.conf/cassandra.yaml
    saved as /etc/cassandra/default.conf/cassandra.yaml.rpmsave
    

    On tarball platforms, you install the new release in a different location, so the old files are not overwritten.

    Regardless of the platform, if you customized any other files, copy the files from the old installation to a safe location before performing an in-place upgrade that overwrites customized files.

  5. Upgrade your installation according to these instructions:

Order of Upgrading Nodes

Observe the following order for upgrading nodes in a mixed workload cluster:

  1. Analytics: Jobtracker, remaining seeds, remaining task trackers
  2. Cassandra: Seeds, then remaining nodes
  3. Solr: Seeds, then remaining nodes

DSE Search/Solr nodes are upgraded last because they are more sensitive to schema disagreements.

Component Version Changes

The following component version changes and other major changes are included in DSE upgrades:

Upgrade Changes
DSE 1.0, 1.0.x, or 2.0.x Cassandra updated to 1.1.5
Hadoop updated to 1.0.2
Hive updated to 0.9.0
Pig updated to 0.9.2
Sqoop updated to 1.4.2
DataStax OpsCenter to 2.1
Mahout 0.6 added
DSE 2.1 Cassandra updated to 1.1.6
Hadoop updated to 1.0.2
Hive updated to 0.9.0
Pig updated to 0.9.2
Sqoop updated to 1.4.2
DSE 2.2 Cassandra updated to 1.1.9

For a complete list of Cassandra changes and new features, see https://github.com/apache/cassandra/blob/cassandra-1.1.9/CHANGES.txt.

Upgrading and Counter Columns

If you use counter columns, upgrading SSTables is highly recommended.

Tarball:

<install_location>/bin/nodetool -h upgradesstables

Package or AMI:

nodetool -h upgradesstables

Tapping NEWS.txt for Upgrading Information

NEWS.txt contains late-breaking information about upgrading from previous versions of Cassandra.

A NEWS.txt or a NEWS.txt archive is installed in the following locations:

Tarball: <install_location>/resources/cassandra

Package: /usr/share/doc/dse-libcassandra*

NEWS.txt is also posted on the Apache Cassandra project web site.

Unpack NEWS.txt.gz if it is an archive. For example:

cd /usr/share/doc/dse-libcassandra-2.2.
sudo gunzip NEWS.txt.gz

Take at look at the information that is pertinent to your old version if there is any. For example, if you upgrade from some early versions, it might be necessary to upgrade SSTables.