本文檔提供了從零開始實現區塊鏈部署的快速入門手冊,其中大部分設定均採用預設值或者樣本值。如需瞭解更全面的配置方式,請參閱後續章節的詳細介紹。

限制條件

  • 需要註冊帳號,開通Container Service。
  • 容器叢集和 NAS 檔案系統必須位於相同的地區,請確保所選地區能同時支援 kubernetes 叢集模式和 NAS 檔案系統(取兩者交集)。關於 NAS 檔案系統支援地區列表請參見 產品與服務 > 檔案儲存體 > NAS > 檔案系統列表
  • 檔案系統的使用方式僅適用於區塊鏈相關應用和解決方案的開發、測試階段,如需在生產環境部署,請聯絡我們進一步探討具體的業務和技術需求,以共同決定最適合的方式。

步驟 1 建立 Kubernetes 叢集

  1. 登入 Container Service控制台
  2. 在 Kubernetes 菜單下,單擊左側導航中的 叢集,再單擊右上方的 建立 Kubernetes 叢集


  3. 設定叢集的基本資料。本樣本相關配置如下:
    • 輸入集群名稱,例如:k8s-blockchain。
    • 地區:選擇 華東1
    • 可用性區域:選擇 華東1可用性區域A
    • 網路類型:單擊 專用網路。如沒有現成的 VPC 專用網路,則單擊 自動建立
    • 設定 登入密碼確認密碼
    • 設定執行個體規格和數量。區塊鏈網路部署需要佔用較多資源,推薦使用預設配置。
    • SSH登入:勾選 開放公網SSH登入
    • 最後單擊 建立叢集。等待叢集建立完成(約需要數分鐘)。
  4. 返回叢集列表頁面, 選擇剛建立的 k8s-blockchain 叢集,單擊 管理


  5. 在叢集的基本資料頁面 ,記錄 Master 節點 SSH 串連地址 (此為公網地址)。


  6. 在節點列表頁面, 記錄當前叢集對應的節點(Master 和 Worker)的 IP 位址 (此為內網地址)。


步驟 2 為 Worker 節點綁定彈性公網 IP

  1. 登入 IP 管理主控台
  2. 在左側導覽列,單擊 彈性公網 IP,然後單擊右上方的 申請Elastic IP Address
  3. 選擇 k8s-blockchain 叢集所在地區,對於其他設定,根據需要自行選擇,然後單擊 立即購買
  4. 開通完成後,等上述購買的 IP 執行個體出現在列表後,單擊 綁定


  5. 在 ECS 執行個體下拉式清單中,選擇一個 worker 節點(名稱是以 node 結尾的執行個體),單擊 確定
  6. 完成綁定後,回到彈性公網 IP 列表,記錄上述建立執行個體的 IP 位址。

步驟 3 建立檔案系統和添加掛載點

  1. 登入 Network Attached Storage 控制台
  2. 在頁面頂部地區列表中,單擊 華東1。單擊右上方的 建立檔案系統


  3. 在彈出的 建立檔案系統 對話方塊進行配置。


    • 地區:選擇 華東1。選擇與容器叢集相同的地區。
    • 儲存類型:本樣本選擇 容量型
    • 協議類型:選擇 NFS
    • 可用性區域:選擇 華東1可用性區域B。同一地區不同可用性區域可以互連。
    • 單擊 確定
  4. 單擊 點擊前往


  5. 配置 NAS 儲存包。


    • 儲存類型:本樣本選擇 容量型
    • 購買時間長度:本樣本選擇1個月,請根據實際需要選擇。
    • 單擊 立即購買
  6. 如果在建立 Kubernetes 叢集的時候,選擇的是 使用已有 專用網路,請忽略本步驟,繼續下一步;如果在建立 Kubernetes 叢集的時候,選擇的是 自動建立 專用網路,請前往 VPC控制台,將 VPC 網路名稱修改為容易識別的標誌,例如,blockchain_huadong1。


  7. 在新建立的檔案系統的巨集指令清單中,單擊 添加掛載點。在彈出的 添加掛載點 對話方塊中進行配置。


    • 掛載點類型:選擇 專用網路
    • VPC網路:選擇在建立容器叢集環節的 VPC 網路。
    • 交換器:選擇在建立容器叢集環節的 虛擬交換器。
    • 許可權組:選擇 VPC 預設許可權組
    • 單擊 確定
  8. 在檔案系統的巨集指令清單中,單擊 管理。在檔案系統詳情頁面記錄 掛載地址


