0

Chef 12 とカスタムクックブックで AWS Opsworks を使用しています。data_bags も使用したいのですが、Opsworks がそれらを探す場所がわかりません。

それらを /var/chef/data_bags に追加すると、 を使用してレシピを正常に実行できますがchef-client --local-mode、Opsworks -> スタック -> レシピの実行を使用すると、次のエラーが発生します。

[2016-01-07T21:05:07+00:00] INFO: HTTP Request Returned 404 Not Found: Object not found: chefzero://localhost:8889/data/users

OpsWorks はこの場所に独自の data_bags を作成しているようですが、/var/chef/runs/9586fca2-52d1-43a8-9b3c-6fc0e4e79259/data_bagsこれらはすべてカスタム AWS フォルダです。

aws_opsworks_app      aws_opsworks_ecs_cluster            aws_opsworks_instance  aws_opsworks_rds_db_instance  aws_opsworks_user
aws_opsworks_command  aws_opsworks_elastic_load_balancer  aws_opsworks_layer     aws_opsworks_stack

OpsWorks Databag に追加するにはどうすればよいですか、または独自の data_bag フォルダをどこに配置すればよいですか?

4

1 に答える 1

2

http://docs.aws.amazon.com/opsworks/latest/userguide/best-practices-server-migrate.html#best-practices-server-migrate-data-bags

http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook-chef11-10.html#workingcookbook-chef11-10-databag

したがって、基本的には、opsworks 内で、スタック レベルまたはレイヤー レベルなどにアタッチするカスタム json を定義する必要があります。これらの json は取得され、最終的に実行の一部となるデータバッグに挿入されます。(つまり、クックブック内でバッグを定義することはできません)

于 2016-01-07T22:18:47.550 に答える