def test_create_vps0 (self): print "create vps00" logger = Log ("test", config=conf) vpsops = VPSOps (logger) vps = XenVPS (0) try: vps.setup (os_id=20001, vcpu=1, mem_m=512, disk_g=7, ip="113.11.199.3", netmask="255.255.255.0", gateway="113.11.199.1", root_pw="fdfdfd") #vps.add_extra_storage (disk_id=1, size_g=1, fs_type='ext3') #vps.add_extra_storage (disk_id=2, size_g=0.5, fs_type='ext4') #vps.setup (os_id=10001, vcpu=1, mem_m=512, disk_g=7, ip="10.10.1.2", netmask="255.255.255.0", gateway="10.10.1.1", root_pw="fdfdfd") #vps.setup (os_id=10002, vcpu=1, mem_m=512, disk_g=7, ip="10.10.1.2", netmask="255.255.255.0", gateway="10.10.1.1", root_pw="fdfdfd") #vps.setup (os_id=30001, vcpu=1, mem_m=512, disk_g=7, ip="10.10.2.2", netmask="255.255.255.0", gateway="10.10.2.1", root_pw="root") #vps.setup (os_id=1, vcpu=1, mem_m=512, disk_g=7, ip="10.10.1.2", netmask="255.255.255.0", gateway="10.10.1.1", root_pw="fdfdfd") #vps.setup (os_id=10000, vcpu=1, mem_m=512, disk_g=7, ip="10.10.1.2", netmask="255.255.255.0", gateway="10.10.1.1", root_pw="fdfdfd") #vps.setup (os_id=20001, vcpu=1, mem_m=512, disk_g=7, ip="10.10.1.2", netmask="255.255.255.0", gateway="10.10.1.1", root_pw="fdfdfd") #vps.setup (os_id=10003, vcpu=1, mem_m=512, disk_g=7, ip="10.10.1.2", netmask="255.255.255.0", gateway="10.10.1.1", root_pw="fdfdfd") #vps.setup (os_id=20001, vcpu=1, mem_m=512, disk_g=7, ip="10.10.1.2", netmask="255.255.255.0", gateway="10.10.1.1", root_pw="fdfdfd") print vps.gen_xenpv_config () #vpsops.create_vps (vps, vps_image='/data/vps/images/arch-2011.08.19-i386-fs-ext3.tar.gz') vpsops.create_vps (vps) except Exception, e: print str(e) logger.exception (e) raise e
def vps_open (self, vps, vps_image=None, is_new=True): self.logger.info ("to open vps %s" % (vps.id)) if vps.host_id != self.host_id: msg = "vpsopen : vps %s host_id=%s != current host %s , abort" % (vps.id, vps.host_id, self.host_id) self.logger.error (msg) self.done_task (Cmd.OPEN, vps.id, False, msg) return if not vps.ipv4 or not vps.ipv4_gateway or vps.cpu <= 0 or vps.ram <= 0 or vps.hd <= 0 or not vps.password: self.logger.error ("vps open: invalid vps data received: %s" % (self.dump_vps_info (vps))) self.done_task (Cmd.OPEN, vps.id, False, "invalid vps data") return xv = XenVPS (vps.id) vpsops = VPSOps (self.logger) try: self.setup_vps (xv, vps) if xv.is_running (): msg = "vps %s is running" % (vps.id) self.logger_err.error (msg) self.done_task (Cmd.OPEN, vps.id, False, msg) return if vps.state in [vps_const.VPS_STATE_PAY, vps_const.VPS_STATE_RUN]: vpsops.create_vps (xv, vps_image, is_new) elif vps.state == vps_const.VPS_STATE_CLOSE: vpsops.reopen_vps (vps.id, xv) else: msg = "vps%s state is %s(%s)" % (str(vps.id), vps.state, vps_const.VPS_STATE2CN[vps.state]) self.logger_err.error (msg) self.done_task (Cmd.OPEN, vps.id, False, msg) return except Exception, e: self.logger_err.exception ("for %s: %s" % (str(vps.id), str(e))) self.done_task (Cmd.OPEN, vps.id, False, "error, " + str(e)) return
def test_vps0 (self): print "create vps00" logger = Log ("test", config=conf) vpsops = VPSOps (logger) xv = XenVPS (0) try: xv.setup (os_id=10001, vcpu=1, mem_m=512, disk_g=7, ip="10.10.2.2", netmask="255.255.255.0", gateway="10.10.2.1", root_pw="fdfdfd") xv.add_extra_storage (disk_id=1, size_g=1, fs_type='ext3') print xv.gen_xenpv_config () vpsops.create_vps (xv) except Exception, e: logger.exception (e) raise e
def test_vps0(self): print "create vps00" logger = Log("test", config=conf) vpsops = VPSOps(logger) xv = XenVPS(0) try: xv.setup(os_id=10001, vcpu=1, mem_m=512, disk_g=7, ip="10.10.2.2", netmask="255.255.255.0", gateway="10.10.2.1", root_pw="fdfdfd") xv.add_extra_storage(disk_id=1, size_g=1, fs_type='ext3') print xv.gen_xenpv_config() vpsops.create_vps(xv) except Exception, e: logger.exception(e) raise e
def vps_open(self, vps, vps_image=None, is_new=True): self.logger.info("to open vps %s" % (vps.id)) if vps.host_id != self.host_id: msg = "vpsopen : vps %s host_id=%s != current host %s , abort" % ( vps.id, vps.host_id, self.host_id) self.logger.error(msg) self.done_task(Cmd.OPEN, vps.id, False, msg) return if not vps.ipv4 or not vps.ipv4_gateway or vps.cpu <= 0 or vps.ram <= 0 or vps.hd <= 0 or not vps.password: self.logger.error("vps open: invalid vps data received: %s" % (self.dump_vps_info(vps))) self.done_task(Cmd.OPEN, vps.id, False, "invalid vps data") return xv = XenVPS(vps.id) vpsops = VPSOps(self.logger) try: self.setup_vps(xv, vps) if xv.is_running(): msg = "vps %s is running" % (vps.id) self.logger_err.error(msg) self.done_task(Cmd.OPEN, vps.id, False, msg) return if vps.state in [vps_const.VPS_STATE_PAY, vps_const.VPS_STATE_RUN]: vpsops.create_vps(xv, vps_image, is_new) elif vps.state == vps_const.VPS_STATE_CLOSE: vpsops.reopen_vps(vps.id, xv) else: msg = "vps%s state is %s(%s)" % (str( vps.id), vps.state, vps_const.VPS_STATE2CN[vps.state]) self.logger_err.error(msg) self.done_task(Cmd.OPEN, vps.id, False, msg) return except Exception, e: self.logger_err.exception("for %s: %s" % (str(vps.id), str(e))) self.done_task(Cmd.OPEN, vps.id, False, "error, " + str(e)) return