kvm实践

作者: Freestyle_0f85 | 来源:发表于2020-01-08 10:16 被阅读0次

    esxi安装部署

    参考文档

    kvm虚拟机迁移到esxi上

    直接使用qemu-img convert 转换为vmdk镜像是无法从ESXI中启动的.

    首先使用qemu-img 转换镜像为vmdk.

    qemu-img convert -f qcow2 oldimage.qcow2 -O vmdk newimage.vmdk
    

    将该镜像上传至Vmware存储.使用vmkfstools重制镜像

     vmkfstools -i oldimage.vmdk newimage.vmdk -d thin
    

    kvm图形化管理工具部署

    1.初始化
    rm -rf /etc/yum.repos.d/*
    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    
    2.安装python依赖
    yum -y install git python-pip libvirt-python libxml2-python python-websockify supervisor gcc python-devel
    python -m pip install --upgrade --force pip -i https://pypi.tuna.tsinghua.edu.cn/simple
    pip install setuptools==33.1.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
    pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple
    
    
    3.安装python的Django环境
    cd /opt/
    git clone git://github.com/retspen/webvirtmgr.git
    cd webvirtmgr
    pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
    ./manage.py syncdb
    ./manage.py collectstatic
    
    4.安装Nginx
    cat>/etc/yum.repos.d/nginx.repo<<EOF
    [nginx-stable]
    name=nginx stable repo
    baseurl=http://nginx.org/packages/centos/\$releasever/\$basearch/
    gpgcheck=1
    enabled=1
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    
    [nginx-mainline]
    name=nginx mainline repo
    baseurl=http://nginx.org/packages/mainline/centos/\$releasever/\$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    EOF
    yum makecache fast
    yum install nginx -y
    yum clean all 
    
    5.配置Nginx和代码
    mkdir /code
    mv /opt/webvirtmgr /code/
    chown -R nginx:nginx /code
    rm -rf /etc/nginx/conf.d/default.conf
    cat >/etc/nginx/conf.d/webvirtmgr.conf<<EOF
    server {
        listen 80 default_server;
    
        server_name localhost;
        access_log /var/log/nginx/webvirtmgr_access_log; 
    
        location /static/ {
            root /code/webvirtmgr;        
            expires max;
        }
        location / {
            proxy_pass http://127.0.0.1:8000;
            proxy_set_header X-Real-IP \$remote_addr;
            proxy_set_header X-Forwarded-for \$proxy_add_x_forwarded_for;
            proxy_set_header Host \$host:\$server_port;
            proxy_set_header X-Forwarded-Proto \$scheme;
            proxy_connect_timeout 600;
            proxy_read_timeout 600;
            proxy_send_timeout 600;
            client_max_body_size 1024M; 
        }
    }
    EOF
    nginx -t
    nginx
    netstat -lntup|grep 80
    
    6.配置Supervisor
    cat >/etc/supervisord.d/webvirtmgr.ini<<EOF
    [program:webvirtmgr]
    command=/usr/bin/python /code/webvirtmgr/manage.py run_gunicorn -c /code/webvirtmgr/conf/gunicorn.conf.py
    directory=/code/webvirtmgr
    autostart=true
    autorestart=true
    logfile=/var/log/supervisor/webvirtmgr.log
    log_stderr=true
    user=nginx
    
    [program:webvirtmgr-console]
    command=/usr/bin/python /code/webvirtmgr/console/webvirtmgr-console
    directory=/code/webvirtmgr
    autostart=true
    autorestart=true
    stdout_logfile=/var/log/supervisor/webvirtmgr-console.log
    redirect_stderr=true
    user=nginx
    
    [program:nginx]
    command=nginx -g 'daemon off;'
    autostart=true
    autorestart=true
    stdout_logfile=/var/log/supervisor/nginx.log
    redirect_stderr=true
    EOF
    sed -i "s#nodaemon=false#nodaemon=true#g" /etc/supervisord.conf
    supervisord -c /etc/supervisord.conf
    重新打开一个终端
    supervisorctl status
    
    7.创建用户
    mkdir /var/cache/nginx/.ssh/ -p
    chown -R nginx:nginx /var/cache/nginx/
    su - nginx -s /bin/bash
    ssh-keygen
    touch ~/.ssh/config && echo -e "StrictHostKeyChecking=no\nUserKnownHostsFile=/dev/null" >> ~/.ssh/config
    chmod 0600 ~/.ssh/config
    ssh-copy-id root@10.0.0.113(需要管理的kvm机器的ip地址)
    
    image.png image.png image.png image.png

    这样就部署成功了

    相关文章

      网友评论

          本文标题:kvm实践

          本文链接:https://www.haomeiwen.com/subject/oupjactx.html