XenServer

мая 192018
 

Для подключения к экрану виртуальной машины, расположенной на XenServer необходимо:

  1. Получить номер домена виртуальной машины (выполняется на консоли XenServer):
    xe vm-list params=dom-id name-label=[vm name] | grep dom-id
  2. Получить порт VNC для полученного домена (выполняется на консоли XenServer):
    xenstore-read /local/domain/[domain]/console/vnc-port
  3. Подключится посредством VNC ([port] – последние две цифры вывода предыдущей команды:
    vncviewer -via root@[xenserver] localhost:[port]

Все вместе в одном скрипте xen_vm_screen.sh, выполняется на удаленном компьютере:

#!/bin/bash
XEN_HOST=$1
VM=$2
XEN_USER=root
DOMAIN=`ssh $XEN_USER@$XEN_HOST "xe vm-list params=dom-id name-label=$VM | awk -F ':' '{gsub(/[ \t]+/, \"\", \\\$2); print \\\$2}'"`
VM_PORT=`ssh $XEN_USER@$XEN_HOST "xenstore-read /local/domain/$DOMAIN/console/vnc-port"`
vncviewer -via $XEN_USER@$XEN_HOST localhost:${VM_PORT:2:2}

Запускать:

bash ./xen_vm_screen.sh vm_host_name vm_name
авг 072013
 
  1. В файле /etc/yum.repos.d/CentOS-Base.repo в секции [base] установить enabled=1
  2. sed -i 's/enabled=0/enabled=1/g' /etc/yum.repos.d/CentOS-Base.repo
  3. Для XenServer 6.2, 6.5 в файле /etc/yum.repos.d/Citrix.repo в секции [citrix] установить enabled=0
  4. sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/Citrix.repo
  5.  rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/$(uname -i)/epel-release-5-4.noarch.rpm
     cd /tmp
     wget https://yum.puppetlabs.com/el/5/products/$(uname -i)/puppetlabs-release-5-10.noarch.rpm
     rpm -Uvh puppetlabs-release-5-10.noarch.rpm
     yum install puppet
    

    настроить /etc/puppet/puppet.conf, после чего

     chkconfig puppet on
     /etc/init.d/puppet start
    

Также я рекомендую использовать xs_patcher для обновления XenServer.

авг 072013
 

Внимание: все операции производятся только с первыми двумя разделами RAID, третий раздел не изменяется

В связи с тем, что обновление XenServer представляет собой установку нового XenServer с сохранением виртуальных машин, но потерей всех изменений, которые делались вручную на сервере (установленное ПО, изменение/добавление настроек через консоль и т.п.), обновление XenServer заключается в новой установке и подключении старых виртуальных машин.

Основано на: http://support.citrix.com/article/CTX120962

  1. Бэкап всего, что есть (на всякий случай), либо вручную:
    xe vm-export vm=имя_виртуальной_машины filename=имя_файла compress=true
    ...
    xe pool-dump-database file-name=имя_дампа.dump
    

    либо с помощью: XENBack

  2. Экспорт метаданных
    xe vm-export metadata=true --multiple filename=VMEXPORT

    Внимание: сохраните получившиеся файлы VMEXPORT… на другом компьютере

  3. Continue reading »

апр 282013
 

Задача: перенести Windows на виртуальную машину, возможно изменив при переносе ресурсы, выделенные системе
Проблемы: конвертированая с помощью XenConvert вся система в формат ovf можно импортировать только через XenCenter и процедура импортирования не всегда работает
Внимание: это работает только для локального хранилища типа EXT (не LVM)

  1. Установить на Windows XenConvert
  2. Экпортировать с помощью XenConvert необходимые диски в формат VHD (рекомендуется экспортировать только диск C, остальные диски просто копировать)
  3. Скопировать полученный файл в место, доступное с сервера XenServer
  4. Скачать и установить на XenServer утилиту vhd2xen.i686
  5. Импортировать VHD диск в XenServer:
    /usr/lib/Acronis/VHD2XEN/vhd2xen.sh [VHD file]
  6. В XenCenter создать виртуальную машину из шаблона, соответствующего экспортированной системе
  7. В созданной виртуальной машине удалить все созданные диски и присоединить импортированный диск
  8. Запустить виртуальную машину и исправить настройки в Windows, если это необходимо
сен 232012
 

Дано: XenServer 6.2.0 к которому есть доступ только на консоль/SSH, требуется добавить новую виртуальную машину

  1. Виртуальная машина (VM) создается на основе одного из шаблонов, для выбора необходимого шаблона:
    xe template-list
  2. Создается виртуальная машина:
    xe vm-install template="Debian Wheezy 7.0 (32-bit)" new-name-label="newVM"

    т.е. в данном случае виртуальная машина создается на основе шаблона Debian Wheezy 7.0 (32-bit), имя новой виртуальной машины — newVM
    После выполнения команды выводится uuid созданной VM

Continue reading »

авг 242012
 

В XenServer (5.0, 5.5, 6.0) при постоянном изготовлении снепшотов системы (обычно используется для бекапов) через определенное время эти снепшоты делатся отказывались, возвращая ошибку:

Error code: SR_BACKEND_FAILURE_109
Error parameters: , The snapshot chain is too long

Continue reading »

янв 032012
 

осле обновления до XenServer 6.0 обнаружилось, что в настройках виртуальных машин отсутствует возможность задать способ запуска — автоматически или вручную. Для решения этой проблемы необходимо:

1. Включить возможность автостарта для пула:

xe pool-param-set uuid=... other-config:auto_poweron=true

2. Для каждой виртуальной машины, для которой нужен автозапуск:

xe vm-param-set uuid=... other-config:auto_poweron=true

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

PS: копия на http://wwalery.blogspot.com/