View a markdown version of this page

Den Cluster erstellen - AWS ParallelCluster

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Den Cluster erstellen

Wenn Sie die Amazon EC2-Instance noch nicht verlassen haben, tun Sie dies jetzt.

Die Umgebung ist so eingerichtet, dass ein Cluster erstellt wird, der Benutzer gegenüber dem Active Directory (AD) authentifizieren kann.

Erstellen Sie eine einfache Clusterkonfiguration und geben Sie die Einstellungen an, die für die Verbindung mit dem AD relevant sind. Weitere Informationen finden Sie im Abschnitt DirectoryService.

Wählen Sie eine der folgenden Clusterkonfigurationen und kopieren Sie sie in eine Datei mit dem Namen ldaps_config.yamlldaps_nocert_config.yaml, oderldap_config.yaml.

Wir empfehlen, dass Sie die LDAPS-Konfiguration mit Zertifikatsüberprüfung wählen. Wenn Sie diese Konfiguration wählen, müssen Sie auch das Bootstrap-Skript in eine benannte Datei kopieren. active-directory.head.post.sh Und Sie müssen es in einem Amazon S3-Bucket speichern, wie in der Konfigurationsdatei angegeben.

Anmerkung
Die folgenden Komponenten müssen geändert werden.
  • KeyName: Eines Ihrer Amazon EC2-Tastenpaare.

  • SubnetId / SubnetIds: Eine der Subnetz-IDs, die in der Ausgabe des CloudFormation Quick Create Stacks (automatisiertes Tutorial) oder des Python-Skripts (manuelles Tutorial) angegeben wurden.

  • Region: Die Region, in der Sie die AD-Infrastruktur erstellt haben.

  • DomainAddr: Diese IP-Adresse ist eine der DNS-Adressen Ihres AD-Dienstes.

  • PasswordSecretArn: Der Amazon-Ressourcenname (ARN) des Secrets, das das Passwort für den enthältDomainReadOnlyUser.

  • BucketName: Der Name des Buckets, der das Bootstrap-Skript enthält.

  • AdditionalPolicies/Policy: Der Amazon-Ressourcenname (ARN) der Read-Domain-Zertifizierungsrichtlinie ReadCertExample.

  • CustomActions/OnNodeConfigured/Args: Der geheime Amazon-Ressourcenname (ARN), der die Domain-Zertifizierungsrichtlinie enthält.

Aus Sicherheitsgründen empfehlen wir, die AllowedIps KonfigurationHeadNode/Ssh/zu verwenden, um den SSH-Zugriff auf den Hauptknoten zu beschränken.

Beachten Sie, dass das in angegebene Zertifikat für alle Clusterknoten zugänglich sein LdapTlsCaCert muss.

Harte Anforderungen
  • Das in angegebene Zertifikat LdapTlsCaCert muss für alle Clusterknoten zugänglich sein.

    Ein Knoten ohne Zugriff auf das Zertifikat kann Benutzer aus dem Verzeichnis nicht auflösen.

Region: region-id Image: Os: alinux2023 HeadNode: InstanceType: t2.micro Networking: SubnetId: subnet-abcdef01234567890 Ssh: KeyName: keypair Iam: AdditionalIamPolicies: - Policy: arn:aws:iam::123456789012:policy/ReadCertExample S3Access: - BucketName: amzn-s3-demo-bucket EnableWriteAccess: false KeyName: bootstrap/active-directory/active-directory.head.post.sh CustomActions: OnNodeConfigured: Script: s3://amzn-s3-demo-bucket/bootstrap/active-directory/active-directory.head.post.sh Args: - arn:aws:secretsmanager:region-id:123456789012:secret:example-cert-123abc - /opt/parallelcluster/shared/directory_service/domain-certificate.crt Scheduling: Scheduler: slurm SlurmQueues: - Name: queue0 ComputeResources: - Name: queue0-t2-micro InstanceType: t2.micro MinCount: 1 MaxCount: 10 Networking: SubnetIds: - subnet-abcdef01234567890 DirectoryService: DomainName: corp.example.com DomainAddr: ldaps://corp.example.com PasswordSecretArn: arn:aws:secretsmanager:region-id:123456789012:secret:ADSecretPassword-1234 DomainReadOnlyUser: cn=ReadOnlyUser,ou=Users,ou=CORP,dc=corp,dc=example,dc=com LdapTlsCaCert: /opt/parallelcluster/shared/directory_service/domain-certificate.crt LdapTlsReqCert: hard

Bootstrap-Skript

Nachdem Sie die Bootstrap-Datei erstellt haben und bevor Sie sie in Ihren S3-Bucket hochladen, führen Sie sie aus, chmod +x active-directory.head.post.sh um die Ausführungsberechtigung zu erteilen AWS ParallelCluster .

