日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

EMR集群JindoSDK升級流程

本文為您介紹在EMR集群環境中,針對不同應用場景升級JindoSDK的詳細步驟。

前提條件

已創建EMR集群,詳情請參見創建集群

場景一:升級已有集群

如果您創建的EMR-5.6.0及以上版本或EMR-3.40.0及以上版本集群,在使用過程中遇到JindoData版本已知問題,或者需要使用JindoSDK的新功能,可以按照以下步驟升級JindoSDK。JindoSDK的版本說明,請參見JindoSDK版本記錄

重要

如果從JindoSDK 4.6.8或更低版本升級到4.6.9或以上版本、或者升級到6.x系列時,由于JindoCommitter默認使用的作業臨時路徑已更改。為了避免升級過程中數據丟失,請在升級前確保通過在Hadoop-Commoncore-site.xml中設置fs.jdo.committer.allow.concurrent=false,或在Spark配置中加入spark.hadoop.fs.jdo.committer.allow.concurrent=false。一旦您的集群中的所有節點,包括Gateway節點,都完成了JindoSDK的升級,您便可以選擇移除該設置。

步驟一:準備軟件包和升級腳本

  1. 登錄EMR集群的Master節點,詳情請參見登錄集群

  2. 將下載的patch包放在emr-user用戶的HOME目錄下,然后解壓縮patch包。

    su - emr-user
    cd /home/emr-user/
    wget https://jindodata-binary.oss-cn-shanghai.aliyuncs.com/resources/emr-taihao/jindosdk-patches.tar.gz
    tar zxf jindosdk-patches.tar.gz
  3. 下載JindoSDK軟件包jindosdk-{VERSION}.tar.gz,放在解壓后的目錄。

    本文示例是將集群中的JindoSDK升級到6.3.4版本。

    cd jindosdk-patches
    
    wget https://jindodata-binary.oss-cn-shanghai.aliyuncs.com/release/6.3.4/jindosdk-6.3.4-linux.tar.gz
    
    ls -l

    jindosdk-patches內容示例如下所示。

    -rwxrwxr-x 1 emr-user emr-user      2439 May 01 00:00 apply_all.sh
    -rwxrwxr-x 1 emr-user emr-user      7315 May 01 00:00 apply.sh
    -rw-rw-r-- 1 emr-user emr-user        40 May 01 00:00 hosts
    -rw-r----- 1 emr-user emr-user xxxxxxxxx May 01 00:00 jindosdk-6.3.4-linux.tar.gz
    -rwxrwxr-x 1 emr-user emr-user      1112 May 01 00:00 revert_all.sh
    -rwxrwxr-x 1 emr-user emr-user      2042 May 01 00:00 revert.sh

步驟二:配置升級節點信息

  • 手動配置節點信息

    1. 編輯patch包中的hosts文件。

      vim hosts
    2. 添加集群所有節點的hostname,例如master-1-1或core-1-1,文件內容以行分割。

      例如,本文hosts文件內容如下。

      master-1-1
      core-1-1
      core-1-2
  • 自動填充節點信息

    您也可以執行以下命令獲取全部節點信息,如果hosts獲取失敗,則需要手動補全。

    cat  /usr/local/taihao-executor-all/data/cache/.cluster_context | jq --raw-output '.nodes[].hostname.alias[]' > hosts

步驟三:執行升級操作

通過apply_all.sh腳本,升級JindoSDK版本至指定的新版本。

./apply_all.sh $NEW_JINDOSDK_VERSION  # 使用指定的$NEW_JINDOSDK_VERSION執行apply_all.sh腳本,以升級到該版本的JindoSDK。

例如,升級集群中的JindoSDK至6.3.4版本。

./apply_all.sh 6.3.4

返回信息中包含### DONE時,表示腳本執行完成。

>>> updating ...  master-1-1
>>> updating ...  core-1-1
>>> updating ...  core-1-2
### DONE

步驟四:確認升級情況

ls -l /opt/apps/JINDOSDK/jindosdk-current/lib

以從集群默認版本6.2.0升級為6.3.4版本為例,返回示例如下。

