SlideShare a Scribd company logo
1 of 30
Библиотеки и фреймворки для
    построения клаудов


       Данилов Константин
            Mirantis

      koder-ua.blogspot.com
Виртуализация, какие ресурсы
      используются напрямую

• None            : QEMU
• CPU             : KVM, VmWare, HyperV
• Host HW Drivers : Xen pvirt, KVM + VirtIO,
                    VmWare tools, ...
• OS Kernel       : LXC, Solaris Zones
Тестирование
Изолированное исполнение
Использование ПО из другой среды
Виртуализация
Виртуальные
сети




              Управление
              образами
Миграция




           Балансировка
API
•   addImage(path, …) => id
•   setImage(id, root_passwd=“…”, …)
•   startVM(config, …) => (id, ip, …)
•   stopVM(id)
•   ……….
libvirt
<domain type='qemu'>
  <memory>219136</memory>
  <vcpu>1</vcpu>
  <devices>
     <emulator>/usr/bin/qemu</emulator>
     <disk type=“block” device=“disk” >
         <source dev=“/tmp/img.bin” />
         <target dev=“had” bus=“ide” />
     </disk>
  </devices> </domain>
vm.img + "<vm>..</vm>"
                 +
url = "provider://session"
conn = libvirt.open(url)
conn.createXML(cfg)
                  =
virsh

 virsh
             libvirt API

                                     Hypervisor API
My Cloud

You Cloud
                            Hypervisor
They Cloud

                     VM    VM   VM       VM    VM
# virsh list
# virsh create config_file.xml
# virsh stop domain_id
# virsh ANY_LIBVIRT_API
Local
                   Internel                       network




libvirtbin              Linux kernel : iptables, routes, etc



dnsmasq
 DHCP
                   Virtual network #1         Virtual network #2
  DNS


                       VM      VM                VM       VM
Network settings
<network>
<ip address='192.168.122.1‘
    netmask='255.255.255.0'>
  <dhcp>
     <range start='192.168.122.40'
             end='192.168.122.254' />
  </dhcp>
</ip>
</network>
libguestfs
Client program
   libguestfs

             RPC


          Service VM
 Disk        with
image        Linux
gfs = guestfs.GuestFS()
gfs.add_drive_opts(disk_path, format=format)
gfs.launch()
gfs.mount ("/dev/sda1", "/")

gfs.write(fname, …)
gfs.tar_out("/", ….)

hiveXXX, virt-XXX, …….
          Более 400 функций в API
$ guestfish << _EOF_
    add disk.img
    run
    mount /dev/vg_guest/lv_root /
     write /etc/motd "Welcome, new users"
_EOF_
shell + virsh + guestfish
            =
Другие задачи

•   Вспомогательные сетевые функции - scapy
•   Балансировка нагрузки
•   Мониторинг - graphit
•   Автодеплой - chef, fabric, …
•   ……
github.com/koder-ua/tiny_cloud
локальное облако на python в ~300 строк
Проблемы такого решения
Q &A
Облака

More Related Content

What's hot

ESXi 5.x CPU scheduler
ESXi 5.x CPU schedulerESXi 5.x CPU scheduler
ESXi 5.x CPU schedulerAnton Zhbankov
 
Александр Шуменко - Varnish for authenticated users
Александр Шуменко - Varnish for authenticated usersАлександр Шуменко - Varnish for authenticated users
Александр Шуменко - Varnish for authenticated usersLEDC 2016
 
06 php instalation_ru
06 php instalation_ru06 php instalation_ru
06 php instalation_rumcroitor
 
Олег Годовых «Страх и ненависть в Event Bus»
Олег Годовых «Страх и ненависть в Event Bus»Олег Годовых «Страх и ненависть в Event Bus»
Олег Годовых «Страх и ненависть в Event Bus»DevDay
 
Страх и ненависть в Event Bus
Страх и ненависть в Event BusСтрах и ненависть в Event Bus
Страх и ненависть в Event Bus0leGG
 
