Vagrant

Виртуальные машины и среды исполнения

Модератор: Olej

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Vagrant

Непрочитанное сообщение Olej » 29 сен 2016, 00:47

Начало работы с Vagrant и зачем он вообще нужен
19 января 2015

В первом приближении Vagrant — это такой CLI для VirtualBox. То есть, утилита, которая говорит «создать виртуалку», «запустить виртуалку» и так далее. На самом деле, Vagrant представляет собой нечто куда большее. В частности, помимо VirtualBox есть немало других так называемых провайдеров — VMWare, Amazon EC2, LXC и libvirt.
Vagrant или окружение для разработки за 5 минут
Vagrant - это инструмент для быстрого развертывания окружения для разработки на основе систем виртуализации. #Vagrant - универсальное, удобное и хорошо зарекомендовавшее себя решение, которое пригодится любому разработчику. Vagrant разработан в соответствии с принципами unix-way и управляется из командной строки.

Vagrant доступен для всех популярных операционных систем (ОС), и работает со всеми популярными виртуальными машинами (ВМ).
...
В качестве основы Vagrant использует специально собранные образы операционных систем - боксы. Найти их можно, например, тут.
https://xakep.ru/2013/10/19/vagrant/
Сами разработчики вагранта предлагают четыре вида базовых сборок — два последних релиза Ubuntu в 32- и 64-битном исполнении (одну из них мы только что уже установили в системе):
Ubuntu Lucid 32 Bit
Ubuntu Lucid 64 Bit
Ubuntu Precise 32 Bit
Ubuntu Precise 64 Bit
Но на этом список далеко не заканчивается. Существует специальный сайт, где каждый желающий может выложить свою базовую сборку. Он располагается по адресу:www.vagrantbox.es. Там любой может выбрать себе что-нибудь по вкусу. В ассортименте: Debian, Windows Server, FreeBSD, CentOS, Gentoo и другие.
Vagrantbox.es
To use the available boxes just replace {title} and {url} with the information in the table below.

Код: Выделить всё

 $ vagrant box add {title} {url}
 $ vagrant init {title}
 $ vagrant up
Virtuozzo 7 x64 (Guest Additions 4.3.26)
...
OpenBSD 5.5 64-bit + Chef 11.16.0 + Puppet 3.4.2
...
FreeBSD 11 r273269 x86_64
...
Kali Linux rolling 2016.2 Mate
...
Microsoft Windows 7 Enterprise Edition (32-bit)
...
Solaris 11.2 64-bit (VirtualBox Guest Additions 4.3.i18r96516, Ruby 1.9.3p484 & Puppet 3.4.1)
...
Oracle Linux 7.1 x86_64 (Chef + Puppet) (src)
...
Scientific Linux 6 64 chefclient0.10
...
Windows 8.1 with IE11 (updated box)
...
Там свыше сотни "боксов", наверное...

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Vagrant

Непрочитанное сообщение Olej » 29 сен 2016, 01:00

Код: Выделить всё

[olej@dell int80]$ dnf list vagrant*
Последняя проверка окончания срока действия метаданных: 4 days, 11:04:30 назад, Sat Sep 24 13:45:30 2016.
Доступные пакеты
vagrant.noarch                                                             1.8.1-1.fc23                                              updates
vagrant-adbinfo.noarch                                                     0.0.9-3.fc23                                              updates
vagrant-adbinfo-doc.noarch                                                 0.0.9-3.fc23                                              updates
vagrant-atomic.noarch                                                      0.1.0-2.fc23                                              fedora 
vagrant-atomic-doc.noarch                                                  0.1.0-2.fc23                                              fedora 
vagrant-cachier.noarch                                                     1.2.0-3.fc23                                              fedora 
vagrant-cachier-doc.noarch                                                 1.2.0-3.fc23                                              fedora 
vagrant-digitalocean.noarch                                                0.9.0-1.fc23                                              updates
vagrant-digitalocean-doc.noarch                                            0.9.0-1.fc23                                              updates
vagrant-doc.noarch                                                         1.8.1-1.fc23                                              updates
vagrant-hostmanager.noarch                                                 1.8.5-1.fc23                                              updates
vagrant-hostmanager-doc.noarch                                             1.8.5-1.fc23                                              updates
vagrant-libvirt.noarch                                                     0.0.32-1.fc23                                             updates
vagrant-libvirt-doc.noarch                                                 0.0.32-1.fc23                                             updates
vagrant-lxc.noarch                                                         1.1.0-8.fc23                                              fedora 
vagrant-lxc-doc.noarch                                                     1.1.0-8.fc23                                              fedora 
vagrant-registration.noarch                                                1.1.0-2.fc23                                              updates
vagrant-registration-doc.noarch                                            1.1.0-2.fc23                                              updates

Код: Выделить всё

[olej@dell int80]$ sudo dnf install vagrant
[sudo] пароль для olej: 
Последняя проверка окончания срока действия метаданных: 0:16:24 назад, Thu Sep 29 00:34:50 2016.
Зависимости разрешены.
============================================================================================================================================
 Package                                       Архитектура             Версия                                Репозиторий              Размер
