Пример #1
0
    def __init__(self):
        self.db = Db_Connector()
        # Using boto ec2 library to get info about running vms in an EC2 compatible environment
        region = boto.ec2.regioninfo.RegionInfo(
            name=cluster_config.INFRA,
            endpoint=cluster_config.IP_CLOUD_CONTROLLER)
        self.connection = boto.connect_ec2(
            aws_access_key_id=cluster_config.AWS_ACCESS_KEY_ID,
            aws_secret_access_key=cluster_config.AWS_SECRET_ACCESS_KEY,
            is_secure=False,
            region=region,
            port=cluster_config.EC2_INTERFACE_PORT_ON_CLOUD_CONTROLLER,
            path=cluster_config.PATH_TO_EC2_SERVICE)
        self.nodes = self.grepNodes()
        #Set up logging
        logging.basicConfig(
            level=logging.DEBUG,
            format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',
            datefmt='%m-%d %H:%M',
            filename=cluster_config.PATH_TO_LOG_FILE)

        while True:
            vms = self.get_running_vms()
            #self.mark_terminated_vms(vms)
            self.store_vms_info(vms)
            self.mark_terminated_vms(vms)
            # Checks if any running vm has missing information (node placement, for example)
            self.update_vms_info()
            time.sleep(60)
Пример #2
0
 def __init__(self):
     self.db = Db_Connector()