Я использую стек Chef-Solo Ubuntu 14.04, но с сегодняшнего дня, когда я запускаю сценарий развертывания, он дает мне ошибку ниже. Пожалуйста помогите.
========== ubuntu @ i-production-base: ~ $ sudo /var/chef/scripts/deploy.rb /usr/local/lib/ruby/gems/2.3.0/gems/aws- sdk-v1-1.66.0 / lib / aws / core / credential_providers.rb: 140: в `учетных данных ': (AWS :: Errors :: MissingCredentialsError) Отсутствуют учетные данные.
Невозможно найти учетные данные AWS. Вы можете настроить свои учетные данные AWS несколькими способами:
Вызовите AWS.config с помощью: access_key_id и: secret_access_key
Экспорт AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY в ENV
В EC2 вы можете запускать экземпляры с профилем экземпляра IAM, и учетные данные будут автоматически загружены из службы метаданных экземпляра в этих экземплярах.
Вызовите AWS.config с помощью credential_provider. Поставщик учетных данных должен включать либо AWS :: Core :: CredentialProviders :: Provider, либо отвечать на те же общедоступные методы.
= Ruby on Rails
В приложении Ruby on Rails вы также можете указать свои учетные данные следующими способами:
Через сценарий инициализатора конфигурации с использованием любого из методов, упомянутых выше (например, RAILS_ROOT / config / initializers / aws-sdk.rb).
Через файл конфигурации yaml, расположенный в RAILS_ROOT / config / aws.yml. Этот файл должен быть отформатирован как файл RAILS_ROOT / config / database.yml по умолчанию.
из /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/credential_providers.rb:62:in access_key_id'
from /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/client.rb:549:in
build_request 'из /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/client.rb:491:in block (3 levels) in client_request'
from /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/response.rb:175:in
build_request 'из /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/response.rb:114:in initialize'
from /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/client.rb:203:in
new 'из /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/client.rb:203:in new_response'
from /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/client.rb:490:in
блок (2 уровня) в client_request 'из /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/client.rb:391:in log_client_request'
from /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/client.rb:477:in
блок в client_request 'из /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/client.rb:373:in return_or_raise'
from /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/core/client.rb:476:in
client_request 'из (eval): 3: in describe_tags'
from /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/ec2/filtered_collection.rb:44:in
filter_request 'из /usr/local/lib/ruby/gems/2.3.0/gems/aws-sdk-v1-1.66.0/lib/aws/ec2/resource_tag_collection.rb:194:in to_h'
from /var/chef/scripts/deploy.rb:243:in
fetch_ec2_meta_data 'из /var/chef/scripts/deploy.rb:221:in initialize'
from /var/chef/scripts/deploy.rb:328:in
new 'из /var/chef/scripts/deploy.rb:328:in `'
Похоже, вам нужно запустить экземпляр с ролью, имеющей доступ к учетным данным. Вы можете прочитать об этом Вот или
экспортировать ключ и секрет IAM через среду (в Linux, например, в оболочку bash export AWS_ACCESS_KEY_ID=YOUR_KEY; export AWS_SECRET_ACCESS_KEY=YOUR_SECRET_KEY
настроить AWS sdk ... это менее вероятно, поскольку это означает, что в ваш сценарий были внесены некоторые изменения.