Commit fe4837f7 by Kohl Krisztofer

First 3.6 version

parent b6d5c41a
......@@ -28,9 +28,8 @@ Configure Open vSwitch bridge that handle vitual connections::
Enable passwordless Open vSwitch commands::
$ sudo tee /etc/sudoers.d/netdriver <<END
cloud ALL = (ALL) NOPASSWD: /usr/bin/ovs-ofctl, /usr/bin/ovs-vsctl, /sbin/ip link set *
END
$ sudo tee /etc/sudoers.d/netdriver <<END cloud ALL = (ALL) NOPASSWD: /usr/bin/ovs-ofctl, /usr/bin/ovs-vsctl, /sbin/ip link set * END
$ sudo chmod 660 /etc/sudoers.d/netdriver
Configuring the libvirt daemon
......@@ -76,7 +75,7 @@ Save configuration to virtualenv and activate environment::
export LIBVIRT_KEEPALIVE=True
export LIBVIRT_URI=test:///default
export AMQP_URI=amqp://cloud:password@$(hostname)/circle
export HYPERVISOR_TYPE=test
export HYPERVISOR_TYPE=test
END
Copy the libvrit bindings to the local virtualenv directory::
......@@ -95,4 +94,4 @@ Copy the upstart scripts for celery services::
Start celery daemons::
$ sudo start vmcelery
$ sudo start netcelery
\ No newline at end of file
$ sudo start netcelery
......@@ -8,8 +8,8 @@ setgid libvirtd
instance $NAME
script
cd /home/cloud/vmdriver
. /home/cloud/.virtualenvs/vmdriver/local/bin/activate
. /home/cloud/.virtualenvs/vmdriver/local/bin/postactivate
cd /home/kohlkriszto/Documents/vmdriver
. /home/kohlkriszto/Documents/vmdriver_venv/bin/activate
. /home/kohlkriszto/Documents/vmdriver_venv/bin/postactivate
exec celery -A netcelery worker --loglevel=info -n ${NAME}
end script
......@@ -12,4 +12,5 @@ Restart=always
WorkingDirectory=/home/cloud/vmdriver
ExecStart=/bin/bash -c "source /etc/profile; workon vmdriver; exec celery -A netcelery worker --loglevel=info -n $(/bin/hostname -s).%I"
ExecStart=/bin/bash -c "source /home/cloud/.virtualenvs/vmdriver/bin/activate; source /home/cloud/.virtualenvs/vmdriver/bin/activate; exec celery -A netcelery worker --loglevel=info -n $(/bin/hostname -s).%I"
......@@ -8,8 +8,8 @@ setgid libvirtd
instance $NAME
script
cd /home/cloud/vmdriver
. /home/cloud/.virtualenvs/vmdriver/local/bin/activate
. /home/cloud/.virtualenvs/vmdriver/local/bin/postactivate
cd /home/kohlkriszto/Documents/vmdriver
. /home/kohlkriszto/Documents/vmdriver_venv/bin/activate
. /home/kohlkriszto/Documents/vmdriver_venv/bin/postactivate
exec celery -A vmcelery worker --loglevel=info -n $NAME
end script
......@@ -12,4 +12,5 @@ Restart=always
WorkingDirectory=/home/cloud/vmdriver
ExecStart=/bin/bash -c "source /etc/profile; workon vmdriver; exec celery -A vmcelery worker --loglevel=info -n $(/bin/hostname -s).%I"
ExecStart=/bin/bash -c "source /home/cloud/.virtualenvs/vmdriver/bin/activate; source /home/cloud/.virtualenvs/vmdriver/bin/activate; exec celery -A vmcelery worker --loglevel=info -n $(/bin/hostname -s).%I"
......@@ -37,8 +37,8 @@ celery = Celery('netcelery',
include=['netdriver'])
celery.conf.update(
CELERY_RESULT_BACKEND='amqp',
CELERY_TASK_RESULT_EXPIRES=300,
CELERY_RESULT_BACKEND='amqp://',
CELERY_TASK_RESULT_EXPIRES=300000,
CELERY_QUEUES=(
Queue(HOSTNAME, Exchange(
'netdriver', type='direct'), routing_key="netdriver"),
......
celery==3.1.17
decorator==3.4.0
lxml==3.4.2
psutil==1.1.3
Pillow==2.3.0
GitPython==0.3.6
celery
decorator
lxml
psutil
Pillow
GitPython
......@@ -26,12 +26,12 @@ vmdict = {
'graphics': graphics
}
print vm.VMNetwork.deserialize(netdict).dump_xml()
print vm.VMDisk.deserialize(diskdict).dump_xml()
print((vm.VMNetwork.deserialize(netdict).dump_xml()))
print((vm.VMDisk.deserialize(diskdict).dump_xml()))
asd = vm.VMInstance.deserialize(vmdict)
print asd.dump_xml()
print((asd.dump_xml()))
# Enable logging
# logging.basicConfig(filename='example.log', level=logging.DEBUG)
......
""" Celery module for libvirt RPC calls. """
from celery import Celery
from kombu import Queue, Exchange
from os import getenv
......@@ -42,8 +43,8 @@ celery = Celery('vmcelery',
include=['vmdriver'])
celery.conf.update(
CELERY_RESULT_BACKEND='amqp',
CELERY_TASK_RESULT_EXPIRES=300,
CELERY_RESULT_BACKEND='amqp://',
CELERY_TASK_RESULT_EXPIRES=300000,
CELERY_QUEUES=(
Queue(HOSTNAME, Exchange(
'vmdriver', type='direct'), routing_key="vmdriver"),
......
......@@ -8,7 +8,7 @@ import json
from decorator import decorator
import lxml.etree as ET
from psutil import NUM_CPUS, virtual_memory, cpu_percent
from psutil import cpu_count, virtual_memory, cpu_percent
from celery.contrib.abortable import AbortableTask
......@@ -419,7 +419,7 @@ def node_info():
keys = ['model', 'memory', 'cpus', 'mhz',
'nodes', 'sockets', 'cores', 'threads']
values = Connection.get().getInfo()
return dict(zip(keys, values))
return dict(list(zip(keys, values)))
def _parse_info(values):
......@@ -430,7 +430,7 @@ def _parse_info(values):
"""
keys = ['state', 'maxmem', 'memory', 'virtcpunum', 'cputime']
info = dict(zip(keys, values))
info = dict(list(zip(keys, values)))
# Change state to proper ENUM
info['state'] = state_dict[info['state']]
return info
......@@ -474,7 +474,7 @@ def network_info(name, network):
'tx_bytes', 'tx_packets', 'tx_errs', 'tx_drop']
dom = lookupByName(name)
values = dom.interfaceStats(network)
info = dict(zip(keys, values))
info = dict(list(zip(keys, values)))
return info
......@@ -579,7 +579,7 @@ def __check_detach(domain, disk):
root = ET.fromstring(xml)
devices = root.find('devices')
for d in devices.findall("disk"):
if disk in d.find('source').attrib.values()[0]:
if disk in list(d.find('source').attrib.values())[0]:
raise Exception("Disk could not been detached. "
"Check if hot plug support is "
"enabled (acpiphp module on Linux).")
......@@ -631,7 +631,7 @@ def get_architecture():
@celery.task
def get_core_num():
return NUM_CPUS
return cpu_count
@celery.task
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment