開始使用 EFA 和 MPI - Amazon Elastic Compute Cloud

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

開始使用 EFA 和 MPI

本教學課程協助您啟動 EFA 和 MPI 啟用的執行個體叢集用於 HPC 工作負載。在本教學課程中,您將執行下列步驟:

步驟 1:準備具備 EFA 功能的安全群組

EFA 需要有安全群組來允許往返安全群組自身的所有傳入和傳出流量。下列程序會建立一個安全群組,該安全群組允許所有傳入和傳出流量,並允許來自任何 IPv4 地址的傳入 SSH 流量以進行 SSH 連線。

重要

此安全群組僅供測試之用。對於生產環境,我們建議您建立傳入 SSH 規則,該規則僅允許來自連線 IP 地址的流量,例如電腦的 IP 地址或區域網路中的一系列 IP 地址。

如需其他案例,請參閱不同使用案例的安全群組規則

建立具備 EFA 功能的安全群組
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Security Groups (安全群組),然後選擇 Create Security Group (建立安全群組)。

  3. Create Security Group (建立安全群組) 視窗中,執行下列動作:

    1. 對於 Security group name (安全群組名稱),輸入安全群組的描述性名稱,例如 EFA-enabled security group

    2. (選用) 對於 Description (描述),輸入安全群組的簡短描述。

    3. 對於 VPC,選取您打算讓具備 EFA 功能的執行個體在其中啟動的 VPC。

    4. 選擇 Create Security Group (建立安全群組)。

  4. 選取您建立的安全群組,在 Details (詳細資料) 索引標籤上,複製 Security group ID (安全群組 ID)。

  5. 在仍然選取安全群組的情況下,依序選取 Actions (動作) 和 Edit inbound rules (編輯傳入規則),然後執行下列動作。

    1. 選擇新增規則

    2. 針對類型,選擇所有流量

    3. 若為 Source type (來源類型),選擇 Custom (自訂),然後將您複製的安全群組 ID 貼到欄位中。

    4. 選擇新增規則

    5. 針對 Type (類型),選擇 SSH

    6. 針對 Source type (來源類別),選擇 Anywhere-IPv4(隨處 - IPv4)。

    7. 選擇儲存規則

  6. 在仍然選取安全群組的情況下,依序選取 Actions (動作) 和 Edit outbound rules (編輯傳出規則),然後執行下列動作。

    1. 選擇新增規則

    2. 針對類型,選擇所有流量

    3. 若為 Destination type (目的地類型),選擇 Custom (自訂),然後將您複製的安全群組 ID 貼到欄位中。

    4. 選擇儲存規則

步驟 2:啟動暫時執行個體

啟動暫時執行個體,以用來安裝和設定 EFA 軟體元件。您可以使用此執行個體來建立具備 EFA 功能的 AMI,再從中啟動具備 EFA 功能的執行個體。

啟動暫時執行個體
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Instances (執行個體),接著選擇 Launch Instances (啟動執行個體) 來開啟新的啟動執行個體精靈。

  3. (選用) 在 Name and tags (名稱和標籤) 區段中,為執行個體命名,例如,EFA-instance。該名稱將指派作為執行個體的資源標籤 (Name=EFA-instance)。

  4. Application and OS Images (應用程式和作業系統映像) 區段中,為其中一個支援的作業系統選取 AMI。

  5. Instance type (執行個體類型) 區段中,選取支援的執行個體類型

  6. Key pair (金鑰對) 區段中,選取要用於執行個體的金鑰對。

  7. Network settings (網路設定) 區段,選擇 Edit (編輯),接著執行下列動作:

    1. 對於 Subnet (子網),請選擇要在其中啟動執行個體的子網。若您未選取子網,便無法啟用 EFA 的執行個體。

    2. 針對 Firewall (security groups) (防火牆 (安全群組)),選取 Select existing security group (選取現有的安全群組),接著選取您在前一個步驟中建立的安全群組。

    3. 展開 Advanced network configuration (進階網路組態) 區段,並針對 Elastic Fabric Adapter,選取 Enable (啟用)。

  8. 儲存 區段中,根據需求設定磁碟區。

  9. 在右邊的 Summary (摘要) 面板中,選擇 Launch instance (啟動執行個體)。

