Chef infra 刀零收敛-SocketError:getaddrinfo:名称或服务未知

Chef infra 刀零收敛-SocketError:getaddrinfo:名称或服务未知,chef-infra,knife,chef-zero,Chef Infra,Knife,Chef Zero,成功引导后,使用 bundle exec knife zero bootstrap root@139.59.210.225 我正在尝试将我的食谱应用于远程使用 bundle exec knife zero converge "name:ily" 但是 WARNING: Failed to connect to ily.localdomain -- SocketError: getaddrinfo: Name or service not known ERROR: NoMethodErroru

成功引导后,使用

bundle exec knife zero bootstrap root@139.59.210.225
我正在尝试将我的食谱应用于远程使用

bundle exec knife zero converge "name:ily"
但是

WARNING: Failed to connect to ily.localdomain -- SocketError: getaddrinfo: Name or service not known
ERROR: NoMethodErrorundefined method `forward' for nil:NilClass
ERROR: /home/razor/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/knife-zero-1.16.0/lib/knife-zero/bootstrap_ssh.rb:32:in `block in ssh_command'
我的节点配置如下所示:

{
  "name": "ily",
  "normal": {
    "knife_zero": {
      "host": "139.59.210.225"
    },
    "tags": [

    ]
  },
  "automatic": {
    "knife_zero": {
      "host": "139.59.210.225"
    },

    "hostname": "ily",
    "machinename": "ily",
    "fqdn": "ily.localdomain",
    "domain": "localdomain",
    "current_user": "root",
    ... other attributes
  }
}
我使用的是digital ocean实例,没有真正的主机名,我猜fqdn名称是在引导过程中生成的。如果我只有ip,我应该使用哪个域

我有,下面是解决方法:

使用以下行更新厨师库中的
knife.rb
文件:

#使用主机IP地址而不是FQDN通过SSH连接?
刀子[:ssh_属性]=“刀子_零。主机”
然后,knife zero将使用节点的IP地址,而不是尝试解析其名称