Skip to content

Commit af13cd8

Browse files
authored
Merge pull request #100020 from dagiro/freshness159
freshness159
2 parents 07ebf03 + deb85cb commit af13cd8

File tree

1 file changed

+22
-20
lines changed

1 file changed

+22
-20
lines changed

articles/hdinsight/hbase/apache-hbase-migrate-new-version.md

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,27 +2,26 @@
22
title: Migrate an HBase cluster to a new version - Azure HDInsight
33
description: How to migrate Apache HBase clusters to a newer version in Azure HDInsight.
44
author: ashishthaps
5+
ms.author: ashishth
56
ms.reviewer: jasonh
67
ms.service: hdinsight
7-
ms.custom: hdinsightactive
88
ms.topic: conceptual
9-
ms.date: 12/05/2019
10-
ms.author: ashishth
9+
ms.custom: hdinsightactive
10+
ms.date: 01/02/2020
1111
---
1212

1313
# Migrate an Apache HBase cluster to a new version
1414

1515
This article discusses the steps required to update your Apache HBase cluster on Azure HDInsight to a newer version.
1616

17-
> [!NOTE]
18-
> The downtime while upgrading should be minimal, on the order of minutes. This downtime is caused by the steps to flush all in-memory data, then the time to configure and restart the services on the new cluster. Your results will vary, depending on the number of nodes, amount of data, and other variables.
17+
The downtime while upgrading should be minimal, on the order of minutes. This downtime is caused by the steps to flush all in-memory data, then the time to configure and restart the services on the new cluster. Your results will vary, depending on the number of nodes, amount of data, and other variables.
1918

2019
## Review Apache HBase compatibility
2120

2221
Before upgrading Apache HBase, ensure the HBase versions on the source and destination clusters are compatible. For more information, see [Apache Hadoop components and versions available with HDInsight](../hdinsight-component-versioning.md).
2322