============================================================================================================================================
Установка:
 bsdtar                                        x86_64                  3.1.2-15.fc23                         updates                   61 k
 libyaml                                       x86_64                  0.1.6-7.fc23                          fedora                    58 k
 ruby                                          x86_64                  2.2.5-48.fc23                         updates                   75 k
 ruby-irb                                      noarch                  2.2.5-48.fc23                         updates                   94 k
 ruby-libs                                     x86_64                  2.2.5-48.fc23                         updates                  2.9 M
 rubygem-bigdecimal                            x86_64                  1.2.6-48.fc23                         updates                   87 k
 rubygem-bundler                               noarch                  1.7.8-3.fc23                          fedora                   152 k
 rubygem-childprocess                          noarch                  0.5.3-1.fc22                          fedora                    55 k
 rubygem-domain_name                           noarch                  0.5.20160826-1.fc23                   updates                   51 k
 rubygem-erubis                                noarch                  2.7.0-9.fc23                          fedora                    43 k
 rubygem-ffi                                   x86_64                  1.9.10-1.fc23                         fedora                    98 k
 rubygem-hashicorp-checkpoint                  noarch                  0.1.4-2.fc23                          fedora                    16 k
 rubygem-http-cookie                           noarch                  1.0.2-4.fc23                          fedora                    31 k
 rubygem-i18n                                  noarch                  0.7.0-2.fc23                          fedora                   102 k
 rubygem-io-console                            x86_64                  0.4.3-48.fc23                         updates                   57 k
 rubygem-json                                  x86_64                  1.8.3-103.fc23                        updates                   65 k
 rubygem-listen                                noarch                  3.0.3-1.fc23                          fedora                    31 k
 rubygem-log4r                                 noarch                  1.1.10-3.fc23                         fedora                    39 k
 rubygem-mime-types                            noarch                  1.25.1-2.fc23                         fedora                    56 k
 rubygem-net-http-persistent                   noarch                  2.9.4-5.fc23                          fedora                    29 k
 rubygem-net-scp                               noarch                  1.2.1-2.fc23                          fedora                    21 k
 rubygem-net-sftp                              noarch                  2.1.2-2.fc23                          fedora                    48 k
 rubygem-net-ssh                               noarch                  2.9.1-1.fc21                          fedora                   108 k
 rubygem-netrc                                 noarch                  0.10.3-2.fc23                         fedora                    13 k
 rubygem-nokogiri                              x86_64                  1.6.7.2-1.fc23                        updates                  144 k
 rubygem-psych                                 x86_64                  2.0.8-48.fc23                         updates                   86 k
 rubygem-rb-inotify                            noarch                  0.9.5-2.fc23                          fedora                   255 k
 rubygem-rdoc                                  noarch                  4.2.0-48.fc23                         updates                  482 k
 rubygem-rest-client                           noarch                  1.8.0-1.fc23                          fedora                    29 k
 rubygem-thor                                  noarch                  0.19.1-2.fc23                         fedora                    56 k
 rubygem-unf                                   noarch                  0.1.4-6.fc23                          fedora                    13 k
 rubygem-unf_ext                               x86_64                  0.0.7.2-2.fc23                        updates                  111 k
 rubygems                                      noarch                  2.4.8-100.fc23                        fedora                   269 k
 rubypick                                      noarch                  1.1.1-4.fc23                          fedora                    11 k
 vagrant                                       noarch                  1.8.1-1.fc23                          updates                  480 k

Результат операции
============================================================================================================================================
Установка  35 Пакетов