Загрузка, обработка, хранение и отдача статики
Загрузка, обработка, хранение и отдача статикиЗагрузка, обработка, хранение и отдача статики
Загрузка, обработка, хранение и отдача статикиKirill Mokevnin
 
04 web server_deployment_ru
04 web server_deployment_ru04 web server_deployment_ru
04 web server_deployment_rumcroitor
 
Опыт построения СХД на базе Windows Server для использования в публичном обла...
Опыт построения СХД на базе Windows Server для использования в публичном обла...Опыт построения СХД на базе Windows Server для использования в публичном обла...
Опыт построения СХД на базе Windows Server для использования в публичном обла...Ontico
 
High Availability в жизни обычного разработчика
High Availability в жизни обычного разработчикаHigh Availability в жизни обычного разработчика
High Availability в жизни обычного разработчикаSumy PHP User Grpoup
 
Слава Машканов — “Wubuntu”: Построение гетерогенной среды Windows+Linux на н...
Слава Машканов — “Wubuntu”: Построение гетерогенной среды  Windows+Linux на н...Слава Машканов — “Wubuntu”: Построение гетерогенной среды  Windows+Linux на н...
Слава Машканов — “Wubuntu”: Построение гетерогенной среды Windows+Linux на н...Minsk Linux User Group
 
Magento 2 in Kubernetes Cluster
Magento 2  in Kubernetes ClusterMagento 2  in Kubernetes Cluster
Magento 2 in Kubernetes ClusterKirill Morozov
 
05 db server_deployment_ru
05 db server_deployment_ru05 db server_deployment_ru
05 db server_deployment_rumcroitor
 
Зачем программистам Ansible
Зачем программистам AnsibleЗачем программистам Ansible
Зачем программистам AnsibleDenis Honig
 
Ec2 Rootconf2009
Ec2 Rootconf2009Ec2 Rootconf2009
Ec2 Rootconf2009Liudmila Li
 
Elasticsearch(java) fluentbit(c++) fluentd(ruby) kibana(javascript)
Elasticsearch(java) fluentbit(c++)    fluentd(ruby) kibana(javascript)Elasticsearch(java) fluentbit(c++)    fluentd(ruby) kibana(javascript)
Elasticsearch(java) fluentbit(c++) fluentd(ruby) kibana(javascript)Александр Сигачев
 

What's hot (20)

ESXi 5.x CPU scheduler
ESXi 5.x CPU schedulerESXi 5.x CPU scheduler
ESXi 5.x CPU scheduler
 
Александр Шуменко - Varnish for authenticated users
Александр Шуменко - Varnish for authenticated usersАлександр Шуменко - Varnish for authenticated users
Александр Шуменко - Varnish for authenticated users
 
06 php instalation_ru
06 php instalation_ru06 php instalation_ru
06 php instalation_ru
 
Олег Годовых «Страх и ненависть в Event Bus»
Олег Годовых «Страх и ненависть в Event Bus»Олег Годовых «Страх и ненависть в Event Bus»
Олег Годовых «Страх и ненависть в Event Bus»
 
Страх и ненависть в Event Bus
Страх и ненависть в Event BusСтрах и ненависть в Event Bus
Страх и ненависть в Event Bus
 
Загрузка, обработка, хранение и отдача статики
Загрузка, обработка, хранение и отдача статикиЗагрузка, обработка, хранение и отдача статики
Загрузка, обработка, хранение и отдача статики
 
Применяем Ansible
Применяем AnsibleПрименяем Ansible
Применяем Ansible
 
Cobbler
CobblerCobbler
Cobbler
 
04 web server_deployment_ru
04 web server_deployment_ru04 web server_deployment_ru
04 web server_deployment_ru
 
Опыт построения СХД на базе Windows Server для использования в публичном обла...
Опыт построения СХД на базе Windows Server для использования в публичном обла...Опыт построения СХД на базе Windows Server для использования в публичном обла...
Опыт построения СХД на базе Windows Server для использования в публичном обла...
 
