將 HDInsight 叢集移轉至較新版本
若要利用最新的 HDInsight 功能,建議您定期將 HDInsight 叢集移轉至最新版本。 HDInsight 不支援將現有叢集升級為較新的元件版本就地升級。 您必須使用所需的元件和平臺版本建立新的叢集,然後移轉應用程式以使用新的叢集。 請遵循下列指導方針來移轉 HDInsight 叢集版本。
注意
如果您要建立具有主要記憶體容器的Hive叢集,請從現有的HDInsight叢集複製它。 請勿複製完整的內容。 只複製已設定的數據資料夾。
移轉工作
升級 HDInsight 叢集的工作流程如下所示。
- 請閱讀本檔的每個區段,以了解升級 HDInsight 叢集時可能需要的變更。
- 建立叢集作為測試/品質保證環境。 如需建立叢集的詳細資訊,請參閱 瞭解如何建立以Linux為基礎的HDInsight叢集
- 將現有的作業、數據源和接收複製到新的環境。
- 執行驗證測試,以確保您的作業在新的叢集上如預期般運作。
一旦您確認一切如預期般運作,請排程移轉的停機時間。 在此停機時間期間,請執行下列動作:
- 備份儲存在叢集節點上本機的任何暫時性數據。 例如,如果您已將數據直接儲存在前端節點上。
- 刪除現有的叢集。
- 使用先前叢集所使用的相同預設數據存放區,在同一個 VNET 子網中建立具有最新(或支援)HDI 版本的叢集。 這可讓新的叢集繼續處理現有的生產數據。
- 匯入您備份的任何暫時性數據。
- 使用新的叢集啟動作業/繼續處理。
工作負載特定指引
下列檔提供如何移轉特定工作負載的指引:
備份及還原
如需資料庫備份和還原的詳細資訊,請參閱使用自動資料庫備份復原 Azure SQL 資料庫 中的資料庫。
升級案例
如上所述,Microsoft 建議定期將 HDInsight 叢集移轉至最新版本,以利用新功能和修正。 請參閱下列原因清單,我們要求刪除和重新部署叢集:
- 叢集版本已 淘汰 ,或您遇到使用較新版本解決的叢集問題。
- 叢集問題的根本原因會決定與大小過低的 VM 產生關聯。 檢視 Microsoft 建議的節點組態。
- 客戶會開啟支援案例,而 Microsoft 工程小組會判斷此問題已在較新的叢集版本中修正。
- 默認中繼存放區資料庫(Ambari、Hive、Oozie、Ranger)已達到其使用率限制。 Microsoft 要求您使用 自定義中繼存放區 資料庫重新建立叢集。
- 叢集問題 的根本原因是不支持的作業。 以下是一些常見的不支援作業:
- 在Ambari中移動或新增服務。 請參閱 Ambari 中的叢集服務資訊,其中一個可從 [服務動作] 選單取得的動作是 移動 [服務名稱] 。 另一個動作是 [服務名稱]。 不支援這兩個選項。
- Python 套件損毀。 HDInsight 叢集取決於內建的 Python 環境、Python 2.7 和 Python 3.5。 直接在這些預設的內建環境中安裝自定義套件可能會導致非預期的連結庫版本變更並中斷叢集。 瞭解如何 安全地為您的Spark應用程式安裝自定義外部 Python 套件 。
- 第三方軟體。 客戶能夠在 HDInsight 叢集上安裝第三方軟體;不過,如果叢集中斷現有的功能,建議您重新建立叢集。
- 相同叢集上的多個工作負載。 在 HDInsight 4.0 中,Hive 倉儲 連線 or 需要 Spark 和互動式查詢工作負載的個別叢集。 請遵循下列步驟,在 Azure HDInsight 中設定這兩個叢集。 同樣地,將 Spark與 HBASE 整合需要兩個不同的叢集。
- 自訂Ambari DB密碼已變更。 Ambari DB 密碼會在叢集建立期間設定,而且沒有更新它的最新機制。 如果客戶使用 自定義 Ambari DB 部署叢集,他們就能夠變更 SQL DB 上的 DB 密碼;不過,無法更新執行中 HDInsight 叢集的這個密碼。
- 修改 HDInsight Load Balancer。 不應修改或刪除針對Ambari和SSH存取自動部署的HDInsight負載平衡器。 如果您修改 HDInsight 負載平衡器,並中斷叢集功能,建議您重新部署叢集。