步驟 3:安裝 EFA 軟體

在暫存執行個體上安裝支援 EFA 所需的具備 EFA 功能的核心、EFA 驅動程式、Libfabric 和 Open MPI 堆疊。

該步驟會根據您是否打算將 EFA 與 Open MPI、Intel MPI 或 Open MPI 與 Intel MPI 搭配使用而有所不同。

安裝 EFA 軟體
  1. 連接至您啟動的執行個體。如需詳細資訊,請參閱 連接至您的 Linux 執行個體

  2. 為確保所有軟體套件皆為最新版本,請對您的執行個體執行快速軟體更新。此程序可能需要幾分鐘的時間。

    • Amazon Linux 2023, Amazon Linux 2, RHEL 7/8/9, CentOS 7, 洛基 Linux 8/9

      $ sudo yum update -y
    • Ubuntu 和 Debian

      $ sudo apt-get update && sudo apt-get upgrade -y
    • SUSE Linux Enterprise

      $ sudo zypper update -y
  3. 重新啟動執行個體並重新連線至其中。

  4. 下載 EFA 軟體安裝檔案。軟體安裝檔案已封裝成壓縮 tarball (.tar.gz) 檔案。若要下載最新穩定版本,請使用下列命令:

    $ C:\> curl -O https://efa-installer.amazonaws.com/aws-efa-installer-1.33.0.tar.gz

    您也可以在之前的命令中以 latest 取代版本號碼,以取得最新版本。

  5. (選用) 驗證 EFA tarball (.tar.gz) 檔案的真確性及完整性。

    我們建議您執行這項操作來確認軟體發行者的身分,並檢查檔案自發行以來並未遭到變更或損毀。如果您不想驗證 tarball 檔案,請略過此步驟。

    注意

    或者,如果您偏好使用 MD5 或 SHA256 檢查總和來驗證 tarball 檔案,請參閱使用檢查總和驗證 EFA 安裝程式

    1. 下載公有 GPG 金鑰並匯入至您的 keyring。

      $ wget https://efa-installer.amazonaws.com/aws-efa-installer.key && gpg --import aws-efa-installer.key

      命令應傳回金鑰值。請記下金鑰的值,因為下一個步驟將需要它。

    2. 驗證 GPG 金鑰的指紋。執行以下命令,並指定上一步驟中的金鑰值。

      $ gpg --fingerprint key_value

      命令應傳回與 4E90 91BC BB97 A96B 26B1 5E59 A054 80B1 DD2D 3CCC 相同的指紋。如果指紋不相符,請勿執行 EFA 安裝指令碼,並聯絡 AWS Support。

    3. 下載簽章檔案並驗證 EFA tarball 檔案的簽章。

      $ wget https://efa-installer.amazonaws.com/aws-efa-installer-1.33.0.tar.gz.sig && gpg --verify ./aws-efa-installer-1.33.0.tar.gz.sig

      下面顯示了範例輸出。

      gpg: Signature made Wed 29 Jul 2020 12:50:13 AM UTC using RSA key ID DD2D3CCC gpg: Good signature from "Amazon EC2 EFA <ec2-efa-maintainers@amazon.com>" gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: 4E90 91BC BB97 A96B 26B1 5E59 A054 80B1 DD2D 3CCC

      如果結果包含Good signature,而指紋與上一個步驟中傳回的指紋相符,請繼續下一個步驟。如果指紋不相符,請勿執行 EFA 安裝指令碼,並聯絡 AWS Support。

  6. 從壓縮的 .tar.gz 檔案中解壓縮檔案,然後導覽至解壓縮的目錄。

    $ C:\> tar -xf aws-efa-installer-1.33.0.tar.gz && cd aws-efa-installer
  7. 安裝 EFA 軟體。根據使用案例而定,執行以下其中一個命令。

    注意

    EFA 不支援使用 SUSE Linux 的 NVIDIA GPUDirect。如果您使用的是 SUSE Linux,您必須另外指定 --skip-kmod 選項來防止 kmod 安裝。根據預設,SUSE Linux 不允許 out-of-tree 核心模組。

    Open MPI and Intel MPI

    如果您打算將 EFA 與 Open MPI 和 Intel MPI 搭配使用,您必須使用 Libfabric 和 Open MPI 安裝 EFA 軟體,且必須完成「步驟 5:安裝 Intel MPI」

    若要使用 Libfabric 和 Open MPI 安裝 EFA 軟體,請執行下列命令。

    注意

    從 EFA 1.30.0 開始,根據預設會安裝 Open MPI 4 和 Open MPI 5。您可以選擇是否指定您要安裝的 Open MPI 版本。若僅要安裝 Open MPI 4,請包括 --mpi=openmpi4。若要安裝 Open MPI 5,請納入 --mpi=openmpi5。若要同時安裝這兩種版本,請忽略 --mpi 選項。

    $ sudo ./efa_installer.sh -y

    Libfabric 會安裝到 /opt/amazon/efa。Open MPI 4 會安裝到 /opt/amazon/openmpi。Open MPI 5 會安裝到 /opt/amazon/openmpi5

    Open MPI only

    如果您打算將 EFA 與 Open MPI 搭配使用,您必須使用 Libfabric 和 Open MPI 安裝 EFA 軟體,且必須跳過「步驟 5:安裝 Intel MPI」。若要使用 Libfabric 和 Open MPI 安裝 EFA 軟體,請執行下列命令。

    注意

    從 EFA 1.30.0 開始,根據預設會安裝 Open MPI 4 和 Open MPI 5。您可以選擇是否指定您要安裝的 Open MPI 版本。若僅要安裝 Open MPI 4,請包括 --mpi=openmpi4。若要安裝 Open MPI 5,請納入 --mpi=openmpi5。若要同時安裝這兩種版本,請忽略 --mpi 選項。

    $ sudo ./efa_installer.sh -y

    Libfabric 會安裝到 /opt/amazon/efa。Open MPI 4 會安裝到 /opt/amazon/openmpi。Open MPI 5 會安裝到 /opt/amazon/openmpi5

    Intel MPI only

    如果您打算只將 EFA 與 Intel MPI 搭配使用,您無需使用 Libfabric 和 Open MPI 即可安裝 EFA 軟體。在這種情況下,Intel MPI 會使用其內嵌 Libfabric。如果您選擇這麼做,您必須完成步驟 5:安裝 Intel MPI

    若要在不使用 Libfabric 和 Open MPI 的情況下安裝 EFA 軟體,請執行下列命令。

    $ sudo ./efa_installer.sh -y --minimal
  8. 如果 EFA 安裝程式提示您重新啟動執行個體,請執行這項操作,然後重新連線至執行個體。否則,請登出執行個體,然後重新登入以完成安裝。

