The key thing is that you must use a "machine" id of "pc-1.3" or it will say your hardware is not supported.
Additionally you MUST use a virtio disk or you will get a ks_pre.sh error as soon as the install starts (a look at logs will show it can't find a disk). This is funny because even though the OS finds the disk and an fdisk -l shows it, it looks like the script looks for a /dev/vda device (virtio) and nothing else, so if you didn't use Virtio as your disk and you have a /dev/sda it won't work. Or follow the step below to change the search pattern of vd to sd
In Promxox you will have to edit your config file like this:
bootdisk: sata0
cores: 12
ide2: local:iso/Bootable_UCSInstall_UCOS_12.iso,media=cdrom,size=3523684K
machine: pc-1.3
memory: 8096
name: ciscouc
net0: virtio=DE:C3:A0:F8:50:11,bridge=vmbr0
numa: 0
ostype: l26
scsihw: virtio-scsi-pci
smbios1: uuid=99bf1ee3-b527-4ea2-bf68-179bee9699b1
sockets: 1
unused0: thin:vm-124-disk-1
virtio0: thin:vm-124-disk-2,size=90G
Raw QEMU-KVM execution:
qemu-system-x86_64 -boot dc -smp 4 -machine pc-1.3 -vnc :1 -m 8096 -drive file=cucum86.img,if=virtio -cdrom Bootable_UCSInstall_UCOS_12.iso
The following assumes you are mounting your CUCM iso into "cucmmount"
#we make the following directories (cucmmount is where we mount the iso and cucmeditiso is where we copy the files to so we can modify and recreate the .iso)
mkdir cucmmount
mount -o loop yourcucm.iso cucmmount
#
we copy our iso files to cucmeditiso
cp -a cucmmount cucmeditiso
cd cucmeditiso
cd Cisco/hssi/server_implementation
rm -rf OpenStack VMWARE
cd KVM
rm -rf HAL RHEV
cd ../../../..
vi Cisco/hssi/shared/bin/hssi_api.sh
#change
case "$isFound" in
"0")
echo "$($impl HWModel): passed detection validation" >&2
append_inDataFile_forKey_value $hssi_api_state_file "hardware_implementation_paths" $impl
hw_model="$($impl HWModel)"
((validated_count++))
;;
#to
echo "HSSI_API $impl returned $isFound and errors=$validation_errors " >&2
case "$isFound" in
"0")
echo "$($impl HWModel): passed detection validation" >&2
append_inDataFile_forKey_value $hssi_api_state_file "hardware_implementation_paths" $impl
hw_model="$($impl HWModel)"
((validated_count++))
;;
"2")
echo "$($impl HWModel): passed detection validation" >&2
append_inDataFile_forKey_value $hssi_api_state_file "hardware_implementation_paths" $impl
hw_model="$($impl HWModel)"
((validated_count++))
;;
vi Cisco/base_scripts/ihardware.sh
#change
function hasHwSnmpMonitoring()
{
local method="hasHwSnmpMonitoring"
_forwardToSAM $method $@
}
#to
function hasHwSnmpMonitoring()
{
return 1
}
mv Cisco/hssi/server_implementation/KVM/QEMU/shared/bin/api_implementation.sh.proposed Cisco/hssi/server_implementation/KVM/QEMU/shared/bin/api_implementation.sh
vi Cisco/hssi/server_implementation/KVM/QEMU/shared/bin/api_implementation.sh
#find this
return $rc
}
#add this below the }
function postBootHardwareSetup()
{
local rc=$HSSI_TRUE
(super postBootHardwareSetup $*)
local src=$?
# Abort if there is a critical failure
if [ $src -eq 1 ]; then
return $src
fi
rm -f /etc/udev/rules.d/70-persistent-net.rules 2> /dev/null
#
# remove hwaddr field from config in case mac address changed.
#
sed -i 's/^HWADDR.*//' /etc/sysconfig/network-scripts/ifcfg-eth* 2> /dev/null
sed -i 's/^NM_CON.*/NM_CONTROLLED="no"/' /etc/sysconfig/network-scripts/ifcfg-eth* 2> /dev/null
sed -i 's/^ONBOOT.*/ONBOOT="yes"/' /etc/sysconfig/network-scripts/ifcfg-eth* 2> /dev/null
return $rc
}
#follow this step if you want it to work with a NON virtio disk (eg. Virtualbox)
vi ./Cisco/hssi/server_implementation/KVM/QEMU/shared/bin/api_implementation.sh
###################################
### SERVER SPECIFIC OVERRIDES BELOW
###################################
VDX_PATTERN="vd"
KVM_SDX_PATTERN="sd"
DX_INDEX=(a b c d e)
change VDX_PATTERN="vd" to VDX_PATTERN="sd"
###################################
### SERVER SPECIFIC OVERRIDES BELOW
###################################
VDX_PATTERN="sd"
KVM_SDX_PATTERN="sd"
DX_INDEX=(a b c d e)
Now we generate our new .iso
genisoimage -o /tmp/KVMenabled-by-realtechtalk.com.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -iso-level 4 .
Errors:
ks_pre.sh error
Normally caused by not having your VDX pattern changed as above.
The Cisco Unified Communications disc was not found in any of your CDROM drives. Please insert the Cisco Unified Communications disc and press OK to retry.
Caused by lack of presence of the .discinfo text file from the root of cucmmount not being copied to your new iso root at cucmeditiso.
cp -a cucmmount/.discinfo cucmeditiso/
Tested on UCS 8.6 and 12
mkdir mountcucm
mount -o loop Bootable_UCSInstall_UCOS_UNRST_8.6.2.10000-14.sgn.iso mountcucm/
#
we need to copy the contents because we cannot directly edit a mounted (read-only) iso
cp -a mountcucm cucmedit
cd cucmedit
# we are enabling the KVM/QEMU by changing the api_implementation.sh.proposed to .sh
mv Cisco/hssi/server_implementation/KVM/QEMU/shared/bin/api_implementation.sh.proposed Cisco/hssi/server_implementation/KVM/QEMU/shared/bin/api_implementation.sh
#follow this step if you want it to work with a NON virtio disk (eg. in Virtualbox)
vi ./Cisco/hssi/server_implementation/KVM/QEMU/shared/bin/api_implementation.sh
###################################
### SERVER SPECIFIC OVERRIDES BELOW
###################################
VDX_PATTERN="vd"
KVM_SDX_PATTERN="sd"
DX_INDEX=(a b c d e)
change VDX_PATTERN="vd" to VDX_PATTERN="sd"
###################################
### SERVER SPECIFIC OVERRIDES BELOW
###################################
VDX_PATTERN="sd"
KVM_SDX_PATTERN="sd"
DX_INDEX=(a b c d e)
vi Cisco/base_scripts/ihardware.sh
#change this
function hasHwSnmpMonitoring()
{
local method="hasHwSnmpMonitoring"
_forwardToSAM $method $@
}
#to
function hasHwSnmpMonitoring()
{
return 1
}
cd Cisco/hssi/server_implementation
#delete everything other than KVM
total 40K
drwxrwxr-x 8 900711 floppy 4.0K Aug 22 2011 .
drwxrwxr-x 5 900711 floppy 4.0K Aug 22 2011 ..
drwxrwxr-x 5 900711 floppy 4.0K Aug 22 2011 HP
drwxrwxr-x 6 900711 floppy 4.0K Aug 22 2011 IBM
drwxrwxr-x 5 900711 floppy 4.0K Aug 22 2011 KVM
-r--r--r-- 1 900711 floppy 92 Dec 13 2008 README.TXT
drwxrwxr-x 4 900711 floppy 4.0K Aug 22 2011 shared
-r--r--r-- 1 900711 floppy 1.5K Aug 22 2011 TRANS.TBL
drwxrwxr-x 4 900711 floppy 4.0K Aug 22 2011 VMWARE
drwxrwxr-x 4 900711 floppy 4.0K Aug 22 2011 VOLARIS
#:/var/lib/vz/template/iso/cucm8.6kvm/Cisco/hssi/server_implementation# rm -rf HP/ IBM/ VMWARE/ VOLARIS/
#you may need to do this:
#fix this file
vi Cisco/hssi/server_implementation/KVM/shared/bin/KVM.data
#change
expected_manufacturer=QEMU\|Bochs
#to
expected_manufacturer=QEMU\|Bochs\|Seabios
#use mkisofs or genisoimage
genisoimage -o /var/lib/vz/template/iso/Bootable_UCSInstall_UCOS_UNRST_8.6.2.10000-14.sgn-KVMenabled-by-realtechtalk.com.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -iso-level 4 .
cisco, cucm, ucsinstall, kvm, proxmoxthe, quot, pc, hardware, supported, additionally, virtio, disk, ks_pre, sh, install, logs, os, fdisk, dev, vda, didn, sda, promxox, edit, config, bootdisk, sata, cores, ide, iso, bootable_ucsinstall_ucos_, cdrom, ciscouc, vmbr, numa, ostype, scsihw, scsi, pci, smbios, uuid, bf, ee, ea, sockets, unused, vm, qemu, execution, _, dc, smp, vnc, cucum, img, modify, enable, ucs, mkdir, mountcucm, mount, bootable_ucsinstall_ucos_unrst_, sgn, mountcucum, mv, hssi, server_implementation, bin, api_implementation, vi, base_scripts, ihardware, hashwsnmpmonitoring, method, _forwardtosam, mkisofs, genisoimage, var, lib, vz, template, kvmenabled, realtechtalk, isolinux, emul, info, delete, drwxrwxr, floppy, aug, hp, ibm, dec, readme, txt, trans, tbl, vmware, volaris, rm, rf, expected_manufacturer, bochs, seabios,