Объем загрузки: 6.1 M
Объем изменений: 19 M
Продолжить? [д/Н]: y
Загрузка пакетов:
(1/35): rubygem-childprocess-0.5.3-1.fc22.noarch.rpm                                                        227 kB/s |  55 kB     00:00    
(2/35): rubygem-erubis-2.7.0-9.fc23.noarch.rpm                                                              468 kB/s |  43 kB     00:00    
(3/35): rubygem-bundler-1.7.8-3.fc23.noarch.rpm                                                             450 kB/s | 152 kB     00:00    
(4/35): rubygem-hashicorp-checkpoint-0.1.4-2.fc23.noarch.rpm                                                305 kB/s |  16 kB     00:00    
(5/35): rubygem-listen-3.0.3-1.fc23.noarch.rpm                                                              686 kB/s |  31 kB     00:00    
(6/35): rubygem-i18n-0.7.0-2.fc23.noarch.rpm                                                                952 kB/s | 102 kB     00:00    
(7/35): rubygem-log4r-1.1.10-3.fc23.noarch.rpm                                                              1.1 MB/s |  39 kB     00:00    
(8/35): rubygem-net-scp-1.2.1-2.fc23.noarch.rpm                                                             538 kB/s |  21 kB     00:00    
(9/35): rubygem-net-sftp-2.1.2-2.fc23.noarch.rpm                                                            1.2 MB/s |  48 kB     00:00    
(10/35): vagrant-1.8.1-1.fc23.noarch.rpm                                                                    903 kB/s | 480 kB     00:00    
(11/35): rubygem-net-ssh-2.9.1-1.fc21.noarch.rpm                                                            1.1 MB/s | 108 kB     00:00    
(12/35): rubygem-rest-client-1.8.0-1.fc23.noarch.rpm                                                        399 kB/s |  29 kB     00:00    
(13/35): rubygem-net-http-persistent-2.9.4-5.fc23.noarch.rpm                                                978 kB/s |  29 kB     00:00    
(14/35): rubygem-thor-0.19.1-2.fc23.noarch.rpm                                                              1.2 MB/s |  56 kB     00:00    
(15/35): rubypick-1.1.1-4.fc23.noarch.rpm                                                                   282 kB/s |  11 kB     00:00    
(16/35): rubygem-rb-inotify-0.9.5-2.fc23.noarch.rpm                                                         1.4 MB/s | 255 kB     00:00    
(17/35): rubygem-ffi-1.9.10-1.fc23.x86_64.rpm                                                               1.5 MB/s |  98 kB     00:00    
(18/35): rubygem-http-cookie-1.0.2-4.fc23.noarch.rpm                                                        453 kB/s |  31 kB     00:00    
(19/35): rubygem-mime-types-1.25.1-2.fc23.noarch.rpm                                                        1.1 MB/s |  56 kB     00:00    
(20/35): rubygem-netrc-0.10.3-2.fc23.noarch.rpm                                                             273 kB/s |  13 kB     00:00    
(21/35): bsdtar-3.1.2-15.fc23.x86_64.rpm                                                                    663 kB/s |  61 kB     00:00    
(22/35): rubygem-domain_name-0.5.20160826-1.fc23.noarch.rpm                                                 547 kB/s |  51 kB     00:00    
(23/35): rubygem-unf-0.1.4-6.fc23.noarch.rpm                                                                233 kB/s |  13 kB     00:00    
(24/35): ruby-2.2.5-48.fc23.x86_64.rpm                                                                      597 kB/s |  75 kB     00:00    
(25/35): rubygems-2.4.8-100.fc23.noarch.rpm                                                                 966 kB/s | 269 kB     00:00    
(26/35): rubygem-bigdecimal-1.2.6-48.fc23.x86_64.rpm                                                        1.0 MB/s |  87 kB     00:00    
(27/35): rubygem-io-console-0.4.3-48.fc23.x86_64.rpm                                                        603 kB/s |  57 kB     00:00    
(28/35): rubygem-nokogiri-1.6.7.2-1.fc23.x86_64.rpm                                                         631 kB/s | 144 kB     00:00    
(29/35): rubygem-psych-2.0.8-48.fc23.x86_64.rpm                                                             820 kB/s |  86 kB     00:00    
(30/35): libyaml-0.1.6-7.fc23.x86_64.rpm                                                                    743 kB/s |  58 kB     00:00    
(31/35): ruby-irb-2.2.5-48.fc23.noarch.rpm                                                                  1.3 MB/s |  94 kB     00:00    
(32/35): rubygem-unf_ext-0.0.7.2-2.fc23.x86_64.rpm                                                          1.0 MB/s | 111 kB     00:00    
(33/35): rubygem-json-1.8.3-103.fc23.x86_64.rpm                                                             521 kB/s |  65 kB     00:00    
(34/35): rubygem-rdoc-4.2.0-48.fc23.noarch.rpm                                                              1.1 MB/s | 482 kB     00:00    
(35/35): ruby-libs-2.2.5-48.fc23.x86_64.rpm                                                                 1.9 MB/s | 2.9 MB     00:01    
--------------------------------------------------------------------------------------------------------------------------------------------
Общий размер                                                                                                1.1 MB/s | 6.1 MB     00:05     
Проверка транзакции
Проверка транзакции успешно завершена.
Идет проверка транзакции
Тест транзакции проведен успешно
Выполнение транзакции
  Установка    : ruby-libs-2.2.5-48.fc23.x86_64                                                                                        1/35 
  Установка    : libyaml-0.1.6-7.fc23.x86_64                                                                                           2/35 
  Установка    : ruby-2.2.5-48.fc23.x86_64                                                                                             3/35 
  Установка    : rubypick-1.1.1-4.fc23.noarch                                                                                          4/35 
  Установка    : ruby-irb-2.2.5-48.fc23.noarch                                                                                         5/35 
  Установка    : rubygem-bigdecimal-1.2.6-48.fc23.x86_64                                                                               6/35 
  Установка    : rubygem-io-console-0.4.3-48.fc23.x86_64                                                                               7/35 
  Установка    : rubygem-psych-2.0.8-48.fc23.x86_64                                                                                    8/35 
  Установка    : rubygem-json-1.8.3-103.fc23.x86_64                                                                                    9/35 
  Установка    : rubygems-2.4.8-100.fc23.noarch                                                                                       10/35 
  Установка    : rubygem-rdoc-4.2.0-48.fc23.noarch                                                                                    11/35 
  Установка    : rubygem-net-ssh-2.9.1-1.fc21.noarch                                                                                  12/35 
  Установка    : rubygem-ffi-1.9.10-1.fc23.x86_64                                                                                     13/35 
  Установка    : rubygem-childprocess-0.5.3-1.fc22.noarch                                                                             14/35 
  Установка    : rubygem-rb-inotify-0.9.5-2.fc23.noarch                                                                               15/35 
  Установка    : rubygem-net-scp-1.2.1-2.fc23.noarch                                                                                  16/35 
  Установка    : rubygem-net-sftp-2.1.2-2.fc23.noarch                                                                                 17/35 
  Установка    : rubygem-erubis-2.7.0-9.fc23.noarch                                                                                   18/35 
  Установка    : rubygem-hashicorp-checkpoint-0.1.4-2.fc23.noarch                                                                     19/35 
  Установка    : rubygem-i18n-0.7.0-2.fc23.noarch                                                                                     20/35 
  Установка    : rubygem-listen-3.0.3-1.fc23.noarch                                                                                   21/35 
  Установка    : rubygem-log4r-1.1.10-3.fc23.noarch                                                                                   22/35 
  Установка    : rubygem-net-http-persistent-2.9.4-5.fc23.noarch                                                                      23/35 
  Установка    : rubygem-thor-0.19.1-2.fc23.noarch                                                                                    24/35 
  Установка    : rubygem-bundler-1.7.8-3.fc23.noarch                                                                                  25/35 
  Установка    : rubygem-mime-types-1.25.1-2.fc23.noarch                                                                              26/35 
  Установка    : rubygem-netrc-0.10.3-2.fc23.noarch                                                                                   27/35 
  Установка    : rubygem-nokogiri-1.6.7.2-1.fc23.x86_64                                                                               28/35 
  Установка    : rubygem-unf_ext-0.0.7.2-2.fc23.x86_64                                                                                29/35 
  Установка    : rubygem-unf-0.1.4-6.fc23.noarch                                                                                      30/35 
  Установка    : rubygem-domain_name-0.5.20160826-1.fc23.noarch                                                                       31/35 
  Установка    : rubygem-http-cookie-1.0.2-4.fc23.noarch                                                                              32/35 
  Установка    : rubygem-rest-client-1.8.0-1.fc23.noarch                                                                              33/35 
  Установка    : bsdtar-3.1.2-15.fc23.x86_64                                                                                          34/35 
  Установка    : vagrant-1.8.1-1.fc23.noarch                                                                                          35/35 
  Проверка     : vagrant-1.8.1-1.fc23.noarch                                                                                           1/35 
  Проверка     : rubygem-bundler-1.7.8-3.fc23.noarch                                                                                   2/35 
  Проверка     : rubygem-childprocess-0.5.3-1.fc22.noarch                                                                              3/35 
  Проверка     : rubygem-erubis-2.7.0-9.fc23.noarch                                                                                    4/35 
  Проверка     : rubygem-hashicorp-checkpoint-0.1.4-2.fc23.noarch                                                                      5/35 
  Проверка     : rubygem-i18n-0.7.0-2.fc23.noarch                                                                                      6/35 
  Проверка     : rubygem-listen-3.0.3-1.fc23.noarch                                                                                    7/35 
  Проверка     : rubygem-log4r-1.1.10-3.fc23.noarch                                                                                    8/35 
  Проверка     : rubygem-net-scp-1.2.1-2.fc23.noarch                                                                                   9/35 
  Проверка     : rubygem-net-sftp-2.1.2-2.fc23.noarch                                                                                 10/35 
  Проверка     : rubygem-net-ssh-2.9.1-1.fc21.noarch                                                                                  11/35 
  Проверка     : rubygem-rb-inotify-0.9.5-2.fc23.noarch                                                                               12/35 
  Проверка     : rubygem-rest-client-1.8.0-1.fc23.noarch                                                                              13/35 
  Проверка     : rubygem-net-http-persistent-2.9.4-5.fc23.noarch                                                                      14/35 
  Проверка     : rubygem-thor-0.19.1-2.fc23.noarch                                                                                    15/35 
  Проверка     : rubypick-1.1.1-4.fc23.noarch                                                                                         16/35 
  Проверка     : rubygem-ffi-1.9.10-1.fc23.x86_64                                                                                     17/35 
  Проверка     : rubygem-http-cookie-1.0.2-4.fc23.noarch                                                                              18/35 
  Проверка     : rubygem-mime-types-1.25.1-2.fc23.noarch                                                                              19/35 
  Проверка     : rubygem-netrc-0.10.3-2.fc23.noarch                                                                                   20/35 
  Проверка     : bsdtar-3.1.2-15.fc23.x86_64                                                                                          21/35 
  Проверка     : rubygems-2.4.8-100.fc23.noarch                                                                                       22/35 
  Проверка     : rubygem-domain_name-0.5.20160826-1.fc23.noarch                                                                       23/35 
  Проверка     : rubygem-unf-0.1.4-6.fc23.noarch                                                                                      24/35 
  Проверка     : ruby-libs-2.2.5-48.fc23.x86_64                                                                                       25/35 
  Проверка     : ruby-2.2.5-48.fc23.x86_64                                                                                            26/35 
  Проверка     : rubygem-nokogiri-1.6.7.2-1.fc23.x86_64                                                                               27/35 
  Проверка     : rubygem-bigdecimal-1.2.6-48.fc23.x86_64                                                                              28/35 
  Проверка     : rubygem-io-console-0.4.3-48.fc23.x86_64                                                                              29/35 
  Проверка     : rubygem-psych-2.0.8-48.fc23.x86_64                                                                                   30/35 
  Проверка     : libyaml-0.1.6-7.fc23.x86_64                                                                                          31/35 
  Проверка     : rubygem-rdoc-4.2.0-48.fc23.noarch                                                                                    32/35 
  Проверка     : ruby-irb-2.2.5-48.fc23.noarch                                                                                        33/35 
  Проверка     : rubygem-unf_ext-0.0.7.2-2.fc23.x86_64                                                                                34/35 
  Проверка     : rubygem-json-1.8.3-103.fc23.x86_64                                                                                   35/35 

Установлено:
  bsdtar.x86_64 3.1.2-15.fc23             libyaml.x86_64 0.1.6-7.fc23                     ruby.x86_64 2.2.5-48.fc23                       
  ruby-irb.noarch 2.2.5-48.fc23           ruby-libs.x86_64 2.2.5-48.fc23                  rubygem-bigdecimal.x86_64 1.2.6-48.fc23         
  rubygem-bundler.noarch 1.7.8-3.fc23     rubygem-childprocess.noarch 0.5.3-1.fc22        rubygem-domain_name.noarch 0.5.20160826-1.fc23  
  rubygem-erubis.noarch 2.7.0-9.fc23      rubygem-ffi.x86_64 1.9.10-1.fc23                rubygem-hashicorp-checkpoint.noarch 0.1.4-2.fc23
  rubygem-http-cookie.noarch 1.0.2-4.fc23 rubygem-i18n.noarch 0.7.0-2.fc23                rubygem-io-console.x86_64 0.4.3-48.fc23         
  rubygem-json.x86_64 1.8.3-103.fc23      rubygem-listen.noarch 3.0.3-1.fc23              rubygem-log4r.noarch 1.1.10-3.fc23              
  rubygem-mime-types.noarch 1.25.1-2.fc23 rubygem-net-http-persistent.noarch 2.9.4-5.fc23 rubygem-net-scp.noarch 1.2.1-2.fc23             
  rubygem-net-sftp.noarch 2.1.2-2.fc23    rubygem-net-ssh.noarch 2.9.1-1.fc21             rubygem-netrc.noarch 0.10.3-2.fc23              
  rubygem-nokogiri.x86_64 1.6.7.2-1.fc23  rubygem-psych.x86_64 2.0.8-48.fc23              rubygem-rb-inotify.noarch 0.9.5-2.fc23          
  rubygem-rdoc.noarch 4.2.0-48.fc23       rubygem-rest-client.noarch 1.8.0-1.fc23         rubygem-thor.noarch 0.19.1-2.fc23               
  rubygem-unf.noarch 0.1.4-6.fc23         rubygem-unf_ext.x86_64 0.0.7.2-2.fc23           rubygems.noarch 2.4.8-100.fc23                  
  rubypick.noarch 1.1.1-4.fc23            vagrant.noarch 1.8.1-1.fc23                    