步驟 4 配置部署區塊鏈網路

  1. 在 Kubernetes 菜單下,單擊左側導航中的市場 > 應用目錄。在右側列表地區找到 ack-hyperledger-fabric,並單擊該地區。


  2. 在 ack-hyperledger-fabric 應用介面右側地區,選擇部署叢集,並填寫發布名稱


  3. 單擊 參數 標籤,查看或者修改相關部署參數。
    • sharedStorage: 輸入步驟3建立檔案系統和添加掛載點中記錄的NAS檔案系統掛載地址(必填,否則將部署失敗)。
    • dockerImageRegistry:根據部署所在地區(中國或海外),從注釋中的可選項中選擇對應的容器鏡像倉庫地址填入。
    • externalAddress: 輸入上文 Worker 節點綁定的彈性公網 IP,用於產生connection profile。


  4. 單擊 建立
    说明 如參數中的 sharedStorage未作配置,部署過程將會報 spec.nfs.server: Required value的錯誤。出現此錯誤後,需要先刪除對應的發布名稱,然後填寫 sharedStorage參數值,並重新部署。
  5. 進入部署叢集的控制台介面,查看區塊鏈網路相關 pods 的狀態,直到全部變為 Running。


容器控制台的 Kubernetes 服務也支援通過 helm 部署區塊鏈網路,具體請參見配置部署區塊鏈

步驟 5 用 CLI 測試區塊鏈網路

  1. 在 Kubernetes 叢集的 master 節點上,執行以下命令進入 CLI 容器。
    kubectl exec -it <fabricNetwork>-fabric-cli bash
  2. 執行以下命令開始 CLI 測試。
    ./cli-test.sh
  3. 測試過程中,按任意鍵繼續下一步。
  4. 如測試過程中沒有任何錯誤,並且最後出現如下字樣,說明測試已經成功完成。
      ===================== Query on PEER4 on channel 'bankchannel' is successful ===================== 
      Press any key to continue...
      ===================== All GOOD, End-2-End execution completed =====================

步驟 6 訪問區塊鏈瀏覽器

  1. 登入 Container Service控制台
  2. 在Kubernetes菜單下,單擊左側導覽列中的應用 > 服務,選擇所需的叢集和命名空間,找到<網路名稱>-explorer服務並訪問其外部端點。

    您也可在 Kubernetes 叢集的 master 節點上運行 kubectl get svc 命令,或者登入Container Service控制台,進入 kubernetes 叢集的控制台,單擊左側導覽列中的 服務,然後查看 <網路名稱>-explorer 服務的 EXTERNAL-IP(外部端點)。



  3. 在網路瀏覽器中訪問上述 EXTERNAL-IP(外部端點)。


步驟 7 刪除區塊鏈網路

  1. 在 Kubernetes 菜單下,在左側導覽列單擊應用 > Helm,選擇區塊鏈網路對應的發布名稱,單擊刪除


  2. 在彈出的 刪除應用 交談視窗,單擊確定


至此我們便完成了環境準備、區塊鏈配置部署、測試區塊鏈、刪除區塊鏈的一系列基本操作。對於後續的開發測試,可以複用區塊鏈配置部署、測試區塊鏈、刪除區塊鏈的步驟;或者根據實際需要、按照產品文檔的指引,進一步定製區塊鏈網路環境。