lrwxrwxrwx 1 emr-user emr-user 64 Apr 12 11:08 jindo-core-6.2.0.jar -> /opt/apps/JINDOSDK/jindosdk-6.3.4-linux/lib/jindo-core-6.3.4.jar
lrwxrwxrwx 1 emr-user emr-user 82 Apr 12 11:08 jindo-core-linux-el7-aarch64-6.2.0.jar -> /opt/apps/JINDOSDK/jindosdk-6.3.4-linux/lib/jindo-core-linux-el7-aarch64-6.3.4.jar
lrwxrwxrwx 1 emr-user emr-user 63 Apr 12 11:08 jindo-sdk-6.2.0.jar -> /opt/apps/JINDOSDK/jindosdk-6.3.4-linux/lib/jindo-sdk-6.3.4.jar
lrwxrwxrwx 1 emr-user emr-user 50 Apr 12 11:08 native -> /opt/apps/JINDOSDK/jindosdk-6.3.4-linux/lib/native
lrwxrwxrwx 1 emr-user emr-user 57 Apr 12 11:08 site-packages -> /opt/apps/JINDOSDK/jindosdk-6.3.4-linux/lib/site-packages

步驟五:升級后重啟服務

說明

對于已經在運行的YARN作業(Application,例如:Spark Streaming或Flink作業),需要停止作業后,批量滾動重啟YARN NodeManager。

Hive、Presto、Impala、Flink、Ranger、Spark和Zeppelin等服務需要重啟后才能完成升級。

以Hive服務為例,在EMR集群的Hive服務頁面,選擇右上角的更多操作 > 重啟

場景二:擴容已有集群或新建集群

當對現有集群進行擴容并需部署新版JindoSDK時,可通過EMR控制臺的引導操作功能來自動化完成這一過程,確保無論是創建新集群還是向現有集群添加節點時,JindoSDK都能被順利升級至最新版本。請遵循以下詳細步驟實施JindoSDK的升級操作,以高效、準確地完成集群擴容與升級任務。

步驟一:制作引導升級包

  1. 執行以下命令,下載jindosdk-patches.tar.gz、jindosdk-{VERSION}-{PLATFORM}.tar.gz和bootstrap_jindosdk.sh。

    本文示例是將集群中的JindoSDK升級到6.3.4版本。

    mkdir jindo-patch
    
    cd jindo-patch
    
    wget https://jindodata-binary.oss-cn-shanghai.aliyuncs.com/resources/emr-taihao/jindosdk-patches.tar.gz
    
    wget https://jindodata-binary.oss-cn-shanghai.aliyuncs.com/release/6.3.4/jindosdk-6.3.4-linux.tar.gz
    
    wget https://jindodata-binary.oss-cn-shanghai.aliyuncs.com/resources/emr-taihao/bootstrap_jindosdk.sh
    
    ls -l

    返回內容示例如下所示。

    -rw-r----- 1 hadoop hadoop      xxxx May 01 00:00 bootstrap_jindosdk.sh
    -rw-r----- 1 hadoop hadoop xxxxxxxxx May 01 00:00 jindosdk-6.3.4-linux.tar.gz
    -rw-r----- 1 hadoop hadoop      xxxx May 01 00:00 jindosdk-patches.tar.gz
  2. 執行以下命令,制作升級包。

    bash bootstrap_jindosdk.sh -gen $NEW_JINDOSDK_VERSION  # 使用指定的$NEW_JINDOSDK_VERSION執行bootstrap_jindosdk.sh腳本,以升級到該版本的JindoSDK。
    說明
    • 對于擴容現有集群,請使用-gen選項以生成輕量級升級包。

    • 對于新建集群,使用-gen-full選項以生成包含完整內容的升級包。

    例如,升級JindoSDK到6.3.4版本。

    bash bootstrap_jindosdk.sh -gen 6.3.4

    升級包制作成功后,顯示以下內容。

    Generated patch at /home/emr-user/jindo-patch/jindosdk-bootstrap-patches.tar.gz

步驟二:上傳引導升級包

將patch包和bootstrap腳本上傳到OSS上。EMR集群內可以通過Hadoop命令上傳,也可以通過阿里云對象存儲OSS控制臺、ossutil或OSS Browser等工具上傳。

例如,上傳到OSS的路徑為oss://<bucket-name>/path/to/bootstrap_jindosdk.shoss://<bucket-name>/path/to/jindosdk-bootstrap-patches.tar.gz

hadoop dfs -mkdir -p oss://<bucket-name>/path/to/patch/

cd /home/hadoop/patch/
hadoop dfs -put jindosdk-bootstrap-patches.tar.gz oss://<bucket-name>/path/to/patch/
hadoop dfs -put bootstrap_jindosdk.sh oss://<bucket-name>/path/to/patch/

hadoop dfs -ls oss://<bucket-name>/path/to/patch/

返回內容示例如下所示。

Found 2 items
-rw-rw-rw-   1       2634 2022-05-13 14:07 oss://<bucket-name>/.../bootstrap_jindosdk.sh
-rw-rw-rw-   1  597342992 2022-05-13 13:41 oss://<bucket-name>/.../jindosdk-bootstrap-patches.tar.gz

步驟三:添加引導操作

在EMR控制臺添加引導操作。具體步驟,請參見管理引導操作

需添加的配置項如下表所示。

參數

描述

示例

名稱

引導操作的名稱。例如:升級JindoSDK。

update_jindosdk

腳本位置

選擇腳本所在OSS的位置。腳本路徑格式必須為oss://**/*.sh格式。

oss:///path/to/patch/bootstrap_jindosdk.sh

參數

引導操作腳本的參數,指定腳本中所引用的變量的值。

-bootstrap oss:///path/to/patch/jindosdk-bootstrap-patches.tar.gz

執行范圍

選擇集群

集群

執行時間

選擇組件啟動后

組件啟動后

執行失敗策略

選擇繼續執行

繼續執行

步驟四:重啟服務

重啟相關服務,確保加載到最新的修復。

  • 如果是新建集群,則需要重啟Hive、Presto、Impala、Flink、Ranger、Spark和Zeppelin等服務。

  • 如果是擴容新節點,則需要重啟對應節點上的Hive、Presto、Impala、Flink、Ranger、Spark和Zeppelin等服務。

場景三:將JindoSDK回滾至集群默認版本

如果您的集群為EMR-5.6.0及以上或EMR-3.40.0及以上版本,在升級過程中遇到問題需要將集群恢復至默認的JindoSDK版本,可以按照以下步驟操作。

步驟一:準備回滾腳本

  1. 登錄EMR集群的Master節點,詳情請參見登錄集群

  2. 將下載的patch包放在emr-user用戶的HOME目錄下,然后解壓縮patch包。

    su - emr-user
    cd /home/emr-user/
    wget https://jindodata-binary.oss-cn-shanghai.aliyuncs.com/resources/emr-taihao/jindosdk-patches.tar.gz
    tar zxf jindosdk-patches.tar.gz
    cd jindosdk-patches
    ls -l

    返回信息如下所示。

    -rwxrwxr-x 1 emr-user emr-user      2439 May 01 00:00 apply_all.sh
    -rwxrwxr-x 1 emr-user emr-user      7315 May 01 00:00 apply.sh
    -rw-rw-r-- 1 emr-user emr-user        40 May 01 00:00 hosts
    -rwxrwxr-x 1 emr-user emr-user      1112 May 01 00:00 revert_all.sh
    -rwxrwxr-x 1 emr-user emr-user      2042 May 01 00:00 revert.sh

步驟二:配置回滾節點信息

  • 手動配置節點信息

    1. 編輯patch包中的hosts文件。

      vim hosts
    2. 添加集群所有節點的hostname,例如master-1-1或core-1-1,文件內容以行分割。

      例如,本文hosts文件內容如下。

      master-1-1
      core-1-1
      core-1-2
  • 自動填充節點信息

    您也可以執行以下命令獲取全部節點信息,如果hosts獲取失敗,則需要手動補全。

    cat  /usr/local/taihao-executor-all/data/cache/.cluster_context | jq --raw-output '.nodes[].hostname.alias[]' > hosts

步驟三:執行回滾操作

執行以下命令回滾所有更改。

./revert_all.sh

返回信息中包含### DONE時,表示腳本執行完成。

>>> updating ...  master-1-1
>>> updating ...  core-1-1
>>> updating ...  core-1-2
### DONE

步驟四:確認回滾情況

ls -l /opt/apps/JINDOSDK/jindosdk-current/lib

以回滾到6.2.0版本為例,返回示例如下。

-rw-r--r-- 1 emr-user emr-user  1253740 Apr 24 17:40 jindo-core-6.2.0.jar
-rw-r--r-- 1 emr-user emr-user 13110547 Apr 24 17:40 jindo-core-linux-el7-aarch64-6.2.0.jar
-rw-r--r-- 1 emr-user emr-user  4432227 Apr 24 17:40 jindo-sdk-6.2.0.jar
drwxr-xr-x 2 emr-user emr-user     4096 Apr 24 17:40 native

步驟五:重啟服務

說明

對于已經在運行的YARN作業(Application,例如:Spark Streaming或Flink作業),需要停止作業后,批量滾動重啟YARN NodeManager。

Hive、Presto、Impala、Flink、Ranger、Spark和Zeppelin等服務需要重啟后才能完成回滾。

以Hive服務為例,在EMR集群的Hive服務頁面,選擇右上角的更多操作 > 重啟