class ComputeDriver(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = "cinder_api" self.timeout = 5 # 同restapi_define的context、parameters一致 def create_osdisk(self, context, parameters): ''' :param context: dict :param parameters: dict: {size=int, name=string, v_type=string, description=string, snapshot_uuid=string, source_volume_uuid=string image_uuid=string} :return: ''' try: rpc_body = rpc_data("osdisk_cre", context, parameters) return self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) except Exception, e: log.error('Rpc client exec error, reason=%s' % e) return request_result(598)
class CertifyRpcClient(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = conf.call_queue self.timeout = 60 def create_certify(self, context, parameters=None): try: rpc_body = rpc_data("certify_cre", context, parameters) return self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) except Exception, e: log.error('Rpc client exec error, reason=%s' % e) return request_result(598)
class AdminServiceRpcClient(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = conf.call_queue self.timeout = 60 def get_all_services(self, context, parameters=None): try: rpc_body = rpc_data("admin_services_get", context, parameters) return self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) except Exception, e: log.error('Rpc client exec error, reason=%s' % e) return request_result(598)
class KubernetesRpc(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = conf.queue1 self.queue2 = conf.queue2 self.timeout = 30 def delete_namespace(self, context, parameters=None): try: rpc_body = rpc_data('del_ns', context, parameters) return self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) except Exception, e: log.error('Rpc client exec error, reason=%s' % e) return request_result(503)
class KubernetesRpcClient(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = conf.call_queue self.timeout = 60 def create_services(self, context, parameters=None): try: rpc_body = rpc_data("svc_cre", context, parameters) log.info('rpc client to server data is : %s' % rpc_body) return self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) except Exception, e: log.error('Rpc client exec error, reason=%s' % e) return request_result(598)
class BillingRpcApi(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = conf.billing_call_queue self.timeout = 60 def level_init(self, context, parameters=None): try: rpc_body = rpc_data("bil_lvl_lvl_ini", context, parameters) return self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) except Exception, e: log.error('Rpc client exec error, reason=%s' % (e)) return request_result(598)
class UcenterRpcApi(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = conf.ucenter_call_queue self.timeout = 60 def user_create(self, context, parameters=None): try: rpc_body = rpc_data("uct_usr_usr_crt", context, parameters) return self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) except Exception, e: log.error('Rpc client exec error, reason=%s' % (e)) return request_result(598)
class CertifyRpcClient(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = 'kubernetes_api' self.timeout = 8 def create_certify(self, context, parameters=None): try: rpc_body = rpc_data('secret_cre', context, parameters) ret = self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) log.info('create the https secret result is: %s' % ret) return ret except Exception, e: log.error('Rpc client exec error when create the certufy secret...reason is: %s' % e)
class MonitorRpcClient(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = 'monitorcall_monitor' self.queue1 = 'monitorcall_broad' self.timeout = 8 def monitor_message_get(self, context, parameters=None): log.info('in rpc api data is:%s' % context) try: rpc_body = rpc_data('mon_get', context, parameters) return self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) except Exception, e: log.error('Rpc client exec error, reason=%s' % e) return request_result(701)
class KubernetesRpcClient(object): def __init__(self): self.rbtmq = RabbitmqClient() self.queue = 'kubernetes_api' self.timeout = 5 def get_pod_messages(self, context, parameters=None): try: rpc_body = rpc_data('pods_get', context, parameters) ret = self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) return ret except Exception, e: log.error( 'Rpc client exec error when delete rc and service...,reason=%s' % e)
class ComputeDriver(object): def __init__(self): self.local_ip = socket.gethostbyname(socket.gethostname()) self.rbtmq = RabbitmqClient() self.queue = "cinder_api" self.timeout = 5 # # 暂时忽略 # def create_osdisk(self, context, parameters): # """ # :param context: dict # :param name: string # :param description: description, # # :return: # """ # try: # rpc_body = rpc_data("osdisk_cre", context, parameters) # # return self.rbtmq.rpc_call_client(self.queue, # self.timeout, # rpc_body) # except Exception, e: # log.error('Rpc client exec error, reason=%s' % e) # return request_result(598) def clouddisk_create(self, token, volume_name, volume_size, volume_type='lvm', description=None, snapshot_uuid=None, source_volume_uuid=None): """ :param : 'token':string, 'source_ip':source_ip :param : size=int, :param : name=string, :param : v_type=string, :param : description=string, :param : snapshot_uuid=string, :param : source_volume_uuid=string} :return: """ context = context_data(token, 'vol_vol_pro_com', 'create', self.local_ip) parameters = { 'size': volume_size, 'name': volume_name, 'v_type': volume_type, 'description': description, 'snapshot_uuid': snapshot_uuid, 'source_volume_uuid': source_volume_uuid } try: rpc_body = rpc_data("clouddisk_cre", context, parameters) result = self.rbtmq.rpc_call_client(self.queue, self.timeout, rpc_body) except Exception, e: log.error('Rpc client exec error, reason=%s' % e) raise Exception(e) if result.get('status') != 0: log.error('create volume error, result status is not 0') raise Exception('create volume status is not 0') else: return result