예제 #1
0
 def __init__(self, etcdaddr, cluster_name, host, test=False):
     threading.Thread.__init__(self)
     self.host = host
     self.thread_stop = False
     self.etcdser = etcdlib.Client(
         etcdaddr, "/%s/monitor/hosts/%s" % (cluster_name, host))
     self.interval = 1
     self.test = test
     return
예제 #2
0
 def __init__(self, etcdaddr, cluster_name, host, test=False):
     threading.Thread.__init__(self)
     self.thread_stop = False
     self.host = host
     self.etcdser = etcdlib.Client(etcdaddr, "/%s/monitor" % (cluster_name))
     self.interval = 2
     self.test = test
     self.cpu_last = {}
     self.cpu_quota = {}
     self.mem_quota = {}
     self.cores_num = int(
         subprocess.getoutput("grep processor /proc/cpuinfo | wc -l"))
     return
예제 #3
0
파일: monitor.py 프로젝트: SourceZh/Docklet
 def __init__(self,
              etcdaddr,
              cluster_name,
              host,
              cpu_quota,
              mem_quota,
              test=False):
     threading.Thread.__init__(self)
     self.thread_stop = False
     self.host = host
     self.etcdser = etcdlib.Client(etcdaddr, "/%s/monitor" % (cluster_name))
     self.etcdser.setkey('/vnodes/cpu_quota', cpu_quota)
     self.etcdser.setkey('/vnodes/mem_quota', mem_quota)
     self.cpu_quota = float(cpu_quota) / 100000.0
     self.mem_quota = float(mem_quota) * 1000000 / 1024
     self.interval = 2
     self.test = test
     return
예제 #4
0
    clustername = env.getenv("CLUSTER_NAME")
    logger.info("using CLUSTER_NAME %s" % clustername)

    # get network interface
    net_dev = env.getenv("NETWORK_DEVICE")
    logger.info("using NETWORK_DEVICE %s" % net_dev)

    ipaddr = network.getip(net_dev)
    if ipaddr is False:
        logger.error("network device is not correct")
        sys.exit(1)
    else:
        logger.info("using ipaddr %s" % ipaddr)
    # init etcdlib client
    try:
        etcdclient = etcdlib.Client(etcdaddr, prefix=clustername)
    except Exception:
        logger.error("connect etcd failed, maybe etcd address not correct...")
        sys.exit(1)
    else:
        logger.info("etcd connected")

    cpu_quota = env.getenv('CONTAINER_CPU')
    logger.info("using CONTAINER_CPU %s" % cpu_quota)

    mem_quota = env.getenv('CONTAINER_MEMORY')
    logger.info("using CONTAINER_MEMORY %s" % mem_quota)

    worker_port = env.getenv('WORKER_PORT')
    logger.info("using WORKER_PORT %s" % worker_port)
예제 #5
0
 def __init__(self, etcdaddr, cluster_name, host):
     self.etcdser = etcdlib.Client(
         etcdaddr, "/%s/monitor/hosts/%s" % (cluster_name, host))
     return
예제 #6
0
 def __init__(self, etcdaddr, cluster_name):
     self.etcdser = etcdlib.Client(etcdaddr,
                                   "/%s/monitor/vnodes" % (cluster_name))
     return