

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.

# Desplazamiento de la configuración de la pila desde los atributos a las bolsas de datos
<a name="attributes-to-data-bags"></a>

**importante**  
El AWS OpsWorks Stacks servicio llegó al final de su vida útil el 26 de mayo de 2024 y se ha desactivado tanto para los clientes nuevos como para los existentes. Recomendamos encarecidamente a los clientes que migren sus cargas de trabajo a otras soluciones lo antes posible. Si tienes preguntas sobre la migración, ponte en contacto con el AWS Support equipo en [AWS Re:post](https://repost.aws/) o a través de Premium [AWS Support](https://aws.amazon.com/support).

OpsWorks Stacks ofrece una amplia variedad de configuraciones de apilamiento para tus recetas de Chef. Estos ajustes de la pila incluyen valores como, por ejemplo:
+ Fuente de un libro de cocina de Stack URLs
+ Configuración de volúmenes de capas
+ Nombres de host de instancia
+ Nombres DNS de Elastic Load Balancing
+ Fuente de la aplicación URLs
+ Nombres de usuario

La referencia a la configuración de la pila desde las recetas convierte al código de recetas en más robusto y menos propenso a errores que la codificación de forma rígida de la pila directamente en las recetas. En este tema se describe cómo obtener acceso a esta configuración de la pila y a trasladarla desde los atributos de Chef 11.10 y versiones anteriores de Linux a las bolsas de datos de Chef 12 de Linux.

En Chef 11.10 y versiones anteriores de Linux, la configuración de la pila está disponible como [atributos de Chef](https://docs.chef.io/attributes.html) y se obtiene acceso a ella a través del objeto `node` de Chef o de la búsqueda de Chef. Estos atributos se almacenan en las instancias de OpsWorks Stacks, en un conjunto de archivos JSON del `/var/lib/aws/opsworks/chef` directorio. Para obtener más información, consulte [Atributos de configuración e implementación de pila: Linux](attributes-json-linux.md).

En Chef 12 de Linux, la configuración de la pila está disponible como [bolsas de datos de Chef](https://docs.chef.io/data_bags.html) y se obtiene acceso a ella únicamente a través de la búsqueda de Chef. Las bolsas de datos se almacenan en las instancias de OpsWorks Stacks, en un conjunto de archivos JSON en el `/var/chef/runs/run-ID/data_bags` directorio, donde *run-ID* hay un identificador único que OpsWorks Stacks asigna a cada ejecución de Chef en una instancia. La configuración de la pila ya no está disponible como atributos de Chef, de modo que ya no se puede obtener acceso a la configuración de la pila a través del objeto `node` de Chef. Para obtener más información, consulte la [OpsWorks Referencia de la bolsa de datos Stacks](data-bags.md).

Por ejemplo, en Chef 11.10 y versiones anteriores para Linux, el siguiente código de receta utiliza el objeto `node` de Chef para obtener los atributos que representan el nombre abreviado y la dirección URL de origen de la aplicación. A continuación, utiliza el registro de Chef para escribir estos dos valores de atributo:

```
Chef::Log.info ("********** The app's short name is '#{node['opsworks']['applications'].first['slug_name']}' **********")
Chef::Log.info("********** The app's URL is '#{node['deploy']['simplephpapp']['scm']['repository']}' **********")
```

En Chef 12 de Linux, el siguiente código de receta utiliza el índice de búsqueda `aws_opsworks_app` para obtener el contenido del primer elemento de la bolsa de datos `aws_opsworks_app`. A continuación, el código escribe dos mensajes en el registro de Chef, uno con el contenido de la bolsa de datos del nombre abreviado de la aplicación y otro con el contenido de la bolsa de datos de la dirección URL de origen de la aplicación:

```
app = search("aws_opsworks_app").first

Chef::Log.info("********** The app's short name is '#{app['shortname']}' **********")
Chef::Log.info("********** The app's URL is '#{app['app_source']['url']}' **********")
```

Para migrar el código de receta código, que obtiene acceso a la configuración de la pila de Chef 11.10 y versiones anteriores de Linux, a Chef 12 de Linux, debe revisar el código para:
+ Obtener acceso a bolsas de datos de Chef en lugar de a atributos de Chef
+ Utilizar la búsqueda de Chef en lugar del objeto `node` de Chef
+ Usa nombres de bolsas de datos de OpsWorks Stacks como`aws_opsworks_app`, en lugar de usar nombres de atributos de OpsWorks Stacks como y. `opsworks` `deploy`

Para obtener más información, consulte la [OpsWorks Referencia de la bolsa de datos Stacks](data-bags.md).