Факты:
Когда я выполняю команду
$ knife ssh "role:test" "sudo chef-client"
WARNING: Failed to connect to node[ip-X-X-X-X.ec2.internal] -- Net::SSH::AuthenticationFailed: ubuntu@ip-X-X-X-X.ec2.internal
Я что-то упустил? например скопировать ключи SSH?
Эта проблема обычно вызвана отсутствием правильного PEM-файла с закрытым ключом, добавленного к вашему локальному ssh-агенту. Что-то вроде:
$ ssh-add pk-XXXX
Где аргумент - это закрытая часть пары ключей, используемой для создания экземпляра EC2.
Из вашего сообщения об ошибке я вижу, что он пытается войти в систему как пользователь «ubuntu». Убедитесь, что этот пользователь вводит правильный ключ в файл ~ / .ssh / authorized_keys. Я не уверен насчет экземпляров Ubuntu, но я знаю, что в системах Amazon Linux ключ скопирован только в учетную запись пользователя ec2. Вам придется создать сценарий или вручную скопировать ключ для этого пользователя.