2423
> [!NOTE]
25-
> We highly recommend that you review the version compatibility matrix in the [HBase book](https://hbase.apache.org/book.html#upgrading).
24+
> We highly recommend that you review the version compatibility matrix in the [HBase book](https://hbase.apache.org/book.html#upgrading). Any breaking incompatibilities should be described in the HBase version release notes.
2625
2726
Here is an example version compatibility matrix. Y indicates compatibility and N indicates a potential incompatibility:
2827

@@ -40,20 +39,17 @@ Here is an example version compatibility matrix. Y indicates compatibility and N
4039
| Dependency compatibility | N | Y | Y |
4140
| Operational compatibility | N | N | Y |
4241

43-
> [!NOTE]
44-
> Any breaking incompatibilities should be described in the HBase version release notes.
45-
4642
## Upgrade with same Apache HBase major version
4743

4844
To upgrade your Apache HBase cluster on Azure HDInsight, complete the following steps:
4945

5046
1. Make sure that your application is compatible with the new version, as shown in the HBase compatibility matrix and release notes. Test your application in a cluster running the target version of HDInsight and HBase.
5147

52-
2. [Set up a new destination HDInsight cluster](../hdinsight-hadoop-provision-linux-clusters.md) using the same storage account, but with a different container name:
48+
1. [Set up a new destination HDInsight cluster](../hdinsight-hadoop-provision-linux-clusters.md) using the same storage account, but with a different container name:
5349

5450
![Use the same Storage account, but create a different Container](./media/apache-hbase-migrate-new-version/same-storage-different-container.png)
5551

56-
3. Flush your source HBase cluster, which is the cluster you are upgrading. HBase writes incoming data to an in-memory store, called a _memstore_. After the memstore reaches a certain size, HBase flushes it to disk for long-term storage in the cluster's storage account. When deleting the old cluster, the memstores are recycled, potentially losing data. To manually flush the memstore for each table to disk, run the following script. The latest version of this script is on Azure's [GitHub](https://raw.githubusercontent.com/Azure/hbase-utils/master/scripts/flush_all_tables.sh).
52+
1. Flush your source HBase cluster, which is the cluster you're upgrading. HBase writes incoming data to an in-memory store, called a _memstore_. After the memstore reaches a certain size, HBase flushes it to disk for long-term storage in the cluster's storage account. When deleting the old cluster, the memstores are recycled, potentially losing data. To manually flush the memstore for each table to disk, run the following script. The latest version of this script is on Azure's [GitHub](https://raw.githubusercontent.com/Azure/hbase-utils/master/scripts/flush_all_tables.sh).
5753

5854
```bash
5955
#!/bin/bash
@@ -170,41 +166,47 @@ To upgrade your Apache HBase cluster on Azure HDInsight, complete the following
170166
...
171167
172168
```
173-
174-
4. Stop ingestion to the old HBase cluster.
175-
5. To ensure that any recent data in the memstore is flushed, run the previous script again.
176-
6. Sign in to [Apache Ambari](https://ambari.apache.org/) on the old cluster (https://OLDCLUSTERNAME.azurehdidnsight.net) and stop the HBase services. When you prompted to confirm that you'd like to stop the services, check the box to turn on maintenance mode for HBase. For more information on connecting to and using Ambari, see [Manage HDInsight clusters by using the Ambari Web UI](../hdinsight-hadoop-manage-ambari.md).
169+
170+
1. Stop ingestion to the old HBase cluster.
171+
172+
1. To ensure that any recent data in the memstore is flushed, run the previous script again.
173+
174+
1. Sign in to [Apache Ambari](https://ambari.apache.org/) on the old cluster (`https://OLDCLUSTERNAME.azurehdidnsight.net`) and stop the HBase services. When you prompted to confirm that you'd like to stop the services, check the box to turn on maintenance mode for HBase. For more information on connecting to and using Ambari, see [Manage HDInsight clusters by using the Ambari Web UI](../hdinsight-hadoop-manage-ambari.md).
177175
178176
![In Ambari, click Services > HBase > Stop under Service Actions](./media/apache-hbase-migrate-new-version/stop-hbase-services1.png)
179177
180178
![Check the Turn On Maintenance Mode for HBase checkbox, then confirm](./media/apache-hbase-migrate-new-version/turn-on-maintenance-mode.png)
181179
182-
7. Sign in to Ambari on the new HDInsight cluster. Change the `fs.defaultFS` HDFS setting to point to the container name used by the original cluster. This setting is under **HDFS > Configs > Advanced > Advanced core-site**.
180+
1. Sign in to Ambari on the new HDInsight cluster. Change the `fs.defaultFS` HDFS setting to point to the container name used by the original cluster. This setting is under **HDFS > Configs > Advanced > Advanced core-site**.
183181
184182
![In Ambari, click Services > HDFS > Configs > Advanced](./media/apache-hbase-migrate-new-version/hdfs-advanced-settings.png)
185183
186184
![In Ambari, change the container name](./media/apache-hbase-migrate-new-version/change-container-name.png)
187185
188-
8. **If you aren't using HBase clusters with the Enhanced Writes feature, skip this step. It's needed only for HBase clusters with Enhanced Writes feature.**
189-
186+
1. If you aren't using HBase clusters with the Enhanced Writes feature, skip this step. It's needed only for HBase clusters with Enhanced Writes feature.
187+
190188
Change the `hbase.rootdir` path to point to the container of the original cluster.
191189
192190
![In Ambari, change the container name for HBase rootdir](./media/apache-hbase-migrate-new-version/change-container-name-for-hbase-rootdir.png)
191+
193192
1. If you're upgrading HDInsight 3.6 to 4.0, follow the steps below, otherwise skip to step 10:
194193
1. Restart all required services in Ambari by selecting **Services** > **Restart All Required**.
195194
1. Stop the HBase service.
196195
1. SSH to the Zookeeper node, and execute the [zkCli](https://github.com/go-zkcli/zkcli) command `rmr /hbase-unsecure` to remove the HBase root znode from Zookeeper.
197196
1. Restart HBase.
197+
198198
1. If you're upgrading to any other HDInsight version besides 4.0, follow these steps:
199199
1. Save your changes.
200200
1. Restart all required services as indicated by Ambari.
201+
201202
1. Point your application to the new cluster.
202203
203204
> [!NOTE]
204205
> The static DNS for your application changes when upgrading. Rather than hard-coding this DNS, you can configure a CNAME in your domain name's DNS settings that points to the cluster's name. Another option is to use a configuration file for your application that you can update without redeploying.
205206
206-
12. Start the ingestion to see if everything is functioning as expected.
207-
13. If the new cluster is satisfactory, delete the original cluster.
207+
1. Start the ingestion to see if everything is functioning as expected.
208+
209+
1. If the new cluster is satisfactory, delete the original cluster.
208210
209211
## Next steps
210212

0 commit comments

Comments
 (0)