Не удается войти в ящики Vagrant, управляемые через Test Kitchen

У меня есть очень шаблонная пластина .kitchen.yml со следующим:

---
driver:
  name: vagrant
platforms:
  - name: ubuntu-14.04
suites:
   - name: default
   run_list:
    - recipe[webserver::default]

когда я запускаю kitchen converge, я получаю следующее:

==> default: Setting hostname...
   ==> default: Replaced insecure vagrant key with less insecure key!
   ==> default: Machine not provisioned because `--no-provision` is specified.
   Waiting for SSH service on 127.0.0.1:2222, retrying in 3 seconds
   Waiting for SSH service on 127.0.0.1:2222, retrying in 3 seconds
   Waiting for SSH service on 127.0.0.1:2222, retrying in 3 seconds
   .....
   ......

После того, как я немного погуглил, я прочитал, что Vagrant 1.7+ заменяет ключ ssh по умолчанию на то, что они считают less insecure key.

Есть config.ssh.insert_key = false, но он не сработает по следующим причинам:

  1. Обновлен kitchen.yml с добавлением insert_key = false

    1.1 Это не работает, потому что созданный Vagrantfile имеет логическое значение false как "ложную" string< /а>!

  2. Попытка использования глобального Vagrantfile файла

    2.1 Это не сработало, как будто файл даже не читался!

  3. Пытался собрать свою коробку, но не получилось.

Кому-нибудь удается исправить или найти обходной путь для этого?


person Sam Hammamy    schedule 16.08.2016    source источник
comment
Какую именно версию бродяги вы используете? На всякий случай прочитайте это: github.com/mitchellh/vagrant/issues/7631   -  person Vincent Olivert Riera    schedule 17.08.2016
comment
1.8.5 ! Я думаю, я должен попробовать 1.8.4   -  person Sam Hammamy    schedule 17.08.2016
comment
Дайте мне знать, если это сработает, чтобы мы могли поставить его в качестве ответа для остальных людей.   -  person Vincent Olivert Riera    schedule 17.08.2016
comment
Вы когда-нибудь успешно справлялись с кухней? Я получил ту же ошибку, когда виртуализация не была включена в моем BIOS.   -  person Mrigesh Priyadarshi    schedule 17.08.2016
comment
@MrigeshPriyadarshi Да, я смог успешно выполнить кухню на этом ящике. Я попробую перейти на 1.8.4 сегодня утром и обновить здесь.   -  person Sam Hammamy    schedule 17.08.2016


Ответы (6)


Я перешел с vagrant на 1.8.4 с 1.8.5, и это сработало.

Мне пришлось запустить kitchen destroy blah, чтобы удалить экземпляр, созданный с помощью 1.8.5. Затем, когда я ранд kitchen converge blah это сработало.

person villy393    schedule 22.08.2016
comment
К сожалению, побочным эффектом этого является потеря поддержки VirtualBox 5.1.x, которая была представлена ​​в Vagrant 1.8.5. Таким образом, любой, кто обновил Kitchen для поддержки VBox 5.1, должен будет отказаться от обеих версий, чтобы использовать это исправление, и надеяться, что они уже не установили гостевые надстройки VBox для 5.1.x на каких-либо виртуальных машинах, не связанных с кухней. - person Adrian; 22.08.2016

Очевидно, другие исправления решили проблему оригинального постера, но не мою. Отпишусь здесь, вдруг кому пригодится...

После нескольких часов устранения этой проблемы я, наконец, заметил в диспетчере VirtualBox, что в разделе «Настройки/Сеть/Дополнительно» флажок «Кабель подключен» не установлен! WTF, виртуальный кабель моей виртуальной машины не был подключен. "связано?" (большой вздох)

Я исправил эту проблему, добавив это в свой файл .kitchen.yml:

driver: name: vagrant customize: cableconnected1: 'on'

Я понятия не имею, почему виртуальные машины приходили с отключенным кабелем. Я не думаю, что мой обходной путь является естественным решением, но это все, что у меня есть, и оно работает.

ОБНОВЛЕНИЕ: в более новых версиях Vagrant и VBox это больше не требуется, для всех, кто сейчас находит это через Google.

