aws-rds-cookbook
aws-rds-cookbook copied to clipboard
getaddrinfo: nodename nor servname provided, or not known
Hi!
I was trying to use aws_rds
but I kept getting this error:
[2015-06-04T09:06:55-03:00] DEBUG: providers for generic gem_package resource enabled on node include: [Chef::Provider::Package::Rubygems]
[2015-06-04T09:06:55-03:00] DEBUG: providers that refused resource gem_package[aws-sdk] were: []
[2015-06-04T09:06:55-03:00] DEBUG: providers that support resource gem_package[aws-sdk] include: [Chef::Provider::Package::Rubygems]
[2015-06-04T09:06:55-03:00] DEBUG: providers that survived replacement include: [Chef::Provider::Package::Rubygems]
[2015-06-04T09:06:55-03:00] DEBUG: gem_package[aws-sdk] using gem from running ruby environment
[2015-06-04T09:06:55-03:00] DEBUG: gem_package[aws-sdk] newest installed version of gem aws-sdk is 1.64.0
[2015-06-04T09:06:55-03:00] DEBUG: found gem aws-sdk version 1.53.0 for platform ruby from #<Gem::Source:0x007fe4c2388868>
[2015-06-04T09:06:55-03:00] DEBUG: gem_package[aws-sdk] aws-sdk 1.64.0 needs updating to 1.53.0
Parsing documentation for aws-sdk-v1-1.53.0
Parsing documentation for aws-sdk-1.53.0
Done installing documentation for aws-sdk-v1, aws-sdk after 13 seconds
Parsing documentation for aws-sdk-1.53.0
Parsing documentation for aws-sdk-v1-1.53.0
Done installing documentation for aws-sdk, aws-sdk-v1 after 14 seconds
[2015-06-04T09:07:26-03:00] INFO: gem_package[aws-sdk] installed aws-sdk at 1.53.0
- install version 1.53.0 of package aws-sdk
* aws-rds[rds] action create[2015-06-04T09:07:26-03:00] INFO: Processing aws-rds[rds] action create (rds::default line 18)
[2015-06-04T09:07:26-03:00] DEBUG: providers for generic aws-rds resource enabled on node include: []
[2015-06-04T09:07:26-03:00] DEBUG: providers that refused resource aws-rds[rds] were: []
[2015-06-04T09:07:26-03:00] DEBUG: providers that support resource aws-rds[rds] include: []
[2015-06-04T09:07:26-03:00] DEBUG: no providers supported the resource, falling back to enabled handlers
[2015-06-04T09:07:26-03:00] DEBUG: providers that survived replacement include: []
[2015-06-04T09:07:26-03:00] DEBUG: dynamic provider resolver FAILED to resolve a provider
[2015-06-04T09:07:26-03:00] DEBUG: Platform mac_os_x not found, using all defaults. (Unsupported platform?)
usage: grep [-abcDEFGHhIiJLlmnOoqRSsUVvwxZ] [-A num] [-B num] [-C[num]]
[-e pattern] [-f file] [--binary-files=value] [--color=when]
[--context[=num]] [--directories=action] [--label] [--line-buffered]
[--null] [pattern] [file ...]
================================================================================
Error executing action `create` on resource 'aws-rds[rds]'
================================================================================
SocketError
-----------
getaddrinfo: nodename nor servname provided, or not known
Cookbook Trace:
---------------
/var/chef/cache/cookbooks/aws-rds/providers/default.rb:26:in `load_current_resource'
Resource Declaration:
---------------------
# In /var/chef/cache/cookbooks/rds/recipes/default.rb
18: aws_rds node[:rds][:id] do
19: aws_access_key aws_keys['aws_access_key_id']
20: aws_secret_access_key aws_keys['aws_secret_access_key']
21: availability_zone aws_keys['availability_zone']
22: # db_subnet_group_name 'cluster'
23: engine 'postgres'
24: engine_version '9.4.1'
25: db_instance_class node[:rds][:db_instance_class]
26: backup_retention_period node[:rds][:backup_retention_period].to_i
27: allocated_storage node[:rds][:storage]
28: db_name node[:rds][:name]
29: master_username secrets['data']['postgresql']['sql_username']
30: master_user_password secrets['data']['postgresql']['sql_password']
31: publicly_accessible true
32: # iops node[:rds][:iops]
33: # multi_az true
34: # vpc_security_group_ids ['sg-123123321']
35: # preferred_backup_window '05:30-06:00'
36: end
Compiled Resource:
------------------
# Declared in /var/chef/cache/cookbooks/rds/recipes/default.rb:18:in `from_file'
aws_rds("rds") do
action :create
retries 0
retry_delay 2
default_guard_interpreter :default
declared_type :aws_rds
cookbook_name "rds"
recipe_name "default"
aws_access_key "ASLKDFJLKSDFLKSJADFLSJLKDFJ"
aws_secret_access_key "ADLKJFLAKSJDFLASDJFLKLKASDJFKLSALKDJF"
availability_zone "us-west-2b"
engine "postgres"
engine_version "9.4.1"
db_instance_class "db.t2.micro"
backup_retention_period 7
allocated_storage 1
db_name "carbide-production"
master_username "root"
master_user_password "ALLYOURSECRETSBELONGTOUS"
publicly_accessible true
id "rds"
end
[2015-06-04T09:08:44-03:00] INFO: Running queued delayed notifications before re-raising exception
[2015-06-04T09:08:44-03:00] DEBUG: Re-raising exception: SocketError - aws-rds[rds] (rds::default line 18) had an error: SocketError: getaddrinfo: nodename nor servname provided, or not known
/Users/etagwerker/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:879:in `initialize'
/Users/etagwerker/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:879:in `open'
/Users/etagwerker/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:879:in `block in connect'
/Users/etagwerker/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/timeout.rb:91:in `block in timeout'
/Users/etagwerker/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/timeout.rb:101:in `call'
/Users/etagwerker/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/timeout.rb:101:in `timeout'
/Users/etagwerker/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:878:in `connect'
/Users/etagwerker/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:863:in `do_start'
/Users/etagwerker/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:858:in `start'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/http/connection_pool.rb:327:in `start_session'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/http/connection_pool.rb:127:in `session_for'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/http/net_http_handler.rb:56:in `handle'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/client.rb:253:in `block in make_sync_request'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/client.rb:289:in `retry_server_errors'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/client.rb:249:in `make_sync_request'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/client.rb:511:in `block (2 levels) in client_request'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/client.rb:391:in `log_client_request'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/client.rb:477:in `block in client_request'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/client.rb:373:in `return_or_raise'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/core/client.rb:476:in `client_request'
(eval):3:in `describe_db_instances'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/rds/db_instance.rb:210:in `get_resource'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/aws-sdk-v1-1.64.0/lib/aws/rds/db_instance.rb:197:in `exists?'
/var/chef/cache/cookbooks/aws-rds/providers/default.rb:26:in `load_current_resource'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/provider.rb:113:in `run_action'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/resource.rb:562:in `run_action'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/runner.rb:49:in `run_action'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/runner.rb:81:in `block (2 levels) in converge'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/runner.rb:81:in `each'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/runner.rb:81:in `block in converge'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/resource_collection/resource_list.rb:83:in `block in execute_each_resource'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/resource_collection/stepable_iterator.rb:116:in `call'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/resource_collection/stepable_iterator.rb:116:in `call_iterator_block'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/resource_collection/stepable_iterator.rb:104:in `iterate'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/resource_collection/resource_list.rb:81:in `execute_each_resource'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/runner.rb:80:in `converge'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/client.rb:339:in `block in converge'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/client.rb:334:in `catch'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/client.rb:334:in `converge'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/client.rb:353:in `converge_and_save'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/client.rb:457:in `run'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application.rb:271:in `block in fork_chef_client'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application.rb:259:in `fork'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application.rb:259:in `fork_chef_client'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application.rb:225:in `block in run_chef_client'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/local_mode.rb:39:in `with_server_connectivity'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application.rb:213:in `run_chef_client'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application/client.rb:402:in `block in interval_run_chef_client'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application/client.rb:392:in `loop'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application/client.rb:392:in `interval_run_chef_client'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application/client.rb:382:in `run_application'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/lib/chef/application.rb:60:in `run'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/gems/chef-12.3.0/bin/chef-client:26:in `<top (required)>'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/bin/chef-client:23:in `load'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/bin/chef-client:23:in `<main>'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/bin/ruby_executable_hooks:15:in `eval'
/Users/etagwerker/.rvm/gems/ruby-2.1.2@chef/bin/ruby_executable_hooks:15:in `<main>'
I think that the problem was that I wasn't specifying a region
within the aws_rds
block and this cookbook couldn't determine the region using this: https://github.com/gosuri/aws-rds-cookbook/blob/08a41933423d4adf19b78d237aae2674313f54c2/libraries/rds.rb#L132
It started working when I changed my recipe to this:
aws_keys = data_bag_item('cluster', 'main')
aws_rds node[:rds][:id] do
aws_access_key aws_keys['aws_access_key_id']
aws_secret_access_key aws_keys['aws_secret_access_key']
availability_zone aws_keys['availability_zone']
region aws_keys['region']
# ...
end
Maybe you could add information about the region parameter to https://github.com/gosuri/aws-rds-cookbook/blob/master/README.md
What do you think?
Thanks!
Hello!
I had this problem too, when I ran this recipe using Chef-Zero (and Chef-solo + Vagrant). The (partial) solution for this issue, is run this recipe within a EC2 machine with RDS (or greater) IAM credentials.
As I saw, its ocour due the way that this cookbook searches for the RDS region (using the 169.254 Webservice interface on AWS machines, instead of Amazon regular API).