3

Есть ли команда, которую я могу использовать, чтобы заставить Vagrant сгенерировать новый ключ для входа в ssh через vagrant ssh или мне нужно вручную создать новый ключ и вставить его в нужное место в папке .vagrant?

2 ответа2

1

Я сделал следующее, и это сработало для меня

Файл инвентаря

#application servers
[app]
192.168.60.4 app1
192.168.60.5 app2

# Database server
[db]
192.168.60.6 db

# Group 'multi' with all servers
[multi:children]
app
db

# Variables that will be applied to all servers
[multi:vars]
ansible_ssh_user=vagrant
ansible_ssh_private_key_file=~/.vagrant.d/insecure_private_key

Мой файл Vagrant выглядит следующим образом:

VAGRANTFILE_API_VERSION="2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  # General Vagrant VM coniguration
  config.vm.box="geerlingguy/centos7"
  config.ssh.insert_key = false
  config.vm.synced_folder ".", "/vagrant",disabled: true
  config.vm.provider :virtualbox do |v|
    v.memory = 256
    v.linked_clone = true
  end

  #Application server 1.
  config.vm.define "app1" do |app|
    app.vm.hostname = "orc-app1-test"
    app.vm.network :private_network, ip: "192.168.60.4"
  end

  #Application server 2.
  config.vm.define "app2" do |app|
    app.vm.hostname = "orc-app2-test"
    app.vm.network :private_network, ip: "192.168.60.5"
  end

  #Database server 1.
  config.vm.define "db" do |app|
    app.vm.hostname = "orc-db-test"
    app.vm.network :private_network, ip: "192.168.60.6"
  end
  #ansible playbook provisioner
#   config.vm.provision"ansible"do|ansible|
#   ansible.playbook = "playbook.yml"
#  end
end

Также убедитесь, что ваш файл KnownHost чист

vi /Users/JohnDoe/.ssh/known_hosts

По сути, именно так я использую свой бродягу с SSH/Asnible

0

Если вы vagrant ssh-config он покажет вам расположение ключа ssh vagrant. Теперь, когда вы удаляете ключ, Vagrant автоматически генерирует новый, когда вы запускаете vagrant up

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .