

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.

# Uso AWS-scripts mantenidos para las acciones del ciclo de vida de los nodos en AWS PC
<a name="cng-node-lifecycle-actions-vetted-scripts"></a>

AWS publica los scripts mantenidos para las acciones comunes del ciclo de vida. Haces referencia a un script mantenido directamente desde la configuración del grupo de nodos de procesamiento. Los scripts son idempotentes y se pueden ejecutar de forma segura en cada arranque.

AWS distribuye los scripts desde un bucket de Amazon S3 público y AWS administrado en cada uno de ellos. Región de AWS Se hace referencia a un script por su URI de Amazon S3. Hace referencia a un script mantenido del mismo modo que hace referencia a su propio script. Puedes hacer referencia a los scripts directamente desde el bucket AWS gestionado.

## Secuencias de comandos disponibles
<a name="cng-node-lifecycle-actions-vetted-scripts-available"></a>


| **Script** | **Descripción** | **Paquetes de requisitos previos ** | 
| --- | --- | --- | 
| `mount-efs.sh` | Monta un sistema de archivos Amazon EFS en una ruta especificada y lo conserva mientras se reinicia. | `amazon-efs-utils`, `nfs-utils` | 
| `mount-fsx-lustre.sh` | Monta un sistema de archivos Amazon FSx for Lustre en una ruta específica y lo conserva durante los reinicios. | `lustre-client` | 
| `configure-efs-homes.sh` | Monta un sistema de archivos Amazon EFS como base del directorio principal y configura PAM para que el directorio principal de cada usuario se cree la primera vez que inicia sesión. | `amazon-efs-utils``nfs-utils`, y `mkhomedir` paquetes PAM (consulte los requisitos por script) | 
| `configure-ldaps.sh` | Configura SSSD para la autenticación LDAP o LDAPS, y admite el enlace autenticado (credenciales de Secrets Manager) o el enlace anónimo. AWS  | `sssd`, `sssd-ldap``sssd-tools`, y paquetes relacionados (consulte los requisitos por script) | 
| `configure-cloudwatch-logs.sh` | Configura el CloudWatch agente de Amazon para que reenvíe los registros de acciones del ciclo de vida del nodo a Amazon CloudWatch Logs. | `amazon-cloudwatch-agent` | 

**importante**  
Estos scripts no instalan sus paquetes previos. Instale los paquetes necesarios en la AMI antes de usar un script. Un script produce un error si falta un requisito previo. Algunos scripts requieren que el rol de instancia del nodo tenga permisos específicos. Consulta los requisitos de cada script.

## Haga referencia a un script
<a name="cng-node-lifecycle-actions-vetted-scripts-reference"></a>

Haga referencia a un script por su URI de Amazon S3 en el `scriptLocation` campo de una acción del ciclo de vida. Los scripts se almacenan con el `aws-pcs-node-lifecycle-scripts` prefijo del `aws-pcs-repo-{{region}}` bucket AWS gestionado en cada uno de ellos. Región de AWS Usa el bucket en el mismo lugar Región de AWS que tu clúster.

```
s3://aws-pcs-repo-{{region}}/aws-pcs-node-lifecycle-scripts/{{script}}-v{{version}}.sh
```

