Munkahelyem egyik régi XenServer pooljának lebontásához szükség volt arra, hogy a VPS-ekhez tartozó raw diszkek VHD-re legyenek konvertálva. A VHD formátum előnye többek között a storage-ok közötti live migráció támogatása.
Az alábbi kis szkripttel lehetőség van egy adott VPS-hez tartozó merevlemezek VHD-ban való visszatöltésére és lementésére. Hozzávalók:
- Kétszer annyi szabad hely, mint amennyit az adott VPS foglal a storage-on
- Átmeneti mentő terület (pl. NFS Share)
#!/bin/bash
TEMPDIR=/mnt/nfs
VMID=vps.example.com
SRUUID=3a1d030b-da5b-e1b9-c589-8f2f74dcc4f2
echo $(date +%Y-%m-%d" "%H:%M:%S)" Exporting VDI(s)"
for vdi in $(xe vm-disk-list vm=$VMID | grep -A 3 VDI | grep uuid | awk {print $5}); do
size=$(xe vdi-param-list uuid=$vdi | grep "virtual-size" | awk {print $4})
echo "Exporting $vdi, "`expr $size / 1024 / 1024`" Mb: $TEMPDIR/$VMID-$vdi.vhd"
xe vdi-export uuid=$vdi filename=$TEMPDIR/$VMID-$vdi.vhd format=vhd
done
echo ""
echo $(date +%Y-%m-%d" "%H:%M:%S)" Importing VDI(s)"
for vdi in $(xe vm-disk-list vm=$VMID | grep -A 3 VDI | grep uuid | awk {print $5}); do
size=$(xe vdi-param-list uuid=$vdi | grep "virtual-size" | awk {print $4})
echo "Importing $vdi, "`expr $size / 1024 / 1024`" Mb: $TEMPDIR/$VMID-$vdi.vhd"
newvdiuuid=$(xe vdi-create sr-uuid=$SRUUID virtual-size=`expr $size / 1024 / 1024`MiB name-label=$VMID-$vdi)
xe vdi-import uuid=$newvdiuuid filename=$TEMPDIR/$VMID-$vdi.vhd format=vhd
done
xe sr-scan uuid=$SRUUID
echo $(date +%Y-%m-%d" "%H:%M:%S)" done"
echo -e "TODO:\nDetach (or remove) old disk(s) from the VPS\nAttach new disk(s) to the VPS"
A minap be kellett üzemelnem egy, csak saját storage-ot használó Citrix Xenserver-t. A VPS-ek virtuális merevlemezeit tároló helyi storage-ot a telepítésnél létre lehet hozni, azonban az ISO repository-t nem. Íme egy tutorial, hogyan készíthetjük el utóbbit kézzel, a telepítés befejezte után:
mkdir -p /var/opt/xen/iso_repo
xe sr-create name-label=ISO_repo type=iso device-config:location=/var/opt/xen/iso_repo device-config:legacy_mode=true content-type=iso
A fenti parancsok kiadása után töltsük le a használni kívánt lemezképeket a /var/opt/xen/iso_repo mappába, majd XenCenter-ben rescaneljük a repo tartalmát.
Legutóbbi bejegyzések
Kulcsszavak
#HA #acer #adattárolás #android #api #apple #apt #aszinkron #authenticator #backup #bareos #bash #big data #biztonság #bookstack #cisco #citrix #cli #cloud #cms #crypt #debian #desktop #dump #duplikált #előadás #expect #fstab #fájl #generáció #gif #github #gmail #google #google digital workshop #gépház #helpdesk #hibajavítás #hálózat #imagick #installer #iphone #iscsi #iso #ispconfig #it #jelszó #joomla #jpeg #konvertálás #kpartx #képzés #könyv #könyvajánló #lightdm #linux #locale #lubuntu #luks #lvm #maian support #megacli #memória #mentés #mikrotik #mount #munkacsoport #mysql #nextcloud #nfs #openvz #perl #php #png #pv #raid #raw #samba #sftp #shell #smartctl #smartmontools #snapshot #soho #ssh #ssl #storage #swap #switch #szoftver #szolgálati közlemény #team #telefon #thor #tool #ubuntu #unifi #vernee #vezetés #vg #vhd #virtualizáció #webhoszting #while #wifi #wiki #wordpress #xen #xenserver