AWS ParallelCluster en una subred individual sin acceso a Internet - AWS ParallelCluster

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

AWS ParallelCluster en una subred individual sin acceso a Internet

Una subred sin acceso a Internet no permite conexiones entrantes ni salientes a Internet. Esta configuración de AWS ParallelCluster puede ayudar a los clientes preocupados por la seguridad a mejorar aún más la seguridad de sus recursos de AWS ParallelCluster. Los nodos de AWS ParallelCluster se crean a partir de AMI de AWS ParallelCluster que incluyen todo el software necesario para ejecutar un clúster sin acceso a Internet. De esta forma, AWS ParallelCluster puede crear y administrar clústeres con nodos que no tienen acceso a Internet.

En esta sección, aprenderá a configurar el clúster. También obtendrá información sobre las limitaciones de la ejecución de clústeres sin acceso a Internet.

AWS ParallelCluster utilizando una subred y sin Internet

Configuración de puntos de conexión de VPC

Para garantizar el correcto funcionamiento del clúster, los nodos del clúster deben poder interactuar con varios servicios de AWS.

Cree y configure los siguientes puntos de conexión de VPC para que los nodos del clúster puedan interactuar con los servicios de AWS sin acceso a Internet:

Commercial and AWS GovCloud (US) partitions
Servicio Nombre del servicio Tipo

Amazon CloudWatch

com.amazonaws.region-id.logs

Interfaz

AWS CloudFormation

com.amazonaws.region-id.cloudformation

Interfaz

Amazon EC2

com.amazonaws.region-id.ec2

Interfaz

Amazon S3

com.amazonaws.region-id.s3

Puerta de enlace

Amazon DynamoDB

com.amazonaws.region-id.dynamodb

Puerta de enlace

AWS Secrets Manager**

com.amazonaws.region-id.secretsmanager

Interfaz

China partition
Servicio Nombre del servicio Tipo

Amazon CloudWatch

com.amazonaws.region-id.logs

Interfaz

AWS CloudFormation

cn.com.amazonaws.region-id.cloudformation

Interfaz

Amazon EC2

cn.com.amazonaws.region-id.ec2

Interfaz

Amazon S3

com.amazonaws.region-id.s3

Puerta de enlace

Amazon DynamoDB

com.amazonaws.region-id.dynamodb

Puerta de enlace

AWS Secrets Manager**

com.amazonaws.region-id.secretsmanager

Interfaz

** Este punto de conexión solo es obligatorio cuando está activado DirectoryService; de lo contrario, es opcional.

Todas las instancias de la VPC deben tener los grupos de seguridad adecuados para comunicarse con los puntos de conexión. Para ello, agregue grupos de seguridad a AdditionalSecurityGroups en el HeadNode y los AdditionalSecurityGroups y en las configuraciones de las SlurmQueues. Por ejemplo, si los puntos de conexión de VPC se crean sin especificar un grupo de seguridad de forma explícita, el grupo de seguridad predeterminado se asociará a los puntos de conexión. Al agregar el grupo de seguridad predeterminado a AdditionalSecurityGroups, se habilita la comunicación entre el clúster y los puntos de conexión.

nota

Cuando utilice políticas de IAM para restringir el acceso a los puntos de conexión de VPC, debe añadir lo siguiente al punto de conexión de VPC de Amazon S3:

PolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Principal: "*" Action: - "s3:PutObject" Resource: - !Sub "arn:${AWS::Partition}:s3:::cloudformation-waitcondition-${AWS::Region}/*"

Deshabilitar Route 53 y utilizar nombres de host de Amazon EC2

Al crear un clúster de Slurm, AWS ParallelCluster crea una zona alojada privada de Route 53 que se utiliza para resolver los nombres de host de los nodos de computación personalizados, por ejemplo {queue_name}-{st|dy}-{compute_resource}-{N}. Como Route 53 no admite puntos de conexión de VPC, esta característica debe estar deshabilitada. Además, AWS ParallelCluster debe configurarse para usar los nombres de host de Amazon EC2 predeterminados, como ip-1-2-3-4. Aplique los siguientes ajustes a la configuración del clúster:

... Scheduling: ... SlurmSettings: Dns: DisableManagedDns: true UseEc2Hostnames: true
aviso

En el caso de los clústeres creados con los ajustes SlurmSettings/Dns/DisableManagedDns y UseEc2Hostnames establecidos en true, el DNS no resuelve el NodeName de Slurm. En su lugar, utilice el NodeHostName de Slurm.

nota

Esta nota no es pertinente a partir de AWS ParallelCluster versión 3.3.0.

Para las versiones de AWS ParallelCluster compatibles anteriores a 3.3.0:

Cuando UseEc2Hostnames se establece en true, el archivo de configuración de Slurm se configura con los scripts prolog y epilog de AWS ParallelCluster:

  • prolog se ejecuta para añadir información de los nodos a /etc/hosts sobre los nodos de computación cuando se asigna cada trabajo.

  • epilog se ejecuta para limpiar el contenido escrito por prolog.

Para añadir los scripts prolog o epilog personalizados, agréguelos a las carpetas /opt/slurm/etc/pcluster/prolog.d/ o /opt/slurm/etc/pcluster/epilog.d/, respectivamente.

Configuración del clúster

Aprenda a configurar el clúster para que se ejecute en una subred sin conexión a Internet.

La configuración de esta arquitectura requiere los siguientes valores de configuración:

# Note that all values are only provided as examples ... HeadNode: ... Networking: SubnetId: subnet-1234567890abcdef0 # the VPC of the subnet needs to have VPC endpoints AdditionalSecurityGroups: - sg-abcdef01234567890 # optional, the security group that enables the communication between the cluster and the VPC endpoints Scheduling: Scheduler: Slurm # Cluster in a subnet without internet access is supported only when the scheduler is Slurm. SlurmSettings: Dns: DisableManagedDns: true UseEc2Hostnames: true SlurmQueues: - ... Networking: SubnetIds: - subnet-1234567890abcdef0 # the VPC of the subnet needs to have VPC endpoints attached AdditionalSecurityGroups: - sg-1abcdef01234567890 # optional, the security group that enables the communication between the cluster and the VPC endpoints
  • SubnetId(s): la subred sin acceso a Internet.

    Para habilitar la comunicación entre los servicios AWS ParallelCluster y AWS, la VPC de la subred debe tener los puntos de conexión de VPC asociados. Antes de crear el clúster, compruebe que la asignación automática de direcciones IPv4 públicas esté deshabilitada en la subred para garantizar que los comandos de pcluster tengan acceso al clúster.

  • AdditionalSecurityGroups: el grupo de seguridad que habilita la comunicación entre el clúster y los puntos de conexión de VPC.

    Opcional:

    • Si los puntos de conexión de VPC se crean sin especificar un grupo de seguridad de forma explícita, se asociará el grupo de seguridad predeterminado de la VPC. Por lo tanto, proporcione el grupo de seguridad predeterminado a AdditionalSecurityGroups.

    • Si se utilizan grupos de seguridad personalizados al crear el clúster o los puntos de conexión de VPC, no se necesita AdditionalSecurityGroups, siempre que los grupos de seguridad personalizados permitan la comunicación entre el clúster y los puntos de conexión de VPC.

  • Scheduler: el programador de clústeres.

    slurm es el único valor válido. Solo el programador Slurm admite un clúster en una subred sin acceso a Internet.

  • SlurmSettings: la configuración de Slurm.

    Consulte la sección anterior Deshabilitar Route 53 y utilizar nombres de host de Amazon EC2.

Limitaciones

  • Conexión al nodo principal a través de SSH o Amazon DCV: al conectarse a un clúster, asegúrese de que el cliente de la conexión pueda llegar al nodo principal del clúster a través de su dirección IP privada. Si el cliente no está en la misma VPC que el nodo principal, use una instancia de proxy en una subred pública de la VPC. Este requisito se aplica a las conexiones SSH y DCV. No se puede acceder a la IP pública de un nodo principal si la subred no tiene acceso a Internet. Los comandos pcluster ssh y dcv-connect utilizan la IP pública, si existe, o la IP privada. Antes de crear el clúster, compruebe que la asignación automática de direcciones IPv4 públicas esté deshabilitada en la subred para garantizar que los comandos de pcluster tengan acceso al clúster.

    El siguiente ejemplo muestra cómo puede conectarse a una sesión de DCV que se ejecute en el nodo principal del clúster. La conexión se realiza a través de una instancia de Amazon EC2 del proxy. La instancia funciona como un servidor Amazon DCV para su PC y como cliente para el nodo principal de la subred privada.

    Conéctese a través de DCV a través de una instancia proxy en una subred pública:

    1. Cree una instancia de Amazon EC2 en una subred pública, que esté en la misma VPC que la subred del clúster.

    2. Asegúrese de que el cliente y el servidor Amazon DCV estén instalados en la instancia de Amazon EC2.

    3. Asocie una política de usuario de AWS ParallelCluster a la instancia de Amazon EC2 del proxy. Para obtener más información, consulte Ejemplo de políticas de usuario de pcluster mediante AWS ParallelCluster.

    4. Instale AWS ParallelCluster en la instancia de Amazon EC2 del proxy.

    5. Conéctese a través de DCV a la instancia de Amazon EC2 del proxy.

    6. Utilice el comando pcluster dcv-connect de la instancia del proxy para conectarse al clúster dentro de la subred sin acceso a Internet.

  • Interacción con otros servicios de AWS: arriba solo figuran los servicios estrictamente necesarios para AWS ParallelCluster. Si el clúster debe interactuar con otros servicios, cree los puntos de conexión de VPC correspondientes.