person Tom Wilson    schedule 19.10.2016
comment
У меня такая же проблема, и я не могу определить, почему это началось. Это исправляет это на данный момент, спасибо! - person John Lemp; 31.10.2016
comment
При запуске Test Kitchen version 1.8.0 возникла проблема с тайм-аутом. Теперь после добавления cableconnected1 :'on' исправлено. - person georger; 17.11.2016
comment
Спасибо за исправление! Наблюдал ту же проблему с VirtualBox 5.0.30, Vagrant 1.9.1, Test Kitchen 1.14.2, kitchen-vagrant 0.21.1 (о, это с bento/ubuntu-16.10) - person Patrick; 10.12.2016
comment
ЭТО ДОЛЖНО БЫТЬ ПРАВИЛЬНЫМ ОТВЕТОМ, если вы используете последние инструменты, загруженные после 12 января (12 января: ChefDK 1.1.16, тестовая кухня 1.14.2, vagrant 1.9.1) для Ubuntu (подтверждено для 14.04 + 16.04) - person Joe Goggins; 13.01.2017
comment
та же самая смесь кухни и супа от шеф-повара, я получаю Waiting for SSH service on 127.0.0.1:2200, retrying in 3 seconds вместо исходной ошибки - person Chaim Eliyah; 03.02.2017

мейнтейнер кухня-бродяга здесь, чтобы сообщить всем, что проблема полностью связана с матрицей Vagrant, VirtualBox и коробок для бэнто в игре.

Чтобы проверить версии:

VBoxManage --version vagrant --version vagrant box list | grep bento/

Короче говоря, была грубая серия выпусков как Vagrant, так и VirtualBox, которые вызвали все виды хаоса, поэтому в зависимости от того, какие версии бенто-боксов были созданы / протестированы, вы можете испытать это или не испытать.

В настоящее время известна следующая конфигурация, работающая и последняя:

kitchen-vagrant 1.2.1 Vagrant 2.0.0 VirtualBox 5.1.28 bento boxes version 201708.22.0+

Пользователи могут просматривать блоки в Vagrant Cloud и видеть, с чем был протестирован тот или иной блок, например. бенто/14.04 версия 201708.22.0. На данный момент это уродливый JSON-блоб, но очень полезный, поскольку вы можете видеть, что он был создан/проверен. Любая загруженная коробка проходит проверку на кухне, чтобы проверить ее не только на базовую функциональность, но и на поддержку общих папок для большинства* платформ.

*большинство здесь означает почти все, кроме известных проблемных дистрибутивов и FreeBSD

person cheeseplus    schedule 25.09.2017
comment
Попытка с этой точной конфигурацией не сработала, сообщение Waiting for SSH service ... появляется навсегда. Точные версии: kitchen-vagrant (1.2.1), Vagrant 2.0.0, VBox: 5.1.28r117968, bento/ubuntu-14.04 (virtualbox, 201708.22.0) и, если это важно: test-kitchen (1.17.0) - person Daniel; 14.10.2017

Обратите внимание, что эта проблема возникает только в коробках Centos, а не в коробках Ubuntu.

Драйвер kitchen-vagrant уже исправлен.

Вы можете обновить его или внести изменения вручную: https://github.com/test-kitchen/kitchen-vagrant/commit/3178e84b65d3da318f818a0891b0fcc4b747d559

Тогда этот .kitchen.yml будет работать:

driver:
  name: vagrant
  ssh:
    insert_key: false
person Ivan at WIRIS    schedule 26.08.2016
comment
Бывает со мной с ubuntu-14.04 - person Daniel; 14.10.2017

У меня была такая же проблема, мне просто нужно было обновить драгоценный камень кухни-бродяги. Вы можете сделать это, сначала увидев, какой гем вы установили, выполнив $ gem list ... kitchen-vagrant (0.20.0) ...

затем выполните gem update kitchen-vagrant и повторите команду kitchen verify.

person Aidan Melen    schedule 10.02.2017

Конфигурация, которая работала для меня, была:

PS> vboxmanage --version
5.1.26r117224
PS> gem list | grep kitchen-vagrant
kitchen-vagrant (1.2.1)
PS> vagrant --version
Vagrant 1.9.6

С ChefDK 2.3.4.1.

person Daniel    schedule 14.10.2017