Статьи

Про швидке створення віртуальних машин

  1. завдання Один з важливих плюсів хмарних сервісів - можливість швидко підняти стільки серверів, скільки...

завдання

Один з важливих плюсів хмарних сервісів - можливість швидко підняти стільки серверів, скільки потрібно. Хочеш два - буде тобі два. Хочеш сто - два кліка мишкою і буде сто. Все залежить тільки від твого гаманця, платформа же дозволяє розгорнути стільки віртуальних серверів (з потрібними ресурсами), скільки тобі потрібно. З віртуальною машиною на домашньому комп'ютері такий фокус не проходить. Щоб створити виртуалку, задати їй потрібні налаштування і, що клопітно всього, встановити ОС, йде сила-силенна часу. В один момент мені стало цікаво: а чи можна якось автоматизувати процес і розгортати нові віртуальні машини по-справжньому швидко? Ну, тобто вказати щось на кшталт: «Хочу три віртуальні машини з такими-то настройками і встановлену на них Ubuntu останньої версії» - і отримати ці три віртуальні машини без зайвого геморою. У пошуках відповідного рішення я натрапив на відкритий проект Vagrant .

У пошуках відповідного рішення я натрапив на відкритий проект   Vagrant

На сайті vagrantbox.es доступні образи різних ОС для
швидкого розгортання

Рішення

Використовуючи в якості основи безкоштовний і тому особливо улюблений нами Oracle's VirtualBox (4.0.x або 4.1.x), Vagrant дозволяє створювати і конфігурувати віртуальні машини динамічно. Як це відбувається, пропоную розглянути прямо на прикладі. завантажуємо з downloads.vagrantup.com потрібну версію дистрибутива (є версії для Windows, Linux, Mac OS X) і піднімаємо наш перший інстанси (віртуальну машину):

$ Vagrant box add lucid32 http://files.vagrantup.com/lucid32.box $ vagrant init lucid32 $ vagrant up

Три команди - і нова віртуальна машина з встановленою ОС запущена (якщо, звичайно, ти не забув попередньо встановити VirtualBox)! Як нескладно здогадатися, команда «box add <ім'я віртуальної машини>» відповідає безпосередньо за створення віртуальної машини.

Як нескладно здогадатися, команда «box add <ім'я віртуальної машини>» відповідає безпосередньо за створення віртуальної машини

Запуск віртуальної машини через Vagrant

Як параметр їй передається шлях до спеціального box-файлу - контейнера, що дозволяє швидко розгорнути на віртуальної машини потрібну ОС. Ми вказали не просто шлях, а посилання: в цьому випадку Vagrant сам викачує з мережі образ.

Команда «init» инициализирует ОС, причому в якості параметра необхідно вказати тип системи: в нашому випадку це 32-бітна Ubuntu Lucid (10.04). Після виконання цих двох команд створюється повністю працездатна віртуальна машина з 512 Мб на борту. Остання команда - «vagrant up» - лише запускає її в фоновому режимі.

Таким чином можна створювати і запустити потрібну кількість віртуалок. Управляти всім цим господарством можна знову ж через консоль Vagrant. Працюючу віртуальну машину можна залишити:

vagrant suspend

Щоб подивитися статус кожної з віртуальної машини, є спеціальна команда для моніторингу:

vagrant status

До будь-якої з гостьових ОС можна підключитися по SSH, використовуючи сам Valgrant:

vagrant ssh

Якщо запустити додаток без параметрів, то воно видасть список всіх доступних команд.

Код проекту написаний на Ruby

Параметри гостьових ОС можна отконфигурировать (наприклад, прописати статичні IP), задавши потрібні налаштування в спеціальному скрипті Vagrantfile, який пишеться на Ruby. З його ж допомогою можна, наприклад, прокинути порти до потрібної тобі віртуальної машини. І, звичайно ж, ти можеш створювати свої box-файли, у тому числі далі швидко розгортати гостьові ОС.

В один момент мені стало цікаво: а чи можна якось автоматизувати процес і розгортати нові віртуальні машини по-справжньому швидко?

Новости

Как создать фото из видео
Кризис заставляет искать дополнительные источники дохода. Одним из таких источников может стать торговля на валютном рынке Форекс. Но чтобы не потерять свои деньги необходимо работать с надежным брокером.

Как оформить группу в вконтакте видео
Дано хотел свой магазин в вк, но не знал с чего начать его делать. Так как хотелось не банальный магазин с кучей ссылок и фото, а красиво оформленный. С меню, с аватаркой. После просмотра видео создал

Как оформить диск малыш от рождения до года из фото и видео
Оформить диск "Малыш от рождения до года" из фото и видео можно совершенно разными способами! Кто-то для достижения данной цели идет на шоу-таланты, кто-то пользуется услугами профессионалов, а кто-то

Как создать видео без программ
Реклама - это один из видов деятельности, который помогает людям продвигать свои товары или услуги. Одним из таких видов рекламы является - раздача листовок или более современное название "флаеров". Раздача

Финансовые новости мира
Вернуться в раздел Профессия экономист Экономисты востребованы в компаниях, где требуется контролировать расходы, правильно рассчитывать средства, где необходим постоянный анализ экономической деятельности

Транспортное средство закон
Пункт 1.5. ПДД гласит: «Участники дорожного движения должны действовать таким образом, чтобы не создавать опасности для движения и не причинять вреда», а в пункте 1.2. указано: «Участник дорожного движения»

Квест кімната дніпро
Законопроект о запрете посещения квестов детьми младше 14 лет прокомментировал один из самых популярных в России квест-агрегаторов. Поправки в городской закон о мерах по предупреждению причинения вреда

Труба в изоляции Valsir Pexal
На сегодняшний день имеется масса самых разных отделочных материалов, которые можно использовать, как внутри, так и снаружи помещения в качестве декоративного элемента, однако большинство из них имеет

Роллы
От того, как и чем мы питаемся зависит очень многое. Это и самочувствие и внешность и общее состояние здоровья. Несмотря на широкое предложение, вопросы правильного и вкусного питания стоят очень остро.

Дешевая доставка суши
Суши можно не только запивать, но и заедать: хорошо с суши сочетаются тэмпура (обжаренные в специальном кляре ломтики овощей, грибы или морепродукты), а также мисо-суп (суп, заправленный бобовой пастой).