zoukankan      html  css  js  c++  java
  • CentOS7之KVM虚拟化(一)

    一、KVM介绍

    KVM,基于内核的虚拟机(英语:Kernel-based Virtual Machine,缩写为 KVM),

    是一种用于Linux内核中的虚拟化基础设施,可以将Linux内核转化为一个hypervisor。

    KVM在2007年2月被导入Linux 2.6.20核心中,以可加载核心模块的方式被移植到FreeBSD及illumos上。

    KVM在具备Intel VT或AMD-V功能的x86平台上运行。它也被移植到S/390,PowerPC与IA-64平台上。在Linux内核3.9版中,加入ARM架构的支持。

    KVM目前由Red Hat等厂商开发,对CentOS/Fedora/RHEL等Red Hat系发行版支持极佳。

    二、KVM部署及使用

    1.系统环境查询

    [root@localhost ~]# cat /etc/redhat-release
    CentOS Linux release 7.5.1804 (Core) 
    [root@localhost ~]# uname -r
    3.10.0-862.el7.x86_64
    [root@localhost ~]# sestatus
    SELinux status:                 enabled
    SELinuxfs mount:                /sys/fs/selinux
    SELinux root directory:         /etc/selinux
    Loaded policy name:             targeted
    Current mode:                   permissive
    Mode from config file:          enforcing
    Policy MLS status:              enabled
    Policy deny_unknown status:     allowed
    Max kernel policy version:      31
    [root@localhost ~]# systemctl status firewalld.service
    ● firewalld.service - firewalld - dynamic firewall daemon
       Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
       Active: inactive (dead)
         Docs: man:firewalld(1)
    
    8月 12 17:42:59 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
    8月 12 17:42:59 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
    8月 12 18:01:18 localhost.localdomain systemd[1]: Stopping firewalld - dynamic firewall daemon...
    8月 12 18:01:19 localhost.localdomain systemd[1]: Stopped firewalld - dynamic firewall daemon.
    [root@localhost ~]# hostname -I
    192.168.137.103 192.168.122.1

    验证CPU是否支持虚拟化,输入有vmx或svm就支持,支持虚拟化则就支持KVM
    [root@
    localhost ~]# cat /proc/cpuinfo | egrep 'vmx|svm'
    有vmx或svm内容输出就支持,支持虚拟化则就支持KVM

    查看是否加载KVM

     [root@promote images]# lsmod | grep kvm

     kvm_intel 174841 0
     kvm 578518 1 kvm_intel
     irqbypass 13503 1 kvm


     已经加载,如果没有加载,则执行以下命令,加载KVM

     [root@localhost ~]#modprobe kvm

     

    2.安装KVM虚拟化软件

    安装依赖包(使用本地yum源)

    # yum install libvirt* virt-* qemu-kvm* -y

    说明:

    libvirt    # 虚拟机管理
    virt       # 虚拟机安装克隆
    qemu-kvm   # 管理虚拟机磁盘

    启动KVM

    # systemctl start libvirtd.service
    # systemctl status libvirtd.servic

    2.安装第一台KVM虚机

    [root@localhost ~]# virt-install 
    --virt-type kvm
    --os-type=linux
    --os-variant rhel7
    --name centos7
    --memory 1024
    --vcpus 1
    --disk (虚拟硬盘绝对路径),format=raw,size=10
    --cdrom (iso镜像文件绝对路径)
    --network network=default
    --noautoconsole

    注意:需要先将镜像文件拷贝到 设置的路径下

    参数说明

    参数

    参数说明

    --virt-type HV_TYPE

    要使用的管理程序名称 (kvm, qemu, xen, ...)

    --os-type

    系统类型

    --os-variant DISTRO_VARIANT

    在客户机上安装的操作系统,例如:'fedora18'、'rhel6'、'winxp' 等。

    -n NAME, --name NAME

    客户机实例名称

    --memory MEMORY

    配置客户机虚拟内存大小

    --vcpus VCPUS

    配置客户机虚拟 CPU(vcpu) 数量。

    --disk DISK

    指定存储的各种选项。

    -cdrom CDROM   

    光驱安装介质

    -w NETWORK, --network NETWORK

    配置客户机网络接口。

    --graphics GRAPHICS

    配置客户机显示设置。

    虚拟化平台选项:

    -v, --hvm         

    这个客户机应该是一个全虚拟化客户机

    -p, --paravirt    

    这个客户机应该是一个半虚拟化客户机

    --container       

    这个客户机应该是一个容器客户机

    --virt-type HV_TYPE

    要使用的管理程序名称 (kvm, qemu, xen, ...)

    --arch ARCH       

    模拟 CPU 架构

    --machine MACHINE

    机器类型为仿真类型

    其它选项:

    --noautoconsole

    不要自动尝试连接到客户端控制台

    --autostart

    主机启动时自动启动域。

    --noreboot 

    安装完成后不启动客户机。

    3.KVM虚机管理

    virsh命令常用参数总结

    参数

    参数说明

    基础操作

    list

    查看虚拟机列表,列出域

    start

    启动虚拟机,开始一个(以前定义的)非活跃的域

    shutdown

    关闭虚拟机,关闭一个域

    destroy(危险)

    强制关闭虚拟机,销毁(停止)域

    vncdisplay

    查询虚拟机vnc端口号

    配置管理操作

    dumpxml

    导出主机配置信息

    undefine

    删除主机

    define

    导入主机配置

    domrename

    对虚拟机进行重命名

    挂起与恢复

    suspend

    挂起虚拟机

    resume

    恢复虚拟机

    自启动管理

    autostart

    虚拟机开机启动

    autostart --disable

    取消虚拟机开机启动

    以上参数通过  “virsh  --help” 获得。

    查看虚拟机配置文件

    [root@localhost ~]# cat /etc/libvirt/qemu/test01.xml

    修改KVM虚拟机配置的方法

    [root@localhost ~]# virsh edit test01    (使用该命令修改可以对文件进行语法校验)
  • 相关阅读:
    【第五周读书笔记】我是一只IT小小鸟
    【第三周读书笔记】浅谈node.js中的异步回调和用jsxlsx操作Excel表格
    【第四周读书笔记】读构建之法第11到第16章
    【第一次个人作业】一条咸鱼的词频统计
    win10连接无线网,开启移动热点,手机连接它手机一直显示获取ip地址中。
    每月一次,免费领取小米云服务会员
    Spring Day 1
    oracle闪回查询和闪回数据库
    oracle异库同表名的两个数据库中数据合并或数据表结构的修改
    oracle使用SQL来生成SQL
  • 原文地址:https://www.cnblogs.com/JiaoTou/p/11341815.html
Copyright © 2011-2022 走看看