High Availability в жизни обычного разработчика
High Availability в жизни обычного разработчикаHigh Availability в жизни обычного разработчика
High Availability в жизни обычного разработчика
 
Слава Машканов — “Wubuntu”: Построение гетерогенной среды Windows+Linux на н...
Слава Машканов — “Wubuntu”: Построение гетерогенной среды  Windows+Linux на н...Слава Машканов — “Wubuntu”: Построение гетерогенной среды  Windows+Linux на н...
Слава Машканов — “Wubuntu”: Построение гетерогенной среды Windows+Linux на н...
 
Chef
ChefChef
Chef
 
Magento 2 in Kubernetes Cluster
Magento 2  in Kubernetes ClusterMagento 2  in Kubernetes Cluster
Magento 2 in Kubernetes Cluster
 
05 db server_deployment_ru
05 db server_deployment_ru05 db server_deployment_ru
05 db server_deployment_ru
 
Зачем программистам Ansible
Зачем программистам AnsibleЗачем программистам Ansible
Зачем программистам Ansible
 
Ec2 Rootconf2009
Ec2 Rootconf2009Ec2 Rootconf2009
Ec2 Rootconf2009
 
Kolibri OS
Kolibri OSKolibri OS
Kolibri OS
 
MySQL 101
MySQL 101MySQL 101
MySQL 101
 
Elasticsearch(java) fluentbit(c++) fluentd(ruby) kibana(javascript)
Elasticsearch(java) fluentbit(c++)    fluentd(ruby) kibana(javascript)Elasticsearch(java) fluentbit(c++)    fluentd(ruby) kibana(javascript)
Elasticsearch(java) fluentbit(c++) fluentd(ruby) kibana(javascript)
 

Viewers also liked

Introduoeconomia 100714082525-phpapp01
Introduoeconomia 100714082525-phpapp01Introduoeconomia 100714082525-phpapp01
Introduoeconomia 100714082525-phpapp01Marcos Eterno Cunha
 
Video sobre el respeto con las demas personas
Video sobre el respeto con las demas personasVideo sobre el respeto con las demas personas
Video sobre el respeto con las demas personassebastianmoscoso
 
Amilcar2013 baú do banco de portugal
Amilcar2013 baú do banco de portugalAmilcar2013 baú do banco de portugal
Amilcar2013 baú do banco de portugalAmilcar Martins
 
SHS - revenue management aber richtig 2012-05-30
SHS -  revenue management aber richtig 2012-05-30SHS -  revenue management aber richtig 2012-05-30
SHS - revenue management aber richtig 2012-05-30Wilhelm K. Weber
 
4to PROGRAMA DE CERTIFICACION AUDITOR SART
4to PROGRAMA DE CERTIFICACION AUDITOR SART 4to PROGRAMA DE CERTIFICACION AUDITOR SART
4to PROGRAMA DE CERTIFICACION AUDITOR SART Roxana Ruiz
 
Programa de especializacion en sst
Programa de especializacion en sstPrograma de especializacion en sst
Programa de especializacion en sstRoxana Ruiz
 
Ejercicios Paso A Paso Excel 2007 Ms
Ejercicios Paso A Paso Excel 2007 MsEjercicios Paso A Paso Excel 2007 Ms
Ejercicios Paso A Paso Excel 2007 MsKêvîn Puentes
 
Jardim do Ser - Apresentação Institucional
Jardim do Ser - Apresentação InstitucionalJardim do Ser - Apresentação Institucional
Jardim do Ser - Apresentação InstitucionalJardim do Ser
 
Kendrik uajt -_opyit_biznes-angelov_v_ssha_–_ot_«silikonovoj_dolinyi»_do_sego...
Kendrik uajt -_opyit_biznes-angelov_v_ssha_–_ot_«silikonovoj_dolinyi»_do_sego...Kendrik uajt -_opyit_biznes-angelov_v_ssha_–_ot_«silikonovoj_dolinyi»_do_sego...
Kendrik uajt -_opyit_biznes-angelov_v_ssha_–_ot_«silikonovoj_dolinyi»_do_sego...UNOVA
 
Administración de ventas resumen 3 y 4
Administración de ventas  resumen 3 y 4 Administración de ventas  resumen 3 y 4
Administración de ventas resumen 3 y 4 Arely Mercado García
 
BIG DATA E COMPUTATIONAL SOCIAL SCIENCE: GRANDES RISCOS
BIG DATA E COMPUTATIONAL SOCIAL SCIENCE: GRANDES RISCOSBIG DATA E COMPUTATIONAL SOCIAL SCIENCE: GRANDES RISCOS
BIG DATA E COMPUTATIONAL SOCIAL SCIENCE: GRANDES RISCOSVivaldo Jose Breternitz
 
Laptops na Sala de Aula. E agora?
Laptops na Sala de Aula. E agora?Laptops na Sala de Aula. E agora?
Laptops na Sala de Aula. E agora?Richard Reinaldo
 
Informatica figurass
Informatica figurassInformatica figurass
Informatica figurassDaniela Diaz
 
Cortesia en atencion al cliente (1)
Cortesia en atencion al cliente (1)Cortesia en atencion al cliente (1)
Cortesia en atencion al cliente (1)RubenSilgado06
 

Viewers also liked (20)

Introduoeconomia 100714082525-phpapp01
Introduoeconomia 100714082525-phpapp01Introduoeconomia 100714082525-phpapp01
Introduoeconomia 100714082525-phpapp01
 
Video sobre el respeto con las demas personas
Video sobre el respeto con las demas personasVideo sobre el respeto con las demas personas
Video sobre el respeto con las demas personas
 
Amilcar2013 baú do banco de portugal
Amilcar2013 baú do banco de portugalAmilcar2013 baú do banco de portugal
Amilcar2013 baú do banco de portugal
 
SHS - revenue management aber richtig 2012-05-30
SHS -  revenue management aber richtig 2012-05-30SHS -  revenue management aber richtig 2012-05-30
SHS - revenue management aber richtig 2012-05-30
 
4to PROGRAMA DE CERTIFICACION AUDITOR SART
4to PROGRAMA DE CERTIFICACION AUDITOR SART 4to PROGRAMA DE CERTIFICACION AUDITOR SART
4to PROGRAMA DE CERTIFICACION AUDITOR SART
 
Programa de especializacion en sst
Programa de especializacion en sstPrograma de especializacion en sst
Programa de especializacion en sst
 
Las tic
Las ticLas tic
Las tic
 
Mba.fgv.gp18 gap
Mba.fgv.gp18 gapMba.fgv.gp18 gap
Mba.fgv.gp18 gap
 
Art 6 Thomaz
Art 6 ThomazArt 6 Thomaz
Art 6 Thomaz
 
Ejercicios Paso A Paso Excel 2007 Ms
Ejercicios Paso A Paso Excel 2007 MsEjercicios Paso A Paso Excel 2007 Ms
Ejercicios Paso A Paso Excel 2007 Ms
 
Violação Doméstica
Violação Doméstica Violação Doméstica
Violação Doméstica
 
Jardim do Ser - Apresentação Institucional
Jardim do Ser - Apresentação InstitucionalJardim do Ser - Apresentação Institucional
Jardim do Ser - Apresentação Institucional
 
Gbi
GbiGbi
Gbi
 
Kendrik uajt -_opyit_biznes-angelov_v_ssha_–_ot_«silikonovoj_dolinyi»_do_sego...
Kendrik uajt -_opyit_biznes-angelov_v_ssha_–_ot_«silikonovoj_dolinyi»_do_sego...Kendrik uajt -_opyit_biznes-angelov_v_ssha_–_ot_«silikonovoj_dolinyi»_do_sego...
Kendrik uajt -_opyit_biznes-angelov_v_ssha_–_ot_«silikonovoj_dolinyi»_do_sego...
 
Administración de ventas resumen 3 y 4
Administración de ventas  resumen 3 y 4 Administración de ventas  resumen 3 y 4
Administración de ventas resumen 3 y 4
 