Cada script se versiona con versiones [ semánticas. ](https://semver.org/) Puede fijar una versión específica o rastrear la última versión dentro de una versión principal:
+ **Fijar una versión específica**: usa la versión semántica completa, como`mount-efs-v1.0.0.sh`. El contenido de una versión específica es inmutable. Usa una versión anclada para la producción.
+ **Realice un seguimiento de la versión más reciente**: utilice el alias de la versión principal, como. `mount-efs-v1-latest.sh` El alias apunta a la versión más reciente de esa versión principal. Combínalo `scriptCachingPolicy` `REFRESH_ON_REBOOT` para recibir actualizaciones al reiniciar.

Cada script tiene un archivo complementario SHA-256 de suma de comprobación en la misma ubicación con un `.sha256` sufijo (por ejemplo,`mount-efs-v1.0.0.sh.sha256`). Lea el `.sha256` valor y configúrelo como el del script. `checksum` A continuación, el agente verifica la integridad del script durante la descarga. Para obtener más información, consulte [Integridad del script (sumas de comprobación)](cng-node-lifecycle-actions-configure.md#cng-node-lifecycle-actions-configure-checksums).

## Versiones de script disponibles
<a name="cng-node-lifecycle-actions-vetted-scripts-versions"></a>

AWS versiona cada guion de forma independiente. En las tablas siguientes se enumeran las versiones disponibles de cada script. Utilice una versión en la URI de Amazon S3 del script, tal y como se describe en[Haga referencia a un script](#cng-node-lifecycle-actions-vetted-scripts-reference).

### `mount-efs.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-versions-mount-efs"></a>


| **Versión** | **Fecha de publicación** | **Notas de la versión** | 
| --- | --- | --- | 
| 1.0.0 | 23 de julio de 2026 | Versión inicial. | 

### `mount-fsx-lustre.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-versions-mount-fsx"></a>


| **Versión** | **Fecha de publicación** | **Notas de la versión** | 
| --- | --- | --- | 
| 1.0.0 | 23 de julio de 2026 | Versión inicial. | 

### `configure-efs-homes.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-versions-efs-homes"></a>


| **Versión** | **Fecha de publicación** | **Notas de la versión** | 
| --- | --- | --- | 
| 1.0.0 | 23 de julio de 2026 | Versión inicial. | 

### `configure-ldaps.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-versions-ldaps"></a>


| **Versión** | **Fecha de publicación** | **Notas de la versión** | 
| --- | --- | --- | 
| 1.0.0 | 23 de julio de 2026 | Versión inicial. | 

### `configure-cloudwatch-logs.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-versions-cwl"></a>


| **Versión** | **Fecha de publicación** | **Notas de la versión** | 
| --- | --- | --- | 
| 1.0.0 | 23 de julio de 2026 | Versión inicial. | 

## Ejemplo: montar un sistema de archivos EFS con un script mantenido
<a name="cng-node-lifecycle-actions-vetted-scripts-example"></a>

El siguiente ejemplo hace referencia al `mount-efs.sh` script mantenido en `us-west-2` Región de AWS. Los argumentos se pasan como indicadores con nombre. Para ver los argumentos del guion, consulte[Argumentos del script](#cng-node-lifecycle-actions-vetted-scripts-args).

```
aws pcs update-compute-node-group \
  --cluster-identifier {{my-cluster}} \
  --compute-node-group-identifier {{my-cng}} \
  --node-lifecycle-actions '{
    "stages": {
      "nodeBootstrapped": [
        {
          "name": "Mount EFS home directory",
          "scriptSource": {
            "scriptLocation": "s3://aws-pcs-repo-us-west-2/aws-pcs-node-lifecycle-scripts/mount-efs-v1.0.0.sh"
          },
          "arguments": ["--file-system-id", "fs-{{12345678}}", "--mount-point", "/shared"],
          "onError": "TERMINATE",
          "executionPolicy": "EVERY_BOOT"
        }
      ]
    }
  }'
```

El rol de instancia del nodo debe tener `s3:GetObject` permiso para el objeto de script. Los nodos de una subred privada pueden llegar al bucket a través de un punto final de VPC de S3 Gateway. Para obtener más información, consulte [Ubicaciones de almacenamiento de scripts](cng-node-lifecycle-actions-configure.md#cng-node-lifecycle-actions-configure-storage).

## Argumentos del script
<a name="cng-node-lifecycle-actions-vetted-scripts-args"></a>

Cada script utiliza argumentos con marcas nombradas. Pase cada indicador y su valor como elementos independientes de la `arguments` matriz (por ejemplo,`["--file-system-id", "fs-12345678"]`). Todos los scripts se ejecutan `root` y son compatibles con los sistemas operativos AL2, AL2023, RHEL, Ubuntu y Rocky Linux.

### `mount-efs.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-args-efs"></a>


| **Bandera ** | **Obligatorio** | **Predeterminado** | **Descripción** | 
| --- | --- | --- | --- | 
| `--file-system-id` | Sí | — | ID del sistema de archivos EFS, como`fs-0123456789abcdef0`. | 
| `--mount-point` | Sí | — | Ruta absoluta en la que montar, por ejemplo`/mnt/efs`. | 
| `--options` | No | `tls,iam` | Comma-separated opciones de montaje. De forma predeterminada, se habilitan el cifrado en tránsito y la autenticación de IAM. | 

Con la `iam` opción predeterminada, el rol de instancia del nodo debe permitir `elasticfilesystem:ClientMount` y`elasticfilesystem:ClientWrite`. La subred del nodo debe tener un destino de montaje EFS cuyo grupo de seguridad permita la entrada de NFS (TCP 2049) desde el nodo.

### `mount-fsx-lustre.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-args-fsx"></a>


| **Bandera ** | **Obligatorio** | **Predeterminado** | **Descripción** | 
| --- | --- | --- | --- | 
| `--fsx-dns-name` | Sí | — | Nombre DNS del sistema de archivos FSx for Lustre. | 
| `--mount-name` | Sí | — | El nombre de montaje de Lustre del sistema de archivos (el `MountName` valor de la consola FSx). | 
| `--mount-point` | Sí | — | Ruta absoluta en la que montar, por ejemplo. `/fsx` | 
| `--options` | No | `noatime,flock` | Comma-separated opciones de montaje. El valor predeterminado sigue la recomendación de fsX for Lustre. | 

La subred del nodo debe llegar al sistema de archivos y el grupo de seguridad del sistema de archivos debe permitir el tráfico entrante de Lustre (TCP 988 y 1018—1023 para los clientes que utilizan puertos de origen reservados) desde el nodo.

### `configure-efs-homes.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-args-efs-homes"></a>


| **Bandera ** | **Obligatorio** | **Predeterminado** | **Descripción** | 
| --- | --- | --- | --- | 
| `--efs-id` | Sí | — | ID del sistema de archivos EFS, como`fs-0123456789abcdef0`. | 
| `--home-base` | No | `/home` | Ruta absoluta en la que montar el sistema de archivos EFS y en la que crear los directorios principales. | 
| `--options` | No | `tls,iam` | Comma-separated opciones de montaje. De forma predeterminada, se habilitan el cifrado en tránsito y la autenticación de IAM. | 

Este script requiere `amazon-efs-utils` y `mkhomedir` soporte para PAM. `nfs-utils` En RHEL-family los nodos `oddjob``oddjob-mkhomedir`, instale y`authselect`. En AL2023, instálelo de `authselect` forma explícita. En Ubuntu, instálelo`libpam-modules`. Los requisitos de red e IAM coinciden`mount-efs.sh`.

### `configure-ldaps.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-args-ldaps"></a>


| **Bandera ** | **Obligatorio** | **Descripción** | 
| --- | --- | --- | 
| `--ldap-uri` | Sí | URI del servidor LDAP. Debe empezar por o. `ldap://` `ldaps://` | 
| `--search-base` | Sí | Base de búsqueda LDAP, como. `dc=example,dc=com` | 
| `--secret-arn` | No | AWS El ARN del secreto que contiene las credenciales de enlace en el administrador de secretos. Al omitir este indicador, el script configura SSSD para un enlace anónimo. | 
| `--tls-cacert` | No | Ruta absoluta a un paquete de CA para la verificación de TLS. El valor predeterminado es el paquete de CA del sistema operativo. | 

Este script requiere `sssd``sssd-ldap`, y`sssd-tools`. En RHEL-family los nodos, también requiere `authselect` o `authconfig` y`oddjob-mkhomedir`. En Ubuntu, se requiere`libpam-modules`.

Con`--secret-arn`, el rol de instancia del nodo debe `secretsmanager:GetSecretValue` tener en cuenta el secreto y el nodo necesita los `python3` paquetes `awscli` y. El valor del secreto debe ser el JSON del formulario`{"username": "<bind-dn>", "password": "<bind-password>"}`. El enlace anónimo no realiza llamadas a la AWS API y no necesita permisos de IAM.

### `configure-cloudwatch-logs.sh`
<a name="cng-node-lifecycle-actions-vetted-scripts-args-cwl"></a>


| **Bandera ** | **Obligatorio** | **Predeterminado** | **Descripción** | 
| --- | --- | --- | --- | 
| `--log-group-name` | No | `/aws/pcs/${PCS_CLUSTER_ID}/lifecycle` | El grupo CloudWatch de registros al que se va a reenviar. Si se omite, el script deriva el nombre de la variable de `PCS_CLUSTER_ID` entorno que establece AWS PCS. | 

El script reenvía el directorio de registros de acciones del ciclo de vida (). `/var/log/amazon/pcs/lifecycle/actions` El rol de instancia del nodo debe permitir `logs:CreateLogGroup` y estar `logs:PutLogEvents` en el grupo de registros de destino. `logs:CreateLogStream` Usa este script para reenviar los registros fuera de la instancia para su depuración post mortem.

**nota**  
El CloudWatch agente de Amazon debe ejecutar AS `root` para reenviar estos registros. Solo el `root` usuario puede leer`/var/log/amazon/pcs/lifecycle/actions`.

**nota**  
El script escribe su configuración en un archivo de fragmentos dedicado. El CloudWatch agente de Amazon combina este fragmento con cualquier configuración existente sin sobrescribirlo, por lo que el script conserva las métricas y la configuración del grupo de registros existentes.