示例#1
0
文件: servers.py 项目: tpot/dwarf
    def reboot(self, server_id, hard=False):
        """
        Reboot a server
        """
        LOG.info('reboot(server_id=%s, hard=%s)', server_id, hard)

        server = DB.servers.show(id=server_id)

        _delete_ec2metadata_route(server['ip'], CONF.ec2_metadata_port)
        VIRT.delete_server(server)
        VIRT.boot_server(server)
        _add_ec2metadata_route(server['ip'], CONF.ec2_metadata_port)
示例#2
0
文件: servers.py 项目: tpot/dwarf
    def delete(self, server_id):
        """
        Delete a server
        """
        LOG.info('delete(server_id=%s)', server_id)

        server = DB.servers.show(id=server_id)

        # Stop all running tasks associated with this server
        task.stop(server_id)

        # Delete the iptables route for the Ec2 metadata service
        _delete_ec2metadata_route(server['ip'], CONF.ec2_metadata_port)

        # Kill the running server
        VIRT.delete_server(server)

        # Purge all server files
        basepath = os.path.join(CONF.instances_dir, server_id)
        if os.path.exists(basepath):
            shutil.rmtree(basepath)

        # Delete the database entry
        DB.servers.delete(id=server['id'])