Виртуализация как инструмент разработчика
Upcoming SlideShare
Loading in...5
×
 

Виртуализация как инструмент разработчика

on

  • 234 views

 

Statistics

Views

Total Views
234
Views on SlideShare
229
Embed Views
5

Actions

Likes
0
Downloads
2
Comments
0

1 Embed 5

http://www.slideee.com 5

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Виртуализация как инструмент разработчика Виртуализация как инструмент разработчика Presentation Transcript

  • Виртуализация как инструмент разработчика Подготовлена специально для #openitpro Кириллов Александр, Web developer in UNDEV 1
  • Кому нужна виртуализация? • Датацентры и гибридные облака • Внутренняя инфраструктура • Просто инструмент • DevOps Engineer • Test Engineer • Developers 2
  • Зачем виртуализация разработчику? Если вы разработчик и... Несколько проектов + Зависимость от разных типов програмного обеспечения = Ваша машина просто напичкана мусором 3
  • Зачем виртуализация разработчику? Если вы разработчик и... Несколько проектов + Зависимость от разных версий програмного обеспечения = Ваша машина все еще напичкана мусором 4
  • Зачем виртуализация разработчику? Текущий разработчик (с частичной но не актуальной) информацией как воссоздать среду разработки + Новый разработчик в команде (с чистой машиной, или другой операционной системой) = Проблемы c установкой среды разработки, вплоть до невозможности работы на этой ОС 5
  • Зачем виртуализация разработчику? Development environment ≠ Production/Staging/CI environment = Синдром "Странно, а на моей машине работает!" 6
  • Идеальный вариант $> git clone git@github.com/user/project $> cd project $> $run_magic_command$ $> run_server -args 01. 02. 03. 04. 7
  • Идеальный вариант $> git clone git@github.com/user/project $> cd project $> vagrant up $> run_server -args 01. 02. 03. 04. 8
  • Vagrant Development environments made easy. http://vagrantup.com
  • Vagrant - это не только VirtualBox Vagrant providers: • VirtualBox • VMware • Hyper-V (Windows 8.1 only) • Parallels • Libvirt • AWS • DigitalOcean 10
  • Vagrant - это не только Chef Provisioning: • File, Shell • Ansible • Chef • Docker • Puppet • Salt • OpenShift 11
  • Vagrant. Дополнения, которые облегчат вам жизнь • vagrant-vbguest • vagrant-omnibus • vagrant-exec • vagrant-cachier • vagrant-hostmanager • vagrant-dns • vagrant-snap 12
  • Vagrant. Стало гораздо проще! ... # for vagrant-exec plugin config.exec.root = "/vagrant" config.exec.prepend_with "bundle exec", only: %w(rails rake unicorn sidekiq middleman) config.exec.prepend_with "USER=Kirillov bundle exec", only: %w(cap) ... 01. 02. 03. 04. 05. 06. 07. 08. 13
  • Vagrant. Стало гораздо проще! $> git clone git@github.com/user/project $> cd project $> vagrant up $> vagrant exec middleman server $> vagrant exec cap production deploy 01. 02. 03. 04. 05. 14
  • Vagrant. Ansible Основные архитектурные принципы 1. SIMPLY CLEAR 2. SIMPLY FAST 3. SIMPLY COMPLETE 4. SIMPLY EFFICIENT 5. SIMPLY SECURE 16
  • Vagrant. Ansible. Playbook: 17
  • Vagrant. Не все так безоблачно :-/ • Требователен к ресурсам машины • Довольно сложно дебажить из редактора/IDE • Shared folders (жить можно только через nfs) • ... 18
  • А вы пробовали Docker? 19
  • А вы пробовали Docker? • Application-centric • Automatic build • Versioning • Component re-use • Sharing • Tool ecosystem 20
  • И тут тоже проблемы • "Работает только в *nix • Общие ресурсы машины (сеть, диски, библиотеки, фс) • Работа через VirtualBox не тривиальна 21