BIG DATA E COMPUTATIONAL SOCIAL SCIENCE: GRANDES RISCOS
BIG DATA E COMPUTATIONAL SOCIAL SCIENCE: GRANDES RISCOSBIG DATA E COMPUTATIONAL SOCIAL SCIENCE: GRANDES RISCOS
BIG DATA E COMPUTATIONAL SOCIAL SCIENCE: GRANDES RISCOS
 
Laptops na Sala de Aula. E agora?
Laptops na Sala de Aula. E agora?Laptops na Sala de Aula. E agora?
Laptops na Sala de Aula. E agora?
 
Informatica figurass
Informatica figurassInformatica figurass
Informatica figurass
 
Cortesia en atencion al cliente (1)
Cortesia en atencion al cliente (1)Cortesia en atencion al cliente (1)
Cortesia en atencion al cliente (1)
 
Elianetarefawriter
ElianetarefawriterElianetarefawriter
Elianetarefawriter
 

Similar to Clouds

Zabbix в сервисной компании  ОНЛАНТА - Zabbix Meetup Moscow
Zabbix в сервисной компании  ОНЛАНТА -  Zabbix Meetup Moscow Zabbix в сервисной компании  ОНЛАНТА -  Zabbix Meetup Moscow
Zabbix в сервисной компании  ОНЛАНТА - Zabbix Meetup Moscow Vadim Nesterov
 
Управление облачной инфраструктурой
Управление облачной инфраструктуройУправление облачной инфраструктурой
Управление облачной инфраструктуройdddpaul
 
Legacy в коробочке. Dev-среда на базе Kubernetes / Илья Сауленко (Avito)
Legacy в коробочке. Dev-среда на базе Kubernetes / Илья Сауленко (Avito)Legacy в коробочке. Dev-среда на базе Kubernetes / Илья Сауленко (Avito)
Legacy в коробочке. Dev-среда на базе Kubernetes / Илья Сауленко (Avito)Ontico
 
Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...
Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...
Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...SQALab
 
Истинный DevOps. Секрет 42.
Истинный DevOps. Секрет 42.Истинный DevOps. Секрет 42.
Истинный DevOps. Секрет 42.Nikita Borzykh
 
Введение в виртуализацию. Вебинар для проекта getccna.ru
Введение в виртуализацию. Вебинар для проекта getccna.ruВведение в виртуализацию. Вебинар для проекта getccna.ru
Введение в виртуализацию. Вебинар для проекта getccna.ruKonstantin Kryazhenkov
 
Введение в виртуализацию. Обзор технологий VMware
Введение в виртуализацию.  Обзор технологий VMwareВведение в виртуализацию.  Обзор технологий VMware
Введение в виртуализацию. Обзор технологий VMwareSkillFactory
 
Управление большим количеством физических серверов, Александр Берсенев, Инст...
 Управление большим количеством физических серверов, Александр Берсенев, Инст... Управление большим количеством физических серверов, Александр Берсенев, Инст...
Управление большим количеством физических серверов, Александр Берсенев, Инст...it-people
 
Процесс разработки и тестирования с Docker + gitlab ci
Процесс разработки и тестирования с  Docker + gitlab ciПроцесс разработки и тестирования с  Docker + gitlab ci
Процесс разработки и тестирования с Docker + gitlab ciАлександр Сигачев
 
1. Sartakov. Virtualization. June 01, 2013
1. Sartakov. Virtualization. June 01, 20131. Sartakov. Virtualization. June 01, 2013
1. Sartakov. Virtualization. June 01, 2013ru-fedora-moscow-2013
 
Building deployment pipeline - DevOps way
Building deployment pipeline - DevOps wayBuilding deployment pipeline - DevOps way
Building deployment pipeline - DevOps wayAndrey Rebrov
 
От Make к Ansible
От Make к AnsibleОт Make к Ansible
От Make к AnsibleIvan Grishaev
 
Виртуализация сетевой транспортной инфраструктуры
Виртуализация сетевой транспортной инфраструктурыВиртуализация сетевой транспортной инфраструктуры
Виртуализация сетевой транспортной инфраструктурыCisco Russia
 

