Upgrading HBase involves careful planning, especially when the cluster is currently in production. With the addition of rolling restarts (see “Rolling Restarts”), it has become much easier to update HBase with no downtime.
Depending on the version of HBase you are using or upgrading to, you may need to upgrade the underlying Hadoop version first so that it matches the required version for the new version of HBase you are installing. Follow the upgrade guide found on the Hadoop website.
Depending on the versions you are upgrading from, a different set of steps might be necessary to update your existing cluster to a newer version. The following subsections address the more common update scenarios.
This version of 0.90.x HBase can be started on data written by HBase 0.20.x or HBase 0.89.x, and there is no need for a migration step. HBase 0.89.x and 0.90.x do write out the names of region directories differently—they name them with an MD5 hash of the region name rather than a Jenkins hash, which means that once you have started, there is no going back to HBase 0.20.x.
Be sure to remove the hbase-default.xml file from your conf directory when you upgrade. A 0.20.x version of this file will have suboptimal configurations for HBase 0.90.x. The hbase-default.xml file is now bundled into the HBase JAR and read from there. If you would like to review the content of this file, you can find ...