コード例 #1
0
ファイル: host.py プロジェクト: OpenVZ/vcmmd
 def _mem_size_from_config(self, name, mem_total, default):
     cfg = VCMMDConfig()
     share = cfg.get_num('Host.%s.Share' % name,
                         default=default[0], minimum=0.0, maximum=1.0)
     min_ = cfg.get_num('Host.%s.Min' % name,
                        default=default[1], integer=True, minimum=0)
     max_ = cfg.get_num('Host.%s.Max' % name,
                        default=default[2], integer=True, minimum=0)
     return clamp(int(mem_total * share), min_, max_)
コード例 #2
0
ファイル: base.py プロジェクト: OpenVZ/vcmmd
    def __init__(self):
        self.logger = logging.getLogger('vcmmd.ldmgr')

        self._registered_ves = {}  # str -> VE
        self._registered_ves_lock = threading.Lock()

        self._host = Host()

        cfg = VCMMDConfig()

        thn = cfg.get_num('LoadManager.ThreadsNum', 5)

        self._req_queue = RQueue(maxsize=25)
        self._workers = [threading.Thread(target=self._worker_thread_fn) for _ in range(thn)]
        [w.start() for w in self._workers]

        # Load a policy
        policy_name = cfg.get_str('LoadManager.Policy', self.FALLBACK_POLICY)
        policy_name = self._load_alias(policy_name)
        self._load_policy(policy_name)