Similar to Clouds (20)

3. Kulemin. kvm. June 01, 2013
3. Kulemin. kvm. June 01, 20133. Kulemin. kvm. June 01, 2013
3. Kulemin. kvm. June 01, 2013
 
Введение в Docker
Введение в DockerВведение в Docker
Введение в Docker
 
Zabbix в сервисной компании  ОНЛАНТА - Zabbix Meetup Moscow
Zabbix в сервисной компании  ОНЛАНТА -  Zabbix Meetup Moscow Zabbix в сервисной компании  ОНЛАНТА -  Zabbix Meetup Moscow
Zabbix в сервисной компании  ОНЛАНТА - Zabbix Meetup Moscow
 
Управление облачной инфраструктурой
Управление облачной инфраструктуройУправление облачной инфраструктурой
Управление облачной инфраструктурой
 
Legacy в коробочке. Dev-среда на базе Kubernetes / Илья Сауленко (Avito)
Legacy в коробочке. Dev-среда на базе Kubernetes / Илья Сауленко (Avito)Legacy в коробочке. Dev-среда на базе Kubernetes / Илья Сауленко (Avito)
Legacy в коробочке. Dev-среда на базе Kubernetes / Илья Сауленко (Avito)
 
Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...
Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...
Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...
 
Истинный DevOps. Секрет 42.
Истинный DevOps. Секрет 42.Истинный DevOps. Секрет 42.
Истинный DevOps. Секрет 42.
 
Windows Azure Internals
Windows Azure InternalsWindows Azure Internals
Windows Azure Internals
 
2017-03-11 01 Игорь Родионов. Docker swarm vs Kubernetes
2017-03-11 01 Игорь Родионов. Docker swarm vs Kubernetes2017-03-11 01 Игорь Родионов. Docker swarm vs Kubernetes
2017-03-11 01 Игорь Родионов. Docker swarm vs Kubernetes
 
Введение в виртуализацию. Вебинар для проекта getccna.ru
Введение в виртуализацию. Вебинар для проекта getccna.ruВведение в виртуализацию. Вебинар для проекта getccna.ru
Введение в виртуализацию. Вебинар для проекта getccna.ru
 
Введение в виртуализацию. Обзор технологий VMware
Введение в виртуализацию.  Обзор технологий VMwareВведение в виртуализацию.  Обзор технологий VMware
Введение в виртуализацию. Обзор технологий VMware
 
Управление большим количеством физических серверов, Александр Берсенев, Инст...
 Управление большим количеством физических серверов, Александр Берсенев, Инст... Управление большим количеством физических серверов, Александр Берсенев, Инст...
Управление большим количеством физических серверов, Александр Берсенев, Инст...
 
Docker 1.9
Docker 1.9Docker 1.9
Docker 1.9
 
Процесс разработки и тестирования с Docker + gitlab ci
Процесс разработки и тестирования с  Docker + gitlab ciПроцесс разработки и тестирования с  Docker + gitlab ci
Процесс разработки и тестирования с Docker + gitlab ci
 
1. Sartakov. Virtualization. June 01, 2013
1. Sartakov. Virtualization. June 01, 20131. Sartakov. Virtualization. June 01, 2013
1. Sartakov. Virtualization. June 01, 2013
 
Building deployment pipeline - DevOps way
Building deployment pipeline - DevOps wayBuilding deployment pipeline - DevOps way
Building deployment pipeline - DevOps way
 
От Make к Ansible
От Make к AnsibleОт Make к Ansible
От Make к Ansible
 
Rootconf Virt
Rootconf VirtRootconf Virt
Rootconf Virt
 
Drupal Do
Drupal DoDrupal Do
Drupal Do
 
Виртуализация сетевой транспортной инфраструктуры
Виртуализация сетевой транспортной инфраструктурыВиртуализация сетевой транспортной инфраструктуры
Виртуализация сетевой транспортной инфраструктуры
 

Clouds