CHAPTER 5 STOCHASTIC ONLINE INTERVAL SCHEDUL-
5.2 Approximation Algorithms for IID Job Arrivals
directorio datastores está montado sobre NFS, podemos acceder directamente a la imagen
recién creada en la máquina física de la maqueta:
[oneadmin@one-admin ~]$ ll datastores/ total 3345624
drwxr-x--- 9 oneadmin oneadmin 4096 Dec 4 16:30 0 drwxr-x--- 2 oneadmin oneadmin 4096 Oct 19 23:58 1 drwxr-xr-x 2 oneadmin oneadmin 4096 Oct 19 20:18 2
-rw-r--r-- 1 root root 3426025472 Dec 5 15:23 centos65_x86_64.qcow2
Vamos a crear una plantilla para importar la imagen. Primero vemos las imágenes
disponibles:
[oneadmin@one-admin ~]$ oneimage list
ID USER GROUP NAME DATASTORE SIZE TYPE PER STAT RVMS
0 oneadmin oneadmin ttylinux - kvm default 40M OS No used 5
1 oneadmin oneadmin OpenNebula 4.2 default 83M OS No used 2
[oneadmin@one-admin ~]$ oneimage show 0 IMAGE 0 INFORMATION ID : 0 NAME : ttylinux - kvm USER : oneadmin GROUP : oneadmin DATASTORE : default TYPE : OS REGISTER TIME : 10/19 23:57:44 PERSISTENT : No SOURCE : /var/lib/one/datastores/1/b09f38dfc1c040db8233fa0f09eb02e6 PATH : http://marketplace.c12g.com/appliance/4fc76a938fb81d3517000003/download SIZE : 40M STATE : used RUNNING_VMS : 5 PERMISSIONS OWNER : um- GROUP : --- OTHER : --- IMAGE TEMPLATE
DESCRIPTION="small image for testing" DEV_PREFIX="hd" DRIVER="raw" MD5="04c7d00e88fa66d9aaa34d9cf8ad6aaa" VIRTUAL MACHINES ID USER GROUP NAME STAT UCPU UMEM HOST TIME 70 oneadmin oneadmin tty0 2 NICs runn 15 64M one-node2 42d 23h37 71 oneadmin oneadmin tty1 2 NICs runn 11 64M one-node2 42d 23h37 117 oneadmin oneadmin tty_vlan7_1 runn 16 64M one-node4 1d 22h00 119 oneadmin oneadmin tty_vlan7_insid runn 13 64M one-node2 1d 15h36 122 oneadmin oneadmin tty_vlan8_insid runn 12 64M one-node1 0d 23h36 [oneadmin@one-admin ~]$ oneimage show 1 IMAGE 1 INFORMATION
NAME : OpenNebula 4.2 Virtual Router USER : oneadmin GROUP : oneadmin DATASTORE : default TYPE : OS REGISTER TIME : 10/19 23:58:57 PERSISTENT : No SOURCE : /var/lib/one/datastores/1/02ef41c6f84cea17ab28902251e72634 PATH : http://marketplace.c12g.com/appliance/51f2a09f8fb81d4d19000004/download SIZE : 83M STATE : used RUNNING_VMS : 2 PERMISSIONS OWNER : um- GROUP : --- OTHER : --- IMAGE TEMPLATE DESCRIPTION="Virtual Router" DEV_PREFIX="hd" DRIVER="raw" MD5="78d46f5516c08e0d96a8dc92aa26c838" SHA1="a2a538027d5f9f9fcbbad6c8adad3f67d2de5242" VIRTUAL MACHINES ID USER GROUP NAME STAT UCPU UMEM HOST TIME 120 oneadmin oneadmin router_vlan7_1 runn 0 512M one-node1 1d 14h27 121 oneadmin oneadmin router_vlan8_1 runn 0 512M one-node4 0d 23h37
Creamos nuestra plantilla para la importar la imagen qcow2 en el directorio template_files:
[oneadmin@one-admin template_files]$ more centos65_x86_64_img.tmpl NAME = "CentOS 6.5 qcow2 non per." PATH = /var/lib/one/datastores/centos65_x86_64.qcow2 TYPE = OS DRIVER = qcow2 DESCRIPTION = "CentOS 6.5 64 bits with qcow2 non persistent"Ahora probamos a crear la imagen:
[oneadmin@one-admin template_files]$ oneimage create centos65_x86_64_img.tmpl -d "default" ID: 2 [oneadmin@one-admin template_files]$ oneimage list ID USER GROUP NAME DATASTORE SIZE TYPE PER STAT RVMS 0 oneadmin oneadmin ttylinux - kvm default 40M OS No used 51 oneadmin oneadmin OpenNebula 4.2 default 83M OS No used 2
Nos ha devuelto un error. Vemos lo que ha pasado:
[oneadmin@one-admin template_files]$ oneimage show 2IMAGE 2 INFORMATION
ID : 2
NAME : CentOS 6.5 qcow2 non per. USER : oneadmin GROUP : oneadmin DATASTORE : default TYPE : OS REGISTER TIME : 12/05 16:56:32 PERSISTENT : No SOURCE : PATH : /var/lib/one/datastores/centos65_x86_64.qcow2 SIZE : 3.2G STATE : err RUNNING_VMS : 0 PERMISSIONS OWNER : um- GROUP : --- OTHER : --- IMAGE TEMPLATE DESCRIPTION="CentOS 6.5 64 bits with qcow2 non persistent"
DEV_PREFIX="hd" DRIVER="qcow2"
ERROR="Thu Dec 5 16:56:33 2013 : Error copying image in the datastore: Not allowed to copy image file /var/lib/one/datastores/centos65_x86_64.qcow2"
VIRTUAL MACHINES
Bien, vamos a cambiarle los permisos a la imagen en el host físico donde se encuentra:
[root@Testit datastores]# chown oneadmin.oneadmin centos65_x86_64.qcow2[root@Testit datastores]# ll total 3345624
drwxr-x---. 9 oneadmin oneadmin 4096 Dec 4 16:30 0 drwxr-x---. 2 oneadmin oneadmin 4096 Oct 19 23:58 1 drwxr-xr-x. 2 oneadmin oneadmin 4096 Oct 19 20:18 2
-rw-r--r--. 1 oneadmin oneadmin 3426025472 Dec 5 15:23 centos65_x86_64.qcow2
Volvemos a probar:
[oneadmin@one-admin template_files]$ oneimage delete 2
[oneadmin@one-admin template_files]$ oneimage create centos65_x86_64_img.tmpl -d "default" ID: 3
[oneadmin@one-admin template_files]$ oneimage list
0 oneadmin oneadmin ttylinux - kvm default 40M OS No used 5
1 oneadmin oneadmin OpenNebula 4.2 default 83M OS No used 2
3 oneadmin oneadmin CentOS 6.5 qcow default 3.2G OS No err 0
[oneadmin@one-admin template_files]$ oneimage show 3 IMAGE 3 INFORMATION
ID : 3
NAME : CentOS 6.5 qcow2 non per. USER : oneadmin GROUP : oneadmin DATASTORE : default TYPE : OS REGISTER TIME : 12/05 17:05:06 PERSISTENT : No SOURCE : PATH : /var/lib/one/datastores/centos65_x86_64.qcow2 SIZE : 3.2G STATE : err RUNNING_VMS : 0 PERMISSIONS OWNER : um- GROUP : --- OTHER : --- IMAGE TEMPLATE DESCRIPTION="CentOS 6.5 64 bits with qcow2 non persistent"
DEV_PREFIX="hd" DRIVER="qcow2"
ERROR="Thu Dec 5 17:05:06 2013 : Error copying image in the datastore: Not allowed to copy image file /var/lib/one/datastores/centos65_x86_64.qcow2"
VIRTUAL MACHINES
Lo mismo: no se deja. Pero nosotros comprobamos que no hay problemas de permisos
para copiar la imagen:
[oneadmin@one-admin ~]$ cd datastores/ [oneadmin@one-admin datastores]$ ll total 3345624
drwxr-x--- 9 oneadmin oneadmin 4096 Dec 4 16:30 0 drwxr-x--- 2 oneadmin oneadmin 4096 Oct 19 23:58 1 drwxr-xr-x 2 oneadmin oneadmin 4096 Oct 19 20:18 2
-rw-r--r-- 1 oneadmin oneadmin 3426025472 Dec 5 15:23 centos65_x86_64.qcow2
[oneadmin@one-admin datastores]$ cp centos65_x86_64.qcow2 centos65_x86_64.qcow2.backup [oneadmin@one-admin datastores]$ ll
drwxr-x--- 9 oneadmin oneadmin 4096 Dec 4 16:30 0 drwxr-x--- 2 oneadmin oneadmin 4096 Oct 19 23:58 1 drwxr-xr-x 2 oneadmin oneadmin 4096 Oct 19 20:18 2
-rw-r--r-- 1 oneadmin oneadmin 3426025472 Dec 5 15:23 centos65_x86_64.qcow2
-rw-r--r-- 1 oneadmin oneadmin 3426025472 Dec 5 17:13 centos65_x86_64.qcow2.backup
Vemos cómo están los datastores definidos:
[oneadmin@one-admin template_files]$ onedatastore list
ID NAME SIZE AVAIL CLUSTER IMAGES TYPE DS TM 0 system - - - 0 sys - shared 1 default 404.9G 85% - 2 img fs shared 2 files 404.9G 85% - 0 fil fs ssh
Miramos los logs (fichero /var/log/oned.log) , y encontramos la respuesta:
Thu Dec 5 17:18:07 2013 [ReM][D]: Req:3760 UID:0 DatastorePoolInfo invokedThu Dec 5 17:18:07 2013 [ReM][D]: Req:3760 UID:0 DatastorePoolInfo result SUCCESS, "<DATASTORE_POOL><DAT..."
Thu Dec 5 17:18:07 2013 [ReM][D]: Req:4400 UID:0 ImageAllocate invoked, "NAME = "Cen...", 1 Thu Dec 5 17:18:07 2013 [ImM][I]: Copying /var/lib/one/datastores/centos65_x86_64.qcow2 to
repository for image 4
Thu Dec 5 17:18:07 2013 [ReM][D]: Req:4400 UID:0 ImageAllocate result SUCCESS, 4
Thu Dec 5 17:18:07 2013 [ImM][I]: Command execution fail: /var/lib/one/remotes/datastore/fs/cp PERTX0RSSVZFUl9BQ1RJT05fREFUQT48SU1BR0U+PElEPjQ8L0lEPjxVSUQ+MDwvVUlEPjxHSUQ+MDwvR0lEPjxVTkFNRT5vbmVhZ G1pbjwvVU5BTUU+PEdOQU1FPm9uZWFkbWluPC9HTkFNRT48TkFNRT5DZW50T1MgNi41IHFjb3cyIG5vbiBwZXIuPC9OQU1FPjxQRV JNSVNTSU9OUz48T1dORVJfVT4xPC9PV05FUl9VPjxPV05FUl9NPjE8L09XTkVSX00+PE9XTkVSX0E+MDwvT1dORVJfQT48R1JPVVB fVT4wPC9HUk9VUF9VPjxHUk9VUF9NPjA8L0dST1VQX00+PEdST1VQX0E+MDwvR1JPVVBfQT48T1RIRVJfVT4wPC9PVEhFUl9VPjxP VEhFUl9NPjA8L09USEVSX00+PE9USEVSX0E+MDwvT1RIRVJfQT48L1BFUk1JU1NJT05TPjxUWVBFPjA8L1RZUEU+PERJU0tfVFlQR T4wPC9ESVNLX1RZUEU+PFBFUlNJU1RFTlQ+MDwvUEVSU0lTVEVOVD48UkVHVElNRT4xMzg2MjYwMjg3PC9SRUdUSU1FPjxTT1VSQ0 U+PC9TT1VSQ0U+PFBBVEg+L3Zhci9saWIvb25lL2RhdGFzdG9yZXMvY2VudG9zNjVfeDg2XzY0LnFjb3cyPC9QQVRIPjxGU1RZUEU +PC9GU1RZUEU+PFNJWkU+MzI2ODwvU0laRT48U1RBVEU+NDwvU1RBVEU+PFJVTk5JTkdfVk1TPjA8L1JVTk5JTkdfVk1TPjxDTE9O SU5HX09QUz4wPC9DTE9OSU5HX09QUz48Q0xPTklOR19JRD4tMTwvQ0xPTklOR19JRD48REFUQVNUT1JFX0lEPjE8L0RBVEFTVE9SR V9JRD48REFUQVNUT1JFPmRlZmF1bHQ8L0RBVEFTVE9SRT48Vk1TPjwvVk1TPjxDTE9ORVM+PC9DTE9ORVM+PFRFTVBMQVRFPjxERV NDUklQVElPTj48IVtDREFUQVtDZW50T1MgNi41IDY0IGJpdHMgd2l0aCBxY293MiBub24gcGVyc2lzdGVudF1dPjwvREVTQ1JJUFR JT04+PERFVl9QUkVGSVg+PCFbQ0RBVEFbaGRdXT48L0RFVl9QUkVGSVg+PERSSVZFUj48IVtDREFUQVtxY293Ml1dPjwvRFJJVkVS PjwvVEVNUExBVEU+PC9JTUFHRT48REFUQVNUT1JFPjxJRD4xPC9JRD48VUlEPjA8L1VJRD48R0lEPjA8L0dJRD48VU5BTUU+b25lY WRtaW48L1VOQU1FPjxHTkFNRT5vbmVhZG1pbjwvR05BTUU+PE5BTUU+ZGVmYXVsdDwvTkFNRT48UEVSTUlTU0lPTlM+PE9XTkVSX1 U+MTwvT1dORVJfVT48T1dORVJfTT4xPC9PV05FUl9NPjxPV05FUl9BPjA8L09XTkVSX0E+PEdST1VQX1U+MTwvR1JPVVBfVT48R1J PVVBfTT4wPC9HUk9VUF9NPjxHUk9VUF9BPjA8L0dST1VQX0E+PE9USEVSX1U+MTwvT1RIRVJfVT48T1RIRVJfTT4wPC9PVEhFUl9N PjxPVEhFUl9BPjA8L09USEVSX0E+PC9QRVJNSVNTSU9OUz48RFNfTUFEPmZzPC9EU19NQUQ+PFRNX01BRD5zaGFyZWQ8L1RNX01BR D48QkFTRV9QQVRIPi92YXIvbGliL29uZS9kYXRhc3RvcmVzLzE8L0JBU0VfUEFUSD48VFlQRT4wPC9UWVBFPjxESVNLX1RZUEU+MD wvRElTS19UWVBFPjxDTFVTVEVSX0lEPi0xPC9DTFVTVEVSX0lEPjxDTFVTVEVSPjwvQ0xVU1RFUj48VE9UQUxfTUI+NDE0NTcxPC9 UT1RBTF9NQj48RlJFRV9NQj4zNTA5NDQ8L0ZSRUVfTUI+PFVTRURfTUI+MjQxPC9VU0VEX01CPjxJTUFHRVM+PElEPjA8L0lEPjxJ RD4xPC9JRD48L0lNQUdFUz48VEVNUExBVEU+PERTX01BRD48IVtDREFUQVtmc11dPjwvRFNfTUFEPjxUTV9NQUQ+PCFbQ0RBVEFbc 2hhcmVkXV0+PC9UTV9NQUQ+PFRZUEU+PCFbQ0RBVEFbSU1BR0VfRFNdXT48L1RZUEU+PC9URU1QTEFURT48L0RBVEFTVE9SRT48L0 RTX0RSSVZFUl9BQ1RJT05fREFUQT4= 4
Thu Dec 5 17:18:07 2013 [ImM][E]: cp: Not allowed to copy images from /var/lib/one/ /etc/one/ /var/lib/one/
Thu Dec 5 17:18:07 2013 [ImM][E]: Not allowed to copy image file /var/lib/one/datastores/centos65_x86_64.qcow2
Thu Dec 5 17:18:07 2013 [ImM][I]: ExitCode: 255
Thu Dec 5 17:18:07 2013 [ImM][E]: Error copying image in the datastore: Not allowed to copy image file /var/lib/one/datastores/centos65_x86_64.qcow2
También es casualidad. Vamos a crear un softlink dentro de /tmp, a ver si así no se queja:
[oneadmin@one-admin one]$ cd /tmp[oneadmin@one-admin tmp]$ ll total 0
lrwxrwxrwx 1 oneadmin oneadmin 23 Dec 5 17:25 image_sources -> /var/lib/one/datastores [oneadmin@one-admin tmp]$ cd /var/lib/one/template_files/
[oneadmin@one-admin template_files]$ more centos65_x86_64_img.tmpl NAME = "CentOS 6.5 qcow2 non per."
PATH = /tmp/image_sources/centos65_x86_64.qcow2 TYPE = OS
DRIVER = qcow2
DESCRIPTION = "CentOS 6.5 64 bits with qcow2 non persistent" [oneadmin@one-admin template_files]$ oneimage list
ID USER GROUP NAME DATASTORE SIZE TYPE PER STAT RVMS
0 oneadmin oneadmin ttylinux - kvm default 40M OS No used 5
1 oneadmin oneadmin OpenNebula 4.2 default 83M OS No used 2
4 oneadmin oneadmin CentOS 6.5 qcow default 3.2G OS No err 0
[oneadmin@one-admin template_files]$ oneimage delete 4 [oneadmin@one-admin template_files]$ oneimage create -d default centos65_x86_64_img.tmpl ID: 5 [oneadmin@one-admin template_files]$ oneimage list ID USER GROUP NAME DATASTORE SIZE TYPE PER STAT RVMS 0 oneadmin oneadmin ttylinux - kvm default 40M OS No used 5
1 oneadmin oneadmin OpenNebula 4.2 default 83M OS No used 2
5 oneadmin oneadmin CentOS 6.5 qcow default 3.2G OS No err 0
[oneadmin@one-admin template_files]$ oneimage show 5 IMAGE 5 INFORMATION
ID : 5
NAME : CentOS 6.5 qcow2 non per. USER : oneadmin GROUP : oneadmin DATASTORE : default TYPE : OS REGISTER TIME : 12/05 17:27:43 PERSISTENT : No SOURCE : PATH : /tmp/image_sources/centos65_x86_64.qcow2 SIZE : 3.2G STATE : err RUNNING_VMS : 0 PERMISSIONS OWNER : um- GROUP : --- OTHER : --- IMAGE TEMPLATE
DESCRIPTION="CentOS 6.5 64 bits with qcow2 non persistent" DEV_PREFIX="hd"
DRIVER="qcow2"
ERROR="Thu Dec 5 17:27:43 2013 : Error copying image in the datastore: Not allowed to copy image file /tmp/image_sources/centos65_x86_64.qcow2"
VIRTUAL MACHINES