Выполнено!

Код: Выделить всё

[olej@dell int80]$ which vagrant
/usr/bin/vagrant

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Vagrant

Непрочитанное сообщение Olej » 30 сен 2016, 17:12

Установил Vagrant (в Fedora 23 для конкретики)...

Достаю (любой) .box для Vagrant непосредственно с URL (это взят Windows для усложнения задачи):

Код: Выделить всё

[olej@dell Vagrant]$ time vagrant box add vagrant-win81 http://aka.ms/vagrant-win81-ie11
...

[olej@dell .vagrant.d]$ tree ~/.vagrant.d/boxes
/home/olej/.vagrant.d/boxes
└── vagrant-win81
    └── 0
        └── virtualbox
            ├── box-disk1.vmdk
            ├── box.ovf
            ├── metadata.json
            └── Vagrantfile

3 directories, 4 files

[olej@dell .vagrant.d]$ du -hs ~/.vagrant.d/boxes
3,6G    /home/olej/.vagrant.d/boxes
Как видно, сам огромный .box залетел внутрь $HOME/.vagrant.d
Беру любой каталог ($HOME/Vagrant)

Код: Выделить всё

[olej@dell Vagrant]$ pwd
/home/olej/Vagrant

[olej@dell Vagrant]$ vagrant box list
vagrant-win81 (virtualbox, 0)

[olej@dell Vagrant]$ mkdir vagrant-win81