#!/bin/bash set -e CERTIFICATE_SECRET_ARN="$1" CERTIFICATE_PATH="$2" [[ -z $CERTIFICATE_SECRET_ARN ]] && echo "[ERROR] Missing CERTIFICATE_SECRET_ARN" && exit 1 [[ -z $CERTIFICATE_PATH ]] && echo "[ERROR] Missing CERTIFICATE_PATH" && exit 1 source /etc/parallelcluster/cfnconfig REGION="${cfn_region:?}" mkdir -p $(dirname $CERTIFICATE_PATH) aws secretsmanager get-secret-value --region $REGION --secret-id $CERTIFICATE_SECRET_ARN --query SecretString --output text > $CERTIFICATE_PATH
Anmerkung
Die folgenden Komponenten müssen geändert werden.
  • KeyName: Eines Ihrer Amazon EC2-Tastenpaare.

  • SubnetId / SubnetIds: Eine der Subnetz-IDs, die in der Ausgabe des CloudFormation Quick Create Stacks (automatisiertes Tutorial) oder des Python-Skripts (manuelles Tutorial) enthalten ist.

  • Region: Die Region, in der Sie die AD-Infrastruktur erstellt haben.

  • DomainAddr: Diese IP-Adresse ist eine der DNS-Adressen Ihres AD-Dienstes.

  • PasswordSecretArn: Der Amazon-Ressourcenname (ARN) des Secrets, das das Passwort für den enthältDomainReadOnlyUser.

Aus Sicherheitsgründen empfehlen wir, die HeadNode/Ssh/AllowedIps Konfiguration zu verwenden, um den SSH-Zugriff auf den Hauptknoten zu beschränken.

Region: region-id Image: Os: alinux2023 HeadNode: InstanceType: t2.micro Networking: SubnetId: subnet-abcdef01234567890 Ssh: KeyName: keypair Scheduling: Scheduler: slurm SlurmQueues: - Name: queue0 ComputeResources: - Name: queue0-t2-micro InstanceType: t2.micro MinCount: 1 MaxCount: 10 Networking: SubnetIds: - subnet-abcdef01234567890 DirectoryService: DomainName: corp.example.com DomainAddr: ldaps://corp.example.com PasswordSecretArn: arn:aws:secretsmanager:region-id:123456789012:secret:ADSecretPassword-1234 DomainReadOnlyUser: cn=ReadOnlyUser,ou=Users,ou=CORP,dc=corp,dc=example,dc=com LdapTlsReqCert: never
Anmerkung
Die folgenden Komponenten müssen geändert werden.
  • KeyName: Eines Ihrer Amazon EC2-Tastenpaare.

  • SubnetId / SubnetIds: Eine der Subnetz-IDs, die in der Ausgabe des CloudFormation Quick Create Stacks (automatisiertes Tutorial) oder des Python-Skripts (manuelles Tutorial) angegeben wurden.

  • Region: Die Region, in der Sie die AD-Infrastruktur erstellt haben.

  • DomainAddr: Diese IP-Adresse ist eine der DNS-Adressen Ihres AD-Dienstes.

  • PasswordSecretArn: Der Amazon-Ressourcenname (ARN) des Secrets, das das Passwort für den enthältDomainReadOnlyUser.

Aus Sicherheitsgründen empfehlen wir, die HeadNode/Ssh/AllowedIps Konfiguration zu verwenden, um den SSH-Zugriff auf den Hauptknoten zu beschränken.

Region: region-id Image: Os: alinux2023 HeadNode: InstanceType: t2.micro Networking: SubnetId: subnet-abcdef01234567890 Ssh: KeyName: keypair Scheduling: Scheduler: slurm SlurmQueues: - Name: queue0 ComputeResources: - Name: queue0-t2-micro InstanceType: t2.micro MinCount: 1 MaxCount: 10 Networking: SubnetIds: - subnet-abcdef01234567890 DirectoryService: DomainName: dc=corp,dc=example,dc=com DomainAddr: ldap://192.0.2.254,ldap://203.0.113.237 PasswordSecretArn: arn:aws:secretsmanager:region-id:123456789012:secret:ADSecretPassword-1234 DomainReadOnlyUser: cn=ReadOnlyUser,ou=Users,ou=CORP,dc=corp,dc=example,dc=com AdditionalSssdConfigs: ldap_auth_disable_tls_never_use_in_production: True

Erstellen Sie den Cluster mit dem folgenden Befehl.

$ pcluster create-cluster --cluster-name "ad-cluster" --cluster-configuration "./ldaps_config.yaml" { "cluster": { "clusterName": "pcluster", "cloudformationStackStatus": "CREATE_IN_PROGRESS", "cloudformationStackArn": "arn:aws:cloudformation:region-id:123456789012:stack/ad-cluster/1234567-abcd-0123-def0-abcdef0123456", "region": "region-id", "version": 3.16.1, "clusterStatus": "CREATE_IN_PROGRESS" } }