步驟 4:(選用) 啟用 Open MPI 5

注意

只有在您打算使用 Open MPI 5 時,才執行此步驟。

從 EFA 1.30.0 開始,根據預設會安裝 Open MPI 4 和 Open MPI 5。或者,您也可以選擇僅安裝 Open MPI 4 或 Open MPI 5。

如果您在步驟 3:安裝 EFA 軟體中選擇安裝且有意使用 Open MPI 5,則必須執行下列步驟以啟用 Open MPI 5。

啟用 Open MPI 5
  1. 將 Open MPI 5 新增至 PATH 環境變數。

    $ module load openmpi5
  2. 確認是否已啟用 Open MPI 5 以供使用。

    $ which mpicc

    此命令應會傳回 Open MPI 5 安裝目錄 - /opt/amazon/openmpi5

  3. (選用) 若要確保在每次執行個體啟動時,Open MPI 5 都會新增至 PATH 環境變數,請執行下列動作:

    bash shell

    module load openmpi5 新增至 /home/username/.bashrc/home/username/.bash_profile

    csh and tcsh shells

    module load openmpi5 新增至 /home/username/.cshrc

如果您需要從 PATH 環境變數移除 Open MPI 5,請執行下列命令,並從 shell 啟動指令碼中移除該命令。

$ module unload openmpi5

步驟 5:(選用) 安裝 Intel MPI

重要

只有在您打算使用 Intel MPI 時,才執行此步驟。如果您打算使用 Open MPI,請略過此步驟。

Intel MPI 需要額外的安裝和環境變數組態。

先決條件

確保執行下列步驟的使用者具有 sudo 許可。