[olej@dell Vagrant]$ cd vagrant-win81

[olej@dell vagrant-win81]$ vagrant init vagrant-win81
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.

[olej@dell vagrant-win81]$ ls -l
итого 0
-rw-rw-r-- 1 olej olej 3025 сен 30 16:44 Vagrantfile
До сих пор всё более-менее соответствует описаниям в Интернет.
При этом в подкаталоге этой ВМ создан файл Vagrantfile.
Но!
В соответствии с инструкциями:

Код: Выделить всё

[olej@dell vagrant-win81]$ vagrant up vagrant-win81
The machine with the name 'vagrant-win81' was not found configured for
this Vagrant environment.

Я на этом месте убил уже несколько часов экспериментов... :-(

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Vagrant

Непрочитанное сообщение Olej » 30 сен 2016, 17:25

Olej писал(а): Я на этом месте убил уже несколько часов экспериментов... :-(
Поиски для Fedora дали результаты:
https://fedoramagazine.org/running-vagrant-fedora-22/
This will install base Vagrant package which is what you want in case you only need to use Vagrant with Docker or provider that is currently not directly supported in Fedora such as VirtualBox. This is esentially a stripped down Vagrant that does not come with any plugins.

Код: Выделить всё

# dnf install vagrant-libvirt
Vagrant with VirtualBox support installation
Fedora project cannot support VirtualBox provider in Fedora and therefore the default Vagrant provider has been changed from VirtualBox to libvirt. To use VirtualBox provider with any Vagrant commands, one has to explicitly append --provider=virtualbox.
Вот так вот!:

Код: Выделить всё

[olej@dell rgloader]$ dnf list vagrant-*
Последняя проверка окончания срока действия метаданных: 2:07:33 назад, Fri Sep 30 14:45:42 2016.
Доступные пакеты
vagrant-adbinfo.noarch                                                  0.0.9-3.fc23                                           updates
vagrant-adbinfo-doc.noarch                                              0.0.9-3.fc23                                           updates
vagrant-atomic.noarch                                                   0.1.0-2.fc23                                           fedora 
vagrant-atomic-doc.noarch                                               0.1.0-2.fc23                                           fedora 
vagrant-cachier.noarch                                                  1.2.0-3.fc23                                           fedora 
vagrant-cachier-doc.noarch                                              1.2.0-3.fc23                                           fedora 
vagrant-digitalocean.noarch                                             0.9.0-1.fc23                                           updates
vagrant-digitalocean-doc.noarch                                         0.9.0-1.fc23                                           updates
vagrant-doc.noarch                                                      1.8.1-1.fc23                                           updates
vagrant-hostmanager.noarch                                              1.8.5-1.fc23                                           updates
vagrant-hostmanager-doc.noarch                                          1.8.5-1.fc23                                           updates
vagrant-libvirt.noarch                                                  0.0.32-1.fc23                                          updates
vagrant-libvirt-doc.noarch                                              0.0.32-1.fc23                                          updates
vagrant-lxc.noarch                                                      1.1.0-8.fc23                                           fedora 
vagrant-lxc-doc.noarch                                                  1.1.0-8.fc23                                           fedora 
vagrant-registration.noarch                                             1.1.0-2.fc23                                           updates
vagrant-registration-doc.noarch                                         1.1.0-2.fc23                                           updates
vagrant-sshfs.noarch                                                    1.2.0-2.fc23                                           updates
vagrant-sshfs-doc.noarch                                                1.2.0-2.fc23                                           updates
И ещё вот что любопытно - Limitations
Vagrant packaged in Fedora currently does not support Windows guests. This is due to missing various dependencies that will be hopefully added to Fedora.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Vagrant

Непрочитанное сообщение Olej » 01 окт 2016, 00:55

Olej писал(а): https://xakep.ru/2013/10/19/vagrant/
Сами разработчики вагранта предлагают четыре вида базовых сборок — два последних релиза Ubuntu в 32- и 64-битном исполнении (одну из них мы только что уже установили в системе):
Ubuntu Lucid 32 Bit
Ubuntu Lucid 64 Bit
Ubuntu Precise 32 Bit
Ubuntu Precise 64 Bit
Но на этом список далеко не заканчивается. Существует специальный сайт, где каждый желающий может выложить свою базовую сборку. Он располагается по адресу:www.vagrantbox.es. Там любой может выбрать себе что-нибудь по вкусу. В ассортименте: Debian, Windows Server, FreeBSD, CentOS, Gentoo и другие.
На сегодня сайт Vagrant ссылается на большой набор готовых .box проекта Bento
Изображение
These boxes are built using templates from the Bento project. Should you find any bugs, please open an issue at the Bento project, or send a pull request. Thanks!
Там до 100 боксов (+для разных --provider) для достаточно свежих и разнообразных Linux (Fedora 24, Debian 8.4, OpenSUSE 13.2 и т.д.) и FreeBSD 10.3

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Vagrant

Непрочитанное сообщение Olej » 01 окт 2016, 13:46

Olej писал(а):Я на этом месте убил уже несколько часов экспериментов... :-(
Но с этим стоит пободаться, потому что Vagrant .box - это способ упаковать в единое целое готовый к эксплуатации проект, и переносить его в таком виде куда (почти) угодно.
Вот то, что есть составной частью вот той модной дурки, что называется нынче называется DevOps.

А проблема освоения Vagrant в том, что это чудо пришло из Ruby+Windows ... покорять Linux :lol: , и подавляющее большинство публикаций по Vagrant относятся к Windows, и очень скудное число по Linux.
Так обстоят дела практически со всеми проектами, декларирующими "переносимость" между Windows & Linux (TeamViewer, Mikogo, Skype ... и "имя им легион").

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Vagrant

Непрочитанное сообщение Olej » 01 окт 2016, 14:19

Olej писал(а):Я на этом месте убил уже несколько часов экспериментов... :-(
И даже не один день ;-) ...
Olej писал(а): Но с этим стоит пободаться, потому что Vagrant .box - это способ упаковать в единое целое готовый к эксплуатации проект, и переносить его в таком виде куда (почти) угодно.
Записываю конспект, для себя - такое запомнить нельзя ... и, может, кому-то ещё пригодится...

1. Каждый .box собран только под свой провайдер (опции --provider команд Vagrant): virtualbox, libvirt, и т.д.
Но в Fedora по умолчанию Vagrant собран каким-то образом только под libvirt...

Код: Выделить всё

[olej@dell vagrant-win81]$ vagrant provider
libvirt
Поэтому нужны доинсталляции:

Код: Выделить всё

[olej@dell vagrant-win81]$ sudo dnf install vagrant-libvirt
...
Установка  55 Пакетов
Объем загрузки: 20 M
...
Выполнено!

Код: Выделить всё

[olej@dell vagrant-win81]$ sudo dnf install libvirt
...
Установка  8 Пакетов
Объем загрузки: 1.4 M
...
Выполнено!
2. Нужен .box исключительно под провайдера libvirt!
Olej писал(а): Там до 100 боксов (+для разных --provider) для достаточно свежих и разнообразных Linux (Fedora 24, Debian 8.4, OpenSUSE 13.2 и т.д.) и FreeBSD 10.3

Код: Выделить всё

[olej@dell vagrant-cent64]$ time vagrant box add https://atlas.hashicorp.com/viniciusfs/boxes/centos7/ --provider libvirt
==> box: Load
==> box: Adding box 'viniciusfs/centos7' (v0.0.1) for provider: libvirt
    box: Downloading: https://atlas.hashicorp.com/viniciusfs/boxes/centos7/versions/0.0.1/providers/libvirt.box
==> box: Successfully added box 'viniciusfs/centos7' (v0.0.1) for 'libvirt'!

real    36m13.788s
user    0m55.905s
sys     0m5.990s
Обращаем внимание: URL - не файл .box, а каталог, для которого указываем --provider libvirt

Код: Выделить всё

[olej@dell Vagrant]$ vagrant box list
vagrant-cent64     (virtualbox, 0)
vagrant-win81      (virtualbox, 0)
viniciusfs/centos7 (libvirt, 0.0.1)
Наш скачанный .box - 2-й среди установленных.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Vagrant

Непрочитанное сообщение Olej » 01 окт 2016, 14:43

Olej писал(а): Наш скачанный .box - 2-й среди установленных.
3.

Код: Выделить всё

[olej@dell Vagrant]$ mkdir viniciusfs

[olej@dell Vagrant]$ cd viniciusfs

[olej@dell viniciusfs]$ vagrant init
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.

[olej@dell viniciusfs]$ vagrant up
Bringing machine 'default' up with 'libvirt' provider...
Error while connecting to libvirt: Error making a connection to libvirt URI qemu:///system?no_verify=1&keyfile=/home/olej/.ssh/id_rsa:
Call to virConnectOpen failed: Failed to connect socket to '/var/run/libvirt/libvirt-sock': No such file or directory
Ошибка №1

Код: Выделить всё

[olej@dell run]$ ls -l /var/run/libvirt
итого 0

[olej@dell kharchenko.kostik]$ ls /lib/systemd/system/lib*
/lib/systemd/system/libvirtd.service  /lib/systemd/system/libvirtd.socket  /lib/systemd/system/libvirt-guests.service

[olej@dell kharchenko.kostik]$ systemctl status libvirtd.service
● libvirtd.service - Virtualization daemon
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:libvirtd(8)
           http://libvirt.org

[olej@dell kharchenko.kostik]$ sudo systemctl start libvirtd.service
[sudo] пароль для olej: 

[olej@dell kharchenko.kostik]$ systemctl status libvirtd.service
● libvirtd.service - Virtualization daemon
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
   Active: active (running) since Пт 2016-09-30 21:13:30 EEST; 3s ago
     Docs: man:libvirtd(8)
           http://libvirt.org
 Main PID: 19406 (libvirtd)
   CGroup: /system.slice/libvirtd.service
           ├─19406 /usr/sbin/libvirtd
           └─19663 /usr/bin/qemu-system-ppc -S -no-user-config -nodefaults -nographic -M none -qmp unix:/var/lib/libvirt/qemu/capab...
           
сен 30 21:13:30 dell.localdomain systemd[1]: Starting Virtualization daemon...
сен 30 21:13:30 dell.localdomain systemd[1]: Started Virtualization daemon.

[olej@dell kharchenko.kostik]$ ls -l /var/run/libvirt
итого 0
drwxr-xr-x 2 root root  40 сен 30 21:13 hostdevmgr
srwxrwxrwx 1 root root   0 сен 30 21:13 libvirt-sock
srwxrwxrwx 1 root root   0 сен 30 21:13 libvirt-sock-ro
drwxr-xr-x 2 root root  40 сен 30 21:13 lxc
drwxr-xr-x 2 root root 100 сен 30 21:13 network
drwxr-xr-x 2 root root  40 сен 30 21:13 qemu
drwxr-xr-x 2 root root  40 сен 30 21:13 storage
drwxr-xr-x 2 root root  40 сен 30 21:13 uml-guest
Запустили сервис libvirt.

Код: Выделить всё

[olej@dell viniciusfs]$ vagrant up
Bringing machine 'default' up with 'libvirt' provider...
==> default: Box 'base' could not be found. Attempting to find and install...
    default: Box Provider: libvirt
    default: Box Version: >= 0
==> default: Box file was not detected as metadata. Adding it directly...
==> default: Adding box 'base' (v0) for provider: libvirt
    default: Downloading: base
An error occurred while downloading the remote file. The error
message, if any, is reproduced below. Please fix this error and try
again.

Couldn't open file /home/olej/Vagrant/viniciusfs/base
Ошибка №2.
Нужно в Vagrantfile переименовать имя ВМ base в то имя, которое даёт vagrant box list :

Код: Выделить всё

[olej@dell viniciusfs]$ cat Vagrantfile | grep 'config.vm.box'
  config.vm.box = "viniciusfs/centos7"
  # config.vm.box_check_update = false

[olej@dell viniciusfs]$ vagrant init viniciusfs/centos7
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
И вот теперь пошёл старт виртуальной машины:

Код: Выделить всё

[olej@dell viniciusfs]$ vagrant up
Bringing machine 'default' up with 'libvirt' provider...
==> default: Uploading base box image as volume into libvirt storage...
==> default: Creating image (snapshot of base box volume).
==> default: Creating domain with the following settings...
==> default:  -- Name:              viniciusfs_default
==> default:  -- Domain type:       kvm
==> default:  -- Cpus:              1
==> default:  -- Memory:            512M
...
[sudo] пароль для olej:
Redirecting to /bin/systemctl status  nfs-server.service
...
Это довольно долго продолжается... Но, утверждается, что это только перед 1-м стартом.
И здесь вот ВМ уже стартовала:

Код: Выделить всё

[olej@dell viniciusfs]$ vagrant status
Current machine states:

default                   running (libvirt)

The Libvirt domain is running. To stop this machine, you can run
`vagrant halt`. To destroy the machine, you can run `vagrant destroy`.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Vagrant

Непрочитанное сообщение Olej » 01 окт 2016, 14:47

Olej писал(а): И здесь вот ВМ уже стартовала:
4.

Код: Выделить всё

[olej@dell viniciusfs]$ vagrant ssh
...
Беспарольный старт для SSH. Там так же беспарольный sudo для этого пользователя с именем vagran.
Это уже терминальная сессия новой машины:

Код: Выделить всё

[vagrant@centos7 ~]$ uname -a
Linux centos7 3.10.0-327.10.1.el7.x86_64 #1 SMP Tue Feb 16 17:03:50 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

[vagrant@centos7 ~]$ ls /
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  vagrant  var

[vagrant@centos7 ~]$ yum repolist
Загружены модули: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.colocall.net
 * extras: ftp.colocall.net
 * updates: ftp.colocall.net
Идентификатор репозитория                                         репозиторий                                                состояние
base/7/x86_64                                                     CentOS-7 - Base                                            9 007
extras/7/x86_64                                                   CentOS-7 - Extras                                            390
updates/7/x86_64                                                  CentOS-7 - Updates                                         2 504
repolist: 11 901

[vagrant@centos7 ~]$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=47 time=50.4 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=47 time=51.5 ms
^C
--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 50.413/51.003/51.594/0.632 ms

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Vagrant

Непрочитанное сообщение Olej » 01 окт 2016, 14:51

Olej писал(а): Это уже терминальная сессия новой машины:
5. Осталось только остановить виртуальную машину, и сложить в .box для дальнейшего когда-то использования:

Код: Выделить всё

[olej@dell viniciusfs]$ pwd
/home/olej/Vagrant/viniciusfs

[olej@dell viniciusfs]$ vagrant halt
==> default: Halting domain...

Ответить

Вернуться в «Виртуализация»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя