通常E-MapReduce集群之間相互獨立,每個集群的客戶端只能連接并訪問本集群內(nèi)配置的namespace。在多集群的情況下,您可以通過配置JindoFS實現(xiàn)跨集群互訪。本文以集群A訪問集群B為例,介紹如何跨集群訪問JindoFS。

前提條件

  • 已創(chuàng)建EMR-3.30.0及后續(xù)版本的同一VPC下的集群A和B,詳情請參見創(chuàng)建集群
  • 配置/etc/hosts文件,同步B集群所有節(jié)點的hosts至A集群。

修改配置

  1. 進入SmartData服務。
    1. 登錄阿里云E-MapReduce控制臺
    2. 在頂部菜單欄處,根據(jù)實際情況選擇地域(Region)和資源組
    3. 單擊上方的集群管理頁簽。
    4. 集群管理頁面,單擊相應集群所在行的詳情
    5. 在左側(cè)導航欄單擊集群服務 > SmartData
  2. 進入client服務配置。
    1. 單擊配置頁簽。
    2. 服務配置區(qū)域,單擊client頁簽。
  3. 修改配置信息,實現(xiàn)跨集群訪問。
    根據(jù)B集群的namespace.backend.type參數(shù)配置A集群:
    • 當B集群的namespace.backend.typerocksdb時,執(zhí)行如下操作:
      1. 單擊右上角的自定義配置
      2. 新增配置項對話框中,添加client.external.namespace.rpc.addressesemr-header-1.<cluster-B>:8101,單擊確定
        說明 <cluster-B>為集群B的集群ID。
    • 當B集群的namespace.backend.typeraft時,執(zhí)行如下操作:
      1. 單擊右上角的自定義配置
      2. 新增配置項對話框中,添加client.external.namespace.rpc.addressesemr-header-1.<cluster-B>:8101,emr-header-2.<cluster-B>:8101,emr-header-3.<cluster-B>:8101,單擊確定
  4. 保存配置。
    1. 單擊右上角的保存
    2. 確認修改對話框中,輸入執(zhí)行原因,開啟自動更新配置
    3. 單擊確定

關(guān)聯(lián)多個集群

client.external.namespace.rpc.addresses配置多個遠端地址時,即可實現(xiàn)關(guān)聯(lián)多個集群,不同的集群地址通過英文分號(;)隔開。

例如,集群A需要關(guān)聯(lián)集群B和集群C,B集群(rocksdb實現(xiàn))地址為emr-header-1.<cluster-B>:8101,C集群(raft實現(xiàn))地址為emr-header-1.<cluster-C>:8101,emr-header-2.<cluster-C>:8101,emr-header-3.<cluster-C>:8101那A集群需要添加的配置信息為client.external.namespace.rpc.addresses=emr-header-1.<cluster-B>:8101;emr-header-1.<cluster-C>:8101,emr-header-2.<cluster-C>:8101,emr-header-3.<cluster-C>:8101