

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# LDAP(S) 클러스터 구성 AWS Managed Microsoft AD 의 예
<a name="examples-addir-v3"></a>

AWS ParallelCluster 는 LDAP(Lightweight Directory Access Protocol) 또는 LDAPS(LDAP over TLS/SSL) AWS Directory Service 를 통해와 통합하여 여러 사용자 액세스를 지원합니다.

다음 예제에서는 LDAP(S)를 통한 AWS Managed Microsoft AD 와 통합할 클러스터 구성을 생성하는 방법을 보여 줍니다.

## AWS Managed Microsoft AD 인증서 확인을 통해 LDAPS를 통해
<a name="LDAP-example-1"></a>

이 예제를 사용하여 인증서 확인을 통해 LDAPS를 AWS Managed Microsoft AD 통해 클러스터를와 통합할 수 있습니다.

**인증서 구성을 사용하는 LDAPS AWS Managed Microsoft AD 를 통한에 대한 특정 정의:**
+ [`DirectoryService`](DirectoryService-v3.md)/[`LdapTlsReqCert`](DirectoryService-v3.md#yaml-DirectoryService-LdapTlsReqCert)는 인증서 검증이 포함된 LDAPS의 경우 `hard`(기본값)로 설정해야 합니다.
+ [`DirectoryService`](DirectoryService-v3.md)/[`LdapTlsCaCert`](DirectoryService-v3.md#yaml-DirectoryService-LdapTlsCaCert)는 CA(인증 기관) 인증서의 경로를 지정해야 합니다.

  CA 인증서는 AD 도메인 컨트롤러용 인증서를 발급한 전체 CA 체인의 인증서를 포함하는 인증서 번들입니다.

  CA 인증서와 인증서를 클러스터 노드에 설치해야 합니다.
+ 컨트롤러 호스트 이름은 IP 주소가 아니라 [`DirectoryService`](DirectoryService-v3.md)/[`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
  ```

LDAPS를 통한 AD를 사용하기 위한 예제 클러스터 구성 파일:****

```
Region: region-id
Image:
  Os: alinux2
HeadNode:
  InstanceType: t2.micro
  Networking:
    SubnetId: subnet-1234567890abcdef0
  Ssh:
    KeyName: pcluster
  Iam:
    AdditionalIamPolicies:
      - Policy: arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess
  CustomActions:
    OnNodeConfigured:
      Script: s3://&example-s3-bucket;/scripts/pcluster-dub-msad-ldaps.post.sh
Scheduling:
  Scheduler: slurm
  SlurmQueues:
    - Name: queue1
      ComputeResources:
        - Name: t2micro
          InstanceType: t2.micro
          MinCount: 1
          MaxCount: 10
      Networking:
        SubnetIds:
          - subnet-abcdef01234567890
      Iam:
        AdditionalIamPolicies:
          - Policy: arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess
      CustomActions:
        OnNodeConfigured:
          Script: s3://&example-s3-bucket;/scripts/pcluster-dub-msad-ldaps.post.sh
DirectoryService:
  DomainName: dc=corp,dc=example,dc=com
  DomainAddr: ldaps://win-abcdef01234567890.corp.example.com,ldaps://win-abcdef01234567890.corp.example.com
  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
  LdapTlsCaCert: /etc/openldap/cacerts/corp.example.com.bundleca.cer
  LdapTlsReqCert: hard
```

설치 후 스크립트에서 인증서를 추가하고 도메인 컨트롤러를 구성합니다.****

```
*#!/bin/bash*
set -e

AD_CERTIFICATE_S3_URI="s3://amzn-s3-demo-bucket/bundle/corp.example.com.bundleca.cer"
AD_CERTIFICATE_LOCAL="/etc/openldap/cacerts/corp.example.com.bundleca.cer"

AD_HOSTNAME_1="win-abcdef01234567890.corp.example.com"
AD_IP_1="192.0.2.254"

AD_HOSTNAME_2="win-abcdef01234567890.corp.example.com"
AD_IP_2="203.0.113.225"

# Download CA certificate
mkdir -p $(dirname "${AD_CERTIFICATE_LOCAL}")
aws s3 cp "${AD_CERTIFICATE_S3_URI}" "${AD_CERTIFICATE_LOCAL}"
chmod 644 "${AD_CERTIFICATE_LOCAL}"

# Configure domain controllers reachability
echo "${AD_IP_1} ${AD_HOSTNAME_1}" >> /etc/hosts
echo "${AD_IP_2} ${AD_HOSTNAME_2}" >> /etc/hosts
```

다음 예와 같이 도메인에 가입된 인스턴스에서 도메인 컨트롤러 호스트 이름을 검색할 수 있습니다.****

Windows 인스턴스에서****

```
$ nslookup 192.0.2.254
```

```
Server:  corp.example.com
Address:  192.0.2.254

Name:    win-abcdef01234567890.corp.example.com
Address:  192.0.2.254
```

Linux 인스턴스에서****

```
$ nslookup 192.0.2.254
```

```
192.0.2.254.in-addr.arpa   name = corp.example.com
192.0.2.254.in-addr.arpa   name = win-abcdef01234567890.corp.example.com
```

## AWS Managed Microsoft AD 인증서 확인 없이 LDAPS를 통해
<a name="LDAP-example-2"></a>

이 예제를 사용하면 인증서 확인 없이 LDAPS AWS Managed Microsoft AD 를 통해 클러스터를와 통합할 수 있습니다.

**인증서 확인 구성이 없는 LDAPS AWS Managed Microsoft AD 를 통한에 대한 특정 정의:**
+ [`DirectoryService`](DirectoryService-v3.md)/[`LdapTlsReqCert`](DirectoryService-v3.md#yaml-DirectoryService-LdapTlsReqCert)를 `never`로 설정해야 합니다.
+ [`DirectoryService`](DirectoryService-v3.md)/[`DomainAddr`](DirectoryService-v3.md#yaml-DirectoryService-DomainAddr)에 대해 컨트롤러 호스트 이름 또는 IP 주소를 지정할 수 있습니다.
+ [`DirectoryService`](DirectoryService-v3.md)/[`DomainReadOnlyUser`](DirectoryService-v3.md#yaml-DirectoryService-DomainReadOnlyUser) 구문은 다음과 같아야 합니다.

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

**인증서 확인 없이 LDAPS를 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: ldaps://203.0.113.225,ldaps://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
  LdapTlsReqCert: never
```