

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

# 建立具有 AD 網域的叢集


**警告**  
此簡介章節說明如何透過輕量型目錄存取通訊協定 (LDAP) AWS ParallelCluster 使用 Managed Active Directory (AD) 伺服器進行設定。LDAP 是不安全的通訊協定。對於生產系統，我們強烈建議使用 TLS 憑證 (LDAPS)，如以下[AWS Managed Microsoft AD 透過 LDAP(S) 叢集組態的範例](examples-addir-v3.md)章節所述。

透過在叢集組態檔案的 `DirectoryService`區段中指定相關資訊，將叢集設定為與目錄整合。如需詳細資訊，請參閱[`DirectoryService`](DirectoryService-v3.md)組態一節。

您可以使用下列範例， AWS Managed Microsoft AD 透過輕量型目錄存取通訊協定 (LDAP) 整合叢集與 。

**AWS Managed Microsoft AD 透過 LDAP 組態的 所需的特定定義：**
+ 您必須將 `ldap_auth_disable_tls_never_use_in_production` 參數設定為 [`DirectoryService`](DirectoryService-v3.md) / `True`下[`AdditionalSssdConfigs`](DirectoryService-v3.md#yaml-DirectoryService-AdditionalSssdConfigs)。
+ 您可以為 / [`DirectoryService`](DirectoryService-v3.md) 指定控制器主機名稱或 IP 地址[`DomainAddr`](DirectoryService-v3.md#yaml-DirectoryService-DomainAddr)。
+ [`DirectoryService`](DirectoryService-v3.md) / [`DomainReadOnlyUser`](DirectoryService-v3.md#yaml-DirectoryService-DomainReadOnlyUser) 語法必須如下所示：

  ```
  cn=ReadOnly,ou=Users,ou=CORP,dc=corp,dc=example,dc=com
  ```

**取得您的 AWS Managed Microsoft AD 組態資料：**

```
$ aws ds describe-directories --directory-id "d-abcdef01234567890"
```

```
{
    "DirectoryDescriptions": [
        {
            "DirectoryId": "d-abcdef01234567890",
            "Name": "corp.example.com",
            "DnsIpAddrs": [
                "203.0.113.225",
                "192.0.2.254"
            ],
            "VpcSettings": {
                "VpcId": "vpc-021345abcdef6789",
                "SubnetIds": [
                    "subnet-1234567890abcdef0",
                    "subnet-abcdef01234567890"
                ],
                "AvailabilityZones": [
                    "region-idb",
                    "region-idd"
                ]
            }
        }
    ]
}
```

**的叢集組態 AWS Managed Microsoft AD：**

```
Region: region-id
Image:
  Os: alinux2
HeadNode:
  InstanceType: t2.micro
  Networking:
    SubnetId: subnet-1234567890abcdef0
  Ssh:
    KeyName: pcluster
Scheduling:
  Scheduler: slurm
  SlurmQueues:
    - Name: queue1
      ComputeResources:
        - Name: t2micro
          InstanceType: t2.micro
          MinCount: 1
          MaxCount: 10
      Networking:
        SubnetIds:
          - subnet-abcdef01234567890
DirectoryService:
  DomainName: dc=corp,dc=example,dc=com
  DomainAddr: ldap://203.0.113.225,ldap://192.0.2.254
  PasswordSecretArn: arn:aws:secretsmanager:region-id:123456789012:secret:MicrosoftAD.Admin.Password-1234
  DomainReadOnlyUser: cn=ReadOnly,ou=Users,ou=CORP,dc=corp,dc=example,dc=com
  AdditionalSssdConfigs:
    ldap_auth_disable_tls_never_use_in_production: True
```

**若要將此組態用於 Simple AD，請變更 `DirectoryService`區段中的`DomainReadOnlyUser`屬性值：**

```
DirectoryService:
  DomainName: dc=corp,dc=example,dc=com
  DomainAddr: ldap://203.0.113.225,ldap://192.0.2.254
  PasswordSecretArn: arn:aws:secretsmanager:region-id:123456789012:secret:SimpleAD.Admin.Password-1234
  DomainReadOnlyUser: cn=ReadOnlyUser,cn=Users,dc=corp,dc=example,dc=com
  AdditionalSssdConfigs:
    ldap_auth_disable_tls_never_use_in_production: True
```

**考量：**
+ 我們建議您透過 TLS/SSL （或 LDAPS) 使用 LDAP，而不是單獨使用 LDAP。TLS/SSL 可確保連線已加密。
+ [`DirectoryService`](DirectoryService-v3.md) / [`DomainAddr`](DirectoryService-v3.md#yaml-DirectoryService-DomainAddr) 屬性值符合`DnsIpAddrs``describe-directories`輸出清單中的項目。
+ 建議您的叢集使用位於 / [`DirectoryService`](DirectoryService-v3.md) [`DomainAddr`](DirectoryService-v3.md#yaml-DirectoryService-DomainAddr)指向之相同可用區域中的子網路。如果您使用建議用於目錄 VPCs [的自訂動態主機組態通訊協定 (DHCP) 組態](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/dhcp_options_set.html)，且子網路*不*位於 [`DirectoryService`](DirectoryService-v3.md) / [`DomainAddr`](DirectoryService-v3.md#yaml-DirectoryService-DomainAddr)可用區域中，則可以跨可用區域進行跨流量。使用多使用者 AD 整合功能*不需要*使用自訂 DHCP 組態。
+ [`DirectoryService`](DirectoryService-v3.md) / [`DomainReadOnlyUser`](DirectoryService-v3.md#yaml-DirectoryService-DomainReadOnlyUser) 屬性值指定必須在 目錄中建立的使用者。根據預設*，不會*建立此使用者。建議您*不要*授予此使用者修改目錄資料的許可。
+ / [`PasswordSecretArn`](DirectoryService-v3.md#yaml-DirectoryService-PasswordSecretArn) 屬性值指向 AWS Secrets Manager 秘密，其中包含您為 [`DirectoryService`](DirectoryService-v3.md) [`DirectoryService`](DirectoryService-v3.md)/ [`DomainReadOnlyUser`](DirectoryService-v3.md#yaml-DirectoryService-DomainReadOnlyUser) 屬性指定的使用者密碼。如果此使用者的密碼變更，請更新秘密值並更新叢集。若要更新叢集的新秘密值，您必須使用 `pcluster update-compute-fleet`命令停止運算機群。如果您將叢集設定為使用 [`LoginNodes`](LoginNodes-v3.md)，請停止 [`LoginNodes`](LoginNodes-v3.md) /，[`Pools`](LoginNodes-v3.md#LoginNodes-v3-Pools)並在將 / [`Pools`](LoginNodes-v3.md#LoginNodes-v3-Pools) / [`LoginNodes`](LoginNodes-v3.md) 設定為 [`Count`](LoginNodes-v3.md#yaml-LoginNodes-Pools-Count) 0 之後更新叢集。然後，從叢集前端節點內執行下列命令。

  ```
   sudo /opt/parallelcluster/scripts/directory_service/update_directory_service_password.sh
  ```

如需另一個範例，另請參閱 [整合 Active Directory](tutorials_05_multi-user-ad.md)。