Пример #1
0
def main():
    loc = lm.LocationMapping()
    m = loc.mapping
    dsu = loc.dsu_list
    keys = sorted(m.keys())
    print dsu
    for k in keys:
        _, o = execute('blockdev --getsz /dev/%s' % m[k])
        print '%s: %s %s' % (k, m[k], Sector(o).fit())
Пример #2
0
def main():
    log.info('start to dd all devs')
    mapping = lm.LocationMapping().mapping
    pool = mp.Pool(processes=len(mapping.keys()))
    for dev in mapping.values():
        pool.apply_async(dd_dev, (dev,))
    pool.close()
    pool.join()
    log.info('complete to dd all devs')
Пример #3
0
def main():
    m = lm.LocationMapping()
    for loc, dev in m.mapping.items():
        print 'init disk %s' % dev
        os.system('dd if=/dev/zero of=/dev/%s bs=1M count=12 oflag=direct' %
                  dev)
        os.system('sync')

    os.system('mysql -uroot -ppasswd < preinit/create_db.sql')
    os.system('mysql -uroot  < preinit/create_db.sql')
Пример #4
0
def main():
    m = lm.LocationMapping()
    for loc, dev in m.mapping.items():
        try:
            disk = adm.Disk(dev_name=dev)
            disk.remove_dev()
        except:
            pass

        print 'init disk %s' % dev
        os.system('dd if=/dev/zero of=/dev/%s bs=1M count=16 oflag=direct' %
                  dev)

    db.drop_data()
Пример #5
0
    def handle_zero_disks(self, _=None):
        self.handle_stop_zero()

        mapping = lm.LocationMapping().mapping
        for dev_name in mapping.values():
            try:
                disk = adm.Disk.lookup(dev_name=dev_name)
            except:
                continue
            if disk.online:
                zp = ZeroProcess(disk)
                self.zerop[disk.location] = zp
                zp.prepare()

        for zp in self.zerop.values():
            zp.start()
Пример #6
0
def main():
    optmap = dict(getopt.getopt(sys.argv[1:], 's:w:')[0])
    try:
        sleep_sec = float(optmap['-s'])
    except:
        sleep_sec = DEFAULT_SLEEP_SEC
    try:
        tpw = Unit(optmap['-w'])
    except:
        tpw = DEFAULT_TOTAL_PER_WRITE

    log.info('zero disk, sleep second: %s, total_per_write: %s' % (sleep_sec, tpw))
    cmd = "ps aux | grep 'python zero_disk.py'"
    _,o = execute(cmd, False)
    pids = re.findall('\w+?\s+(\d+).+\n', o)
    for pid in pids:
        if int(pid) <> os.getpid():
            cmd = 'kill %s' % pid
            execute(cmd, False)

    cmd = "ps aux | grep 'dd if=/dev/zero of=/dev/sd'"
    _,o = execute(cmd, False)
    pids = re.findall('\w+?\s+(\d+).+\n', o)
    for pid in pids:
        cmd = 'kill %s' % pid
        execute(cmd, False)

    Disk.delete().execute()

    mapping = lm.LocationMapping().mapping
    pool = mp.Pool(processes=len(mapping.keys()))
    for _,dev_name in mapping.items():
        try:
            disk = adm.Disk.lookup(dev_name=dev_name)
        except:
            continue
        if disk.online:
            pool.apply_async(zero_disk, (disk, dev_name, tpw, sleep_sec))
    pool.close()
    pool.join()
Пример #7
0
def main():
    m = lm.LocationMapping()
    for loc, dev in m.mapping.items():
        disk = adm.Disk(dev_name=dev)
        disk.remove_dev()