KVM

Материал из pNp Wiki
Версия от 18:08, 15 ноября 2011; 216.201.172.121 (обсуждение) (Установка виртуальной машины)

Перейти к: навигация, поиск

Установка системы

Устанавливать будем на в качестве хост системы Debian 6

  • создадим 3 RAID 10 на двух дисках (почему не зеркало? Так в данном случае на читать будет сразу с двух винтов)
  • разделы разобьём следующем образом:
md0 - 20Gb / fs ext4
md1 - 1|2*RAM+1GB swap
md3 - всё остальное под LVM
  • систему установим базовою.

Настройка системы

  • отключаем установку рекомендуемых пакетов в aptitude
запускаем её > ctrl+t > параметры > предпочтения > снимаем галгу в пункте "автоматически устанавливать рекомендуемые пакеты"  
  • Установим все нужные пакеты в систему
aptitude install lvm2 openssh-server openssh-blacklist-extra ntp virtinst libvirt-bin kvm htop iotop hddtemp smartmontools
  • отключим возможность логинится рутом по ssh
nano /etc/ssh/sshd_config
PermitRootLogin no 
  • создаим группу wheel и разрешим только членам этой группы повышать права до root'а
addgroup -gid 200 wheel
  • раскомментируем в файле /etc/pam.d/su
auth       required   pam_wheel.so

  • Настроим мост:
nano /etc/network/interfaces
auto br0
iface br0 inet static
address xxx.xxx.xxx.xxx
netmask xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx
bridge_ports eth0
bridge_stp off
bridge_maxwait 5
  • Настроим файрвол
  • Создадим группу томов
 vgcreate virt /dev/md2
  • Создадим раздел для хранения образов установочных дисков.
lvcreate --name image --size 40G virt
fsck.ext4 /dev/vg/image
  • Пропишем его в fstab

Your articles are for when it absolutely, positively, needs to be underostod overnight.

Бэкап виртуальной машины

Восстановление из бэкапов

Клонирование виртуальных машин

Yup, that'll do it. You have my appecritaion.

Описание ключей утилиты virsh

   list            просмотр всех запущеных виртуальных машин
   list --all       просмотр всех вирт машин.
   start virt_name запуск машины с именем virt_name
   help            print help
   attach-device   attach device from an XML file
   attach-disk     attach disk device
   attach-interface attach network interface
   autostart       autostart a domain
   capabilities    capabilities
   cd              change the current directory
   connect         (re)connect to hypervisor
   console         connect to the guest console
   cpu-baseline    compute baseline CPU
   cpu-compare     compare host CPU with a CPU described by an XML file
   create          create a domain from an XML file
   start           start a (previously defined) inactive domain
   destroy         destroy a domain
   detach-device   detach device from an XML file
   detach-disk     detach disk device
   detach-interface detach network interface
   define          define (but don't start) a domain from an XML file
   domid           convert a domain name or UUID to domain id
   domuuid         convert a domain name or id to domain UUID
   dominfo         domain information
   domjobinfo      domain job information
   domjobabort     abort active domain job
   domname         convert a domain id or UUID to domain name
   domstate        domain state
   domblkstat      get device block stats for a domain
   domifstat       get network interface stats for a domain
   dommemstat      get memory statistics for a domain
   domblkinfo      domain block device size information
   domxml-from-native Convert native config to domain XML
   domxml-to-native Convert domain XML to native config
   dumpxml         domain information in XML
   edit            edit XML configuration for a domain
   find-storage-pool-sources discover potential storage pool sources
   find-storage-pool-sources-as find potential storage pool sources
   freecell        NUMA free memory
   hostname        print the hypervisor hostname
   list            list domains
   migrate         migrate domain to another host
   migrate-setmaxdowntime set maximum tolerable downtime
   net-autostart   autostart a network
   net-create      create a network from an XML file
   net-define      define (but don't start) a network from an XML file
   net-destroy     destroy a network
   net-dumpxml     network information in XML
   net-edit        edit XML configuration for a network
   net-list        list networks
   net-name        convert a network UUID to network name
   net-start       start a (previously defined) inactive network
   net-undefine    undefine an inactive network
   net-uuid        convert a network name to network UUID
   iface-list      list physical host interfaces
   iface-name      convert an interface MAC address to interface name
   iface-mac       convert an interface name to interface MAC address
   iface-dumpxml   interface information in XML
   iface-define    define (but don't start) a physical host interface from an XML file
   iface-undefine  undefine a physical host interface (remove it from configuration)
   iface-edit      edit XML configuration for a physical host interface
   iface-start     start a physical host interface (enable it / "if-up")
   iface-destroy   destroy a physical host interface (disable it / "if-down")
   managedsave     managed save of a domain state
   managedsave-remove Remove managed save of a domain
   nodeinfo        node information
   nodedev-list    enumerate devices on this host
   nodedev-dumpxml node device details in XML
   nodedev-dettach dettach node device from its device driver
   nodedev-reattach reattach node device to its device driver
   nodedev-reset   reset node device
   nodedev-create  create a device defined by an XML file on the node
   nodedev-destroy destroy a device on the node
   nwfilter-define define or update a network filter from an XML file
   nwfilter-undefine undefine a network filter
   nwfilter-dumpxml network filter information in XML
   nwfilter-list   list network filters
   nwfilter-edit   edit XML configuration for a network filter
   pool-autostart  autostart a pool
   pool-build      build a pool
   pool-create     create a pool from an XML file
   pool-create-as  create a pool from a set of args
   pool-define     define (but don't start) a pool from an XML file
   pool-define-as  define a pool from a set of args
   pool-destroy    destroy a pool
   pool-delete     delete a pool
   pool-dumpxml    pool information in XML
   pool-edit       edit XML configuration for a storage pool
   pool-info       storage pool information
   pool-list       list pools
   pool-name       convert a pool UUID to pool name
   pool-refresh    refresh a pool
   pool-start      start a (previously defined) inactive pool
   pool-undefine   undefine an inactive pool
   pool-uuid       convert a pool name to pool UUID
   secret-define   define or modify a secret from an XML file
   secret-dumpxml  secret attributes in XML
   secret-set-value set a secret value
   secret-get-value Output a secret value
   secret-undefine undefine a secret
   secret-list     list secrets
   pwd             print the current directory
   quit            quit this interactive terminal
   exit            quit this interactive terminal
   reboot          reboot a domain
   restore         restore a domain from a saved state in a file
   resume          resume a domain
   save            save a domain state to a file
   schedinfo       show/set scheduler parameters
   dump            dump the core of a domain to a file for analysis
   shutdown        gracefully shutdown a domain
   setmem          change memory allocation
   setmaxmem       change maximum memory limit
   setvcpus        change number of virtual CPUs
   suspend         suspend a domain
   ttyconsole      tty console
   undefine        undefine an inactive domain
   update-device   update device from an XML file
   uri             print the hypervisor canonical URI
   vol-create      create a vol from an XML file
   vol-create-from create a vol, using another volume as input
   vol-create-as   create a volume from a set of args
   vol-clone       clone a volume.
   vol-delete      delete a vol
   vol-wipe        wipe a vol
   vol-dumpxml     vol information in XML
   vol-info        storage vol information
   vol-list        list vols
   vol-pool        returns the storage pool for a given volume key or path
   vol-path        returns the volume path for a given volume name or key
   vol-name        returns the volume name for a given volume key or path
   vol-key         returns the volume key for a given volume name or path
   vcpuinfo        domain vcpu information
   vcpupin         control domain vcpu affinity
   version         show version
   vncdisplay      vnc display
   snapshot-create Create a snapshot
   snapshot-current Get the current snapshot
   snapshot-delete Delete a domain snapshot
   snapshot-dumpxml Dump XML for a domain snapshot
   snapshot-list   List snapshots for a domain
   snapshot-revert Revert a domain to a snapshot