Community Articles

Find and share helpful community-sourced technical articles.
Announcements
Celebrating as our community reaches 100,000 members! Thank you!
Labels (2)
avatar

For this article, I am using Ambari-2.5.2.0 and trying to upgrade HDP-2.5.3 to HDP-2.6.2.

If you have a large HBase cluster, it can take a long time to do a HBase snapshot. As part of upgrade, this is one of the steps which Ambari will perform for you. However, for a large cluster, this step can actually lead to a timeout from Ambari UI and may result in further inconsistencies just before the Finalize Upgrade step.

To overcome this, a lot of people have started performing a manual HBase Snapshot before the upgrade.

However, not many have found a way to force Ambari to skip this step and save some time instead of waiting for it to timeout in order to proceed to next step during the upgrade.

Here is how you can skip HBase Snapshot step altogether (in case you want to perform it manually before the upgrade):

Caution: The steps described below are a hack! It is not recommended that we go about making changes to upgrade XML files based on our needs. Please exercise caution and measure your risks before following the steps.

The following steps must be performed before starting the upgrade.

Step 1: Locate the upgrade XML file on ambari-server host

/var/lib/ambari-server/resources/stacks/HDP/2.5/upgrades/upgrade-2.6.xml (for Rolling Upgrade)

/var/lib/ambari-server/resources/stacks/HDP/2.5/upgrades/nonrolling-upgrade-2.6.xml (for Express Upgrade)

Step 2: Comment out the following piece of code in the upgrade XML file and save it

      <execute-stage service="HBASE" component="HBASE_MASTER" title="Snapshot HBASE">
        <task xsi:type="execute" hosts="master">
          <script>scripts/hbase_upgrade.py</script>
          <function>take_snapshot</function>
        </task>
      </execute-stage>

Step 3: Restart Ambari Server for it to pick up the changes.

Step 4: Now you can start your upgrade.

1,309 Views
Comments

This was great help.