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
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
AWS OpsWorks Stacks muestra una amplia variedad de configuraciones de apilamiento para tus recetas de Chef. Estos ajustes de la pila incluyen valores como, por ejemplo:
-
Direcciones URL de origen de libros de recetas de la pila
-
Configuración de volúmenes de capas
-
Nombres de host de instancia
-
Nombres DNS de Elastic Load Balancing
-
Direcciones URL de origen de aplicaciones
-
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 Chefnode
de Chef o de la búsqueda de Chef. Estos atributos se almacenan en las instancias de AWS OpsWorks Stacks, en un conjunto de archivos JSON del directorio. /var/lib/aws/opsworks/chef
Para obtener más información, consulte Atributos de configuración e implementación de pila: Linux.
En Chef 12 de Linux, la configuración de la pila está disponible como bolsas de datos de Chef/var/chef/runs/
directorio, donde run-ID
/data_bagsRun-ID
es un identificador único que AWS 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 AWS OpsWorks Referencia de la bolsa de datos Stacks.
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 AWS OpsWorks Stacks como
aws_opsworks_app
, en lugar de usar nombres de atributos de AWS OpsWorks Stacks como y.opsworks
deploy
Para obtener más información, consulte AWS OpsWorks Referencia de la bolsa de datos Stacks.