安裝 Intel MPI
  1. 如要下載 Intel MPI 安裝指令碼,請執行下列步驟

    1. 請造訪 Intel 網站

    2. 在該網頁的 Intel MPI Library 區段中,選擇 Intel MPI Library for Linux Offline 安裝程式。

  2. 執行您在上一個步驟中下載的安裝指令碼。

    $ sudo bash installation_script_name.sh
  3. 在安裝程式中,選擇 Accept & install (接受並安裝)。

  4. 閱讀 Intel 改進計畫,選擇適當的選項,然後選擇 Begin Installation (開始安裝)。

  5. 完成安裝時,請選擇 Close (關閉)

  6. 根據預設,Intel MPI 會使用其內嵌 (內部) Libfabric。您可以將 Intel MPI 設定為使用 EFA 安裝程式隨附的 LibFabric。通常,EFA 安裝程式隨附的 Libfabric 版本比 Intel MPI 版本更高。在某些情況下,EFA 安裝程式隨附的 Libfabric 比 Intel MPI 效能更佳。若要將 Intel MPI 設定為使用 EFA 安裝程式隨附的 Libfabric,請根據您的 shell 執行下列其中一項操作。

    bash shells

    將以下陳述式新增至 /home/username/.bashrc/home/username/.bash_profile

    export I_MPI_OFI_LIBRARY_INTERNAL=0
    csh and tcsh shells

    將以下陳述式新增至 /home/username/.cshrc

    setenv I_MPI_OFI_LIBRARY_INTERNAL 0
  7. 新增下列 source 命令到您的 shell 指令碼,從安裝目錄中獲取 vars.sh 的指令碼,從而在每次啟動執行個體時設定編譯器環境。根據 shell 而定,執行以下其中一個命令。

    bash shells

    將以下陳述式新增至 /home/username/.bashrc/home/username/.bash_profile

    source /opt/intel/oneapi/mpi/latest/env/vars.sh
    csh and tcsh shells

    將以下陳述式新增至 /home/username/.cshrc

    source /opt/intel/oneapi/mpi/latest/env/vars.csh
  8. 根據預設,如果因為設定錯誤而無法使用 EFA,Intel MPI 會預設使用 TCP/IP 網路堆疊,這可能會導致應用程式效能降低。透過將 I_MPI_OFI_PROVIDER 設定為 efa,可防止此情況發生。如果無法使用 EFA,這會導致 Intel MPI 失敗,並出現下列錯誤:

    Abort (XXXXXX) on node 0 (rank 0 in comm 0): Fatal error in PMPI_Init: OtherMPI error, MPIR_Init_thread (XXX)........: MPID_Init (XXXX)..............: MPIDI_OFI_mpi_init_hook (XXXX): open_fabric (XXXX)............: find_provider (XXXX)..........: OFI fi_getinfo() failed (ofi_init.c:2684:find_provider:

    根據 shell 而定,執行以下其中一個命令。

    bash shells

    將以下陳述式新增至 /home/username/.bashrc/home/username/.bash_profile

    export I_MPI_OFI_PROVIDER=efa
    csh and tcsh shells

    將以下陳述式新增至 /home/username/.cshrc

    setenv I_MPI_OFI_PROVIDER efa
  9. 根據預設,Intel MPI 不會列印偵錯資訊。您可以指定不同的詳細資訊等級來控制偵錯資訊。可能的值 (依提供的詳細資訊量排序) 為:0 (預設)、12345。等級 1 和更高等級會列印 libfabric versionlibfabric provider。使用 libfabric version 檢查 Intel MPI 使用的是內部 LibFabric 還是 EFA 安裝程式隨附的 LibFabric。如果它使用的是內部 Libfabric,則版本字尾為 impi。使用 libfabric provider 檢查 Intel MPI 是否的是 EFA 還是或 TCP/IP 網絡。如果使用的是 EFA,則值為 efa。如果使用的是 TCP/IP,則值為 tcp;ofi_rxm

    若要啟用偵錯資訊,請根據您的 shell 執行以下其中一個命令。

    bash shells

    將以下陳述式新增至 /home/username/.bashrc/home/username/.bash_profile

    export I_MPI_DEBUG=value
    csh and tcsh shells

    將以下陳述式新增至 /home/username/.cshrc

    setenv I_MPI_DEBUG value
  10. 根據預設,Intel MPI 會使用作業系統的共用記憶體 (shm) 進行節點內通訊,並且僅將 Libfabric (ofi) 用於節點間通訊。通常,此組態可提供最佳效能。不過,在某些情況下,Intel MPI shm 結構可能會導致某些應用程式無限期中止。

    若要解決此問題,您可以強制 Intel MPI 使用 Libfabric 進行節點內和節點間通訊。為此,請根據您的 shell,執行以下其中一個命令。

    bash shells

    將以下陳述式新增至 /home/username/.bashrc/home/username/.bash_profile

    export I_MPI_FABRICS=ofi
    csh and tcsh shells

    將以下陳述式新增至 /home/username/.cshrc

    setenv I_MPI_FABRICS ofi
    注意

    EFA Libfabric 提供者會使用作業系統的共用記憶體進行節點內通訊。這表示將 I_MPI_FABRICS 設定為 ofi 可產生與預設 shm:ofi 組態類似的效能。

  11. 登出執行個體,然後重新登入。

如果您不要再使用 Intel MPI,請從 shell 啟動指令碼中移除環境變數。

步驟 6:停用 ptrace 保護

為了改善 HPC 應用程式的效能,在相同執行個體上執行處理序時,Libfabric 會使用執行個體的本機記憶體進行處理序間通訊。

共用記憶體功能使用 Cross Memory Attach (CMA),其未受 ptrace 保護支援。如果您使用的 Linux 發行套件依預設已啟用 ptrace 防護,例如 Ubuntu,您必須停用該保護。如果您的 Linux 發行套件依預設未啟用 ptrace 保護,請略過此步驟。

停用 ptrace 保護

請執行下列其中一項:

  • 如果出於測試用途要暫時停用 ptrace 保護,請執行下列命令。

    $ sudo sysctl -w kernel.yama.ptrace_scope=0
  • 若要永久停用 ptrace 保護,請將 kernel.yama.ptrace_scope = 0 新增至 /etc/sysctl.d/10-ptrace.conf,並重新啟動執行個體。

步驟 7. 確認安裝

確認已成功安裝
  1. 若要確認已成功安裝 MPI,請執行下列命令:

    $ which mpicc
    • 若為 Open MPI,傳回的路徑應包括 /opt/amazon/

    • 若為 Intel MPI,傳回的路徑應包括 /opt/intel/。如果沒有得到預期輸出,請確保已獲取 Intel MPI vars.sh 指令碼。

  2. 若要確認是否已成功安裝 EFA 軟體元件和 Libfabric,請執行下列命令。

    $ fi_info -p efa -t FI_EP_RDM

    此命令應該會傳回 Libfabric EFA 介面的相關資訊。以下範例顯示命令輸出。

    provider: efa fabric: EFA-fe80::94:3dff:fe89:1b70 domain: efa_0-rdm version: 2.0 type: FI_EP_RDM protocol: FI_PROTO_EFA

步驟 8:安裝 HPC 應用程式

在暫時執行個體上安裝 HPC 應用程式。安裝程序依特定的 HPC 應用程式而異。如需詳細資訊,請參閱 Amazon Linux 2 使用者指南的管理 AL2 執行個體上的軟體

注意

參考 HPC 應用程式的文件,以取得安裝指示。

步驟 9:建立已啟用 EFA 的 AMI

安裝所需的軟體元件之後,您需要建立 AMI,以重複用來啟動具備 EFA 功能的執行個體。

從暫時執行個體建立 AMI
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Instances (執行個體)。

  3. 選取您建立的暫時執行個體,然後選取 Actions (動作)、Image (映像)、Create image (建立映像)。

  4. 對於 Create image (建立映像),執行下列動作:

    1. 對於 Image name (映像名稱),輸入 AMI 的描述性名稱。

    2. (選用) 對於 Image description (映像描述),輸入 AMI 的簡短描述。

    3. 選擇Create image

  5. 在導覽窗格中,選擇 AMIs (AMI)。

  6. 在清單中找出您建立的 AMI。等待狀態從 pending 變為 available,再繼續進行下一個步驟。

步驟 10:在集群放置群組中啟動已啟用 EFA 的執行個體

使用具備 EFA 功能的 AMI (在步驟 7 中建立) 和具備 EFA 功能的安全群組 (在步驟 1 中建立),在集群放置群組中啟動具備 EFA 功能的執行個體。

注意
  • 在集群放置群組中啟動具備 EFA 的執行個體並非絕對必要。不過,建議在集群放置群組中執行具備 EFA 功能的執行個體,因為這樣會在單一可用區域的低延遲群組中啟動執行個體。

  • 要確保在擴展叢集執行個體時容量可用,您可以為集群放置群組建立容量保留。如需詳細資訊,請參閱 集群放置群組中的容量保留

啟動暫時執行個體
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Instances (執行個體),接著選擇 Launch Instances (啟動執行個體) 來開啟新的啟動執行個體精靈。

  3. (選用) 在 Name and tags (名稱和標籤) 區段中,為執行個體命名,例如,EFA-instance。該名稱將指派作為執行個體的資源標籤 (Name=EFA-instance)。

  4. Application and OS Images (應用程式和作業系統映像) 區段中,選取 My AMIs (我的 AMI),接著選取您在前一個步驟中建立的 AMI。

  5. Instance type (執行個體類型) 區段中,選取支援的執行個體類型

  6. Key pair (金鑰對) 區段中,選取要用於執行個體的金鑰對。

  7. Network settings (網路設定) 區段,選擇 Edit (編輯),接著執行下列動作:

    1. 對於 Subnet (子網),請選擇要在其中啟動執行個體的子網。若您未選取子網,便無法啟用 EFA 的執行個體。

    2. 針對 Firewall (security groups) (防火牆 (安全群組)),選取 Select existing security group (選取現有的安全群組),接著選取您在前一個步驟中建立的安全群組。

    3. 展開 Advanced network configuration (進階網路組態) 區段,並針對 Elastic Fabric Adapter,選取 Enable (啟用)。

  8. 選用)在 儲存 區段中,根據需求設定磁碟區。

  9. 進階詳細資訊 區段中,針對 配置群組名稱,選取要在其中啟動執行個體的集群放置群組。如果您需要建立新的集群放置群組,請選取 建立新的配置群組

  10. 在右邊的 摘要 面板,針對 執行個體的數目,輸入要啟動的具備 EFA 功能的執行個體數量,接著選擇 啟動執行個體

步驟 11:終止暫時執行個體

此時,您不再需要您啟動的暫時執行個體。您可以終止執行個體,以停止產生費用。

終止暫時執行個體
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Instances (執行個體)。

  3. 選取您建立的暫時執行個體,然後選取動作執行個體狀態終止執行個體

  4. 出現確認提示時,請選擇終止

步驟 12:啟用無密碼 SSH

若要讓您的應用程式能夠跨越叢集中的所有執行個體執行,您必須啟用從領導節點到成員節點的無密碼 SSH 存取。領導節點是您在其中執行應用程式的執行個體。叢集中的其餘執行個體為成員節點。

在叢集的執行個體之間啟用無密碼 SSH
  1. 選取叢集中的一個執行個體作為領導節點,並與它連線。

  2. 在領導節點上停用 strictHostKeyChecking 並啟用 ForwardAgent。使用您偏好的文字編輯器開啟 ~/.ssh/config,然後新增下列命令。

    Host * ForwardAgent yes Host * StrictHostKeyChecking no
  3. 產生 RSA 金鑰對。

    $ ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa

    $HOME/.ssh/ 目錄中建立金鑰對。

  4. 變更領導節點上私有金鑰的許可。

    $ chmod 600 ~/.ssh/id_rsa chmod 600 ~/.ssh/config
  5. 使用您偏好的文字編輯器開啟 ~/.ssh/id_rsa.pub 並複製該金鑰。

  6. 對於叢集中的每個成員節點,執行以下操作:

    1. 連線到執行個體。

    2. 使用您偏好的文字編輯器開啟 ~/.ssh/authorized_keys,然後新增您先前複製的公有金鑰。

  7. 若要測試無密碼的 SSH 是否如預期運作,請連線至領導節點並執行下列命令。

    $ ssh member_node_private_ip

    您應該連線至成員節點,而不會提示您輸入金鑰或密碼。