##################### XEN uname -a ps -ef | grep xen virsh list virsh dominfo win virt-manager & virsh start win xentop prstat # problem: quemu-dm ~ 50% CPU virsh shutdown win ##################### ZONE zoneadm list -icv zfs list zonecfg -z zone1 # create set zonepath=/rpool/zone1 verify commit export # zoneadm -z zone1 install # zrusit, budeme klonovat zonecfg -z zone1 delete -F zfs destroy rpool/zone1 # znova zone1 zonecfg -z zone1 # create set zonepath=/rpool/zone1 add inherit-pkg-dir set dir=/opt end add net set address=192.168.1.101 set physical=e1000g0 end verify commit # # zone_sparse vytorena klasickou metodou "install" drive zoneadm -z zone1 clone zone_sparse zfs list zoneadm list -icv zoneadm -z zone1 boot # dokonfigurovat (pri klonovani probehl "sys-unconfig") zlogin -C zone1 zlogin zone1 # zone1, ukazka bezpecnosti -> nejde vetsina bash df -k touch /xyz # jeste jde touch /usr/xyz touch /dev/xyz ls -l /dev/dsk/ mknod device c 1 1 ifconfig -a ifconfig e1000g0 addif 1.2.3.4 up ppriv -v $$ exit # do globalni zony # ppriv -v $$ # neco pridame zonecfg -z zone1 # add fs set dir=/neco set special=/rpool/zone1/neco set type=lofs end verify commit # mkdir /rpool/zone1/neco zlogin zone1 reboot zoneadm list -icv zlogin zone1 # zone1 df -k touch /neco/xyz exit #zone1 # ls /rpool/zone1/neco ping 192.168.1.101 ps -efZ prstat -Z # zone2 - konfigurace -> ukazka "uplneho" predani zdroju IP a ZFS zonecfg -z zone2 # create set zonepath=/rpool/zone2 set ip-type=exclusive add inherit-pkg-dir set dir=/opt end add net set physical=e1000g1000 end add dataset set name=rpool/dataset end verify commit # zfs create rpool/dataset zfs set mountpoint=none rpool/dataset zoneadm -z zone2 clone zone_sparse dladm show-link # zone2, ukazka bezpecnosti -> ted uz neco jde ifconfig e1000g1000 1.2.3.4 up zfs list zfs set mountpoint=/dataset rpool/dataset zfs create rpool/dataset/subset exit # do gobalni zony # # centos zone zonecfg -z zone_centos # create -t SUNWlx set zonepath=/rpool/zone_centos verify commit # zoneadm -z zone_centos -d /space/centos_fs_image.tar.bz2 (http://dlc.sun.com/osol/brandz/downloads/centos_fs_image.tar.bz2) zoneadm -z zone_centos boot zlogin -C zone_centos # uname -a ps cd /proc exit # ###################### RESOURCES cp loop /rpool/zone1/root/ cp loop /rpool/zone2/root/ /loop & zlogin zone1 "nohup /loop &" zlogin zone2 "nohup /loop &" ps -efZ | grep loop prstat -Z # -> kazdy dostane 33% (nejsou dalsi pset/pools jen default a planovac neni FSS, takze zadne shares nemaji vliv) pkill loop # konfigurace psetu&poolu pooladm -e svcadm enable svc:/system/pools/dynamic:default ps -ef | grep pool pooladm -s pooladm poolcfg -c 'create pset pset_muj ( uint pset.min = 1; uint pset.max = 2 )' poolcfg -c 'create pool pool_muj ( string pool.scheduler="FSS" )' poolcfg -c 'associate pool pool_muj ( pset pset_muj )' pooladm -c # od teto chvile pool/pset_default 1xCPU a pool/pset_muj 1xCPU zonecfg -z zone1 set pool=pool_muj zonecfg -z zone2 set pool=pool_muj zlogin zone1 reboot zlogin zone2 reboot zlogin zone1 pooladm zlogin zone1 psrinfo -v zlogin zone1 "nohup /loop &" zlogin zone2 "nohup /loop &" prstat -Z mpstat 1 10 # kazdy loop dostane jen 25% (ze vsech cpu(2) je 50% podil na 1 cpu v poolu, druhe cpu (pool/pset_default je idle "mpstat")) zlogin zone1 "nohup /loop &" prstat -Z # jeden loop dostane 25% a dalsi 2 loopy po 12.5% -> MAME UZ PLANOVAC FSS (viz konfigurace pool_muj) a implicitni "cpu-share" mezi zonami je "1" ps -e -o zone,class,pid,args | grep loop prctl `pgrep loop` pkill loop # predelame share zonecfg -z zone1 set cpu-shares=3 zlogin zone1 reboot zlogin zone1 "nohup /loop &" zlogin zone1 "nohup /loop &" zlogin zone2 "nohup /loop &" prstat -Z # ted by to melo byt "mezi zonami" 2xloop(z1) : 1xloop(z2) == 3:1 == (18%+18%)37% : 13% pkill loop # projekty uvnitr zony zlogin zone1 "projadd -K 'project.cpu-shares=(priv,10,none)' p1" zlogin zone1 "projadd -K 'project.cpu-shares=(priv,20,none)' p2" zlogin zone1 "nohup newtask -p p1 /loop &" zlogin zone1 "nohup newtask -p p2 /loop &" zlogin zone2 "nohup /loop &" prstat -Z # zony porad 37%:13% (3:1), ale dva loopy uvnitr zony1 v pomeru 24%:12% ps -e -o zone,project,pid,args | grep loop pkill loop