Я пытаюсь обновить сервер Chef, размещенный на экземпляре AWS EC2. Вот что происходит, когда я пытаюсь подключиться к серверу:
$ knife ssl check
Error: Network Error: getaddrinfo: nodename nor servname provided, or not
known
Я могу думать только о проблемах с конфигурацией ножа. Однако все функции ножа работают в экземпляре AWS EC2, а не на моем локальном компьютере (Macbook+iTerm).
knife.rb на EC2
log_level :info
log_location STDOUT
node_name 'jdoe'
client_key '/home/ec2-user/.chef/jdoe.pem'
validation_client_name 'chef-validator'
validation_key '/etc/chef-server/chef-validator.pem'
chef_server_url 'https://ip-xx-x-x-xxx.ec2.internal:443'
syntax_check_cache_path '/home/ec2-user/.chef/syntax_check_cache'
knife.rb на локальном компьютере
log_level :info
log_location STDOUT
node_name 'jdoe'
client_key '/Users/.../.chef/jdoe.pem'
validation_client_name 'chef-validator'
validation_key '/Users/.../.chef/chef-validator.pem'
chef_server_url 'https://ip-xx-x-x-xxx.ec2.internal:443'
syntax_check_cache_path '/Users/yoonsulee/.chef/syntax_check_cache'
# Amazon AWS
knife[:aws_access_key_id]='A...........Q' # actual access key
knife[:aws_secret_access_key]='Q.............................g' # actual secret access eky
knife[:aws_ssh_key_id]='xyz-abcd' # general key name used for AWS access
Моя группа безопасности AWS и ACL в порядке. И мне каким-то образом удалось загрузить «trusted_certs» из:
$ knife ssl fetch
В конечном счете, я пытаюсь сделать следующее из моего каталога репозитория Chef:
$ berks upload <new_cookbook> --force
$ knife role from file ../../roles/*