kvm 订阅
KVM,是Keyboard Video Mouse的缩写,KVM 通过直接连接键盘、视频和鼠标 (KVM) 端口,能够访问和控制计算机。KVM 技术无需目标服务器修改软件。这就意味着可以在BIOS环境下,随时访问目标计算机。KVM 提供真正的主板级别访问,并支持多平台服务器和串行设备。KVM 技术已经从最初的基础SOHO办公型,发展成为企业 IT 基础机房设施管理系统。可以从kvm 客户端管理软件轻松的直接访问位于多个远程位置的服务器和设备。KVM over IP 解决方案具备完善的多地点故障转移功能、符合新服务器管理标准 (IPMI) 的直接界面,以及将本地存储媒体映射至远程位置的功能。 展开全文
KVM,是Keyboard Video Mouse的缩写,KVM 通过直接连接键盘、视频和鼠标 (KVM) 端口,能够访问和控制计算机。KVM 技术无需目标服务器修改软件。这就意味着可以在BIOS环境下,随时访问目标计算机。KVM 提供真正的主板级别访问,并支持多平台服务器和串行设备。KVM 技术已经从最初的基础SOHO办公型,发展成为企业 IT 基础机房设施管理系统。可以从kvm 客户端管理软件轻松的直接访问位于多个远程位置的服务器和设备。KVM over IP 解决方案具备完善的多地点故障转移功能、符合新服务器管理标准 (IPMI) 的直接界面,以及将本地存储媒体映射至远程位置的功能。
信息
简    写
KVM
优    点
支持多平台服务器和串行设备
外文名
Keyboard Video Mouse
地    位
网络中的管理设备
中文名
键盘、视频和鼠标
功    能
支持串口overIP远程调试串口设备
学    科
计算机
KVM简介
KVM代表着键盘(Keyboard)、显示器(Video)和鼠标(Mouse),即利用一组键盘、显示器和鼠标实现对多台设备的控制,在远程调度监控方面发挥着重要作用。KVM技术可以向远程终端发送调度信息网中的各项数据资料,为下一级调度机构提供方便,这样即便下级调度机构没有建立调度数据网,也能够实现信息的共享。多计算机切换器(KVM)以多主机切换技术为依据,借助一组键盘、鼠标和显示器完成多台服务器之间的切换,进而节省空间,降低成本,使得管理更为简易方便,以提升工作效率。该技术具有很多优点,应用十分广泛。首先,在整个机房管理中,改变了传统的一对一的控制方式,而采用了一对多的管理方式,有利于节省空间、提高工作效率;其次,主机系统的安全性能得到了很大提升,而且具备了长距离的传输能力,在与远程用户相连接时,安全性能得到良好的保证;在服务器较多的情况下,通过数字交换机与其他服务器相连,并能与远程相连,可同时对本地和远程进行控制。在一些大型系统的解决方案中,可使用具有模拟交换机矩阵功能的大型模块系统,能够满足终端用户同时对上百台甚至更多服务器的访问,进而实现从中心点通过KVM系统对各地的服务器进行有效控制。此外,该技术也可以在家庭中用,为普通用户提供了很多方便。 [1] 
收起全文
精华内容
参与话题
问答
  • KVM

    万次阅读 多人点赞 2019-05-21 20:22:30
    kvm虚拟化管理软件的安装安装一台kvm虚拟机kvm虚拟机的virsh日常管理和配置kvm虚拟机开机启动和console 控制台 登录kvm虚拟机虚拟磁盘格式转换和快照管理kvm虚拟机克隆 宿主机:内存4G+ 纯净的系统CentOS-7 什么是...


    宿主机:内存4G+ 纯净的系统CentOS-7

    什么是虚拟化?

    虚拟化,通过模拟计算机的硬件,来实现在同一台计算机上同时运行多个不同的操作系统的技术。

    为什么要用虚拟化?

    阿里云 kvm开源
    azure
    vmware ESXI商业软件
    没有虚拟化之前:
    计算机的硬件配置越来越高
    512G 内存,4路 8核16线程 ,12* PCI-E 1T的SSD;
    ntp服务,安装多个mysql,安装多个tomcat,安装…
    linux开源的,很多软件都有依赖包openssl nginx
    充分利用资源,软件运行环境的隔离,只有虚拟化才行实现。
    场景1:同一台物理机运行多个php版本 php5.3(openssl,gd) php5.5 php7.2
    场景2:机房的迁移,解决了硬件和系统的依赖
    场景3:openstack环境,软件发布方式
    场景4:开发环境和测试环境,使用虚拟化
    只靠一台物理服务器,30台虚拟机
    产品 – 开发 – 运维 – 测试
    so结尾,linux 库文件
    场景5:业务的快速部署
    从头安装系统,安装服务,配置
    克隆虚拟机,改ip,
    虚拟化:提高了资源的利用率,各个服务的安全性隔离,解决了系统和硬件之间的依赖

    kvm虚拟化管理软件的安装

    yum install libvirt virt-install qemu-kvm -y
    
    KVM:         Kernel-based Virtual Machine  
    libvirt       作用: 虚拟机的管理软件
    libvirt:      kvm,xen,qemu,lxc....
    virt          virt-install virt-clone   作用:虚拟机的安装工具和克隆工具
    qemu-kvm      qemu-img (qcow2,raw)作用:管理虚拟机的虚拟磁盘
    

    虚拟化软件:

    qemu           软件纯模拟全虚拟化软件,特别慢!AIX,兼容性好!
    xen(半)        性能特别好,需要使用专门修改之后的内核,兼容性差!  redhat 5.5  xen
    KVM(linux)   全虚拟机,它有硬件支持cpu,基于内核,而且不需要使用专门的内核   centos6 kvm 性能较好,兼容较好
    

    安装一台kvm虚拟机

    需要用到 TightVNC或者VNC Viewer 4.exe
    宿主机
    vnc:远程的桌面管理工具
    向日葵

    systemctl start libvirtd.service
    systemctl status libvirtd.service
    

    10.0.0.11 宿主机
    建议虚拟机内存不要低于1024M,否则安装系统特别慢!

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /opt/centos2.raw,format=raw,size=10 --cdrom /opt/CentOS-7-x86_64-DVD-1708.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    

    vnc-service:5900
    vnc:10.0.0.11:5900

    –virt-type kvm 虚拟化的类型(qemu)
    –os-type=linux 系统类型
    –os-variant rhel7 系统版本
    –name centos7 虚拟机的名字
    –memory 1024 虚拟机的内存
    –vcpus 1 虚拟cpu的核数
    –disk /opt/centos2.raw,format=raw,size=10
    –cdrom /opt/CentOS-7-x86_64-DVD-1708.iso
    –network network=default 使用默认NAT的网络
    –graphics vnc,listen=0.0.0.0
    –noautoconsole
    raw:10G 不支持做快照,性能好
    qcow2: 支持快照

    kvm虚拟机的virsh日常管理和配置

    列表               list(--all)
    开机               start
    关机               shutdown
    拔电源关机          destroy
    导出配置            dumpxml  例子:virsh dumpxml centos7 >centos7-off.xml
    删除               undefine  推荐:先destroy,在undefine
    导入配置            define   
    修改配置            edit(自带语法检查)
    重命名             domrename (低版本不支持)
    挂起               suspend
    恢复               resume
    查询vnc端口号       vncdisplay
    

    kvm虚拟机开机启动和console 控制台 登录

    kvm运行业务程序
    开机启动autostart,前提:systemctl enable libvirtd;
    取消开机启动 autostart --disable

    centos7的kvm虚拟机:

    grubby --update-kernel=ALL --args="console=ttyS0,115200n8"
    reboot
    

    kvm虚拟机虚拟磁盘格式转换和快照管理

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /opt/centos2.raw,format=raw,size=10 --cdrom /opt/CentOS-7-x86_64-DVD-1708.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /data/oldboy.qcow2,format=qcow2,size=10 --cdrom /data/CentOS-7.2-x86_64-DVD-1511.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    
    

    raw: 裸格式,占用空间比较大,不支持快照功能,性能较好,不方便传输 总50G 占用2G
    qcow2: cow (copy on write)占用空间小,支持快照,性能比raw差一点,方便传输 总50G 占用2G

    qcow
    qemu-img info  test.qcow2
    创建一块qcow2格式的虚拟硬盘:qemu-img create -f qcow2 test.qcow2 2G
    
    raw转qcow2:qemu-img convert -f raw     -O qcow2           oldboy.raw   oldboy.qcow2
                         convert [-f fmt]   [-O output_fmt]    filename     output_filename
                         
    
    virsh edit web01:					 
    <disk type='file' device='disk'>
          <driver name='qemu' type='qcow2'/>
          <source file='/opt/centos.qcow2'/>
          <target dev='vda' bus='virtio'/>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </disk>
    
    virsh destroy web01
    virsh start web01					
    
    创建快照      virsh snapshot-create centos7
    查看快照      virsh snapshot-list centos7
    还原快照      virsh snapshot-revert centos7 --snapshotname 1516574134
    删除快照      virsh snapshot-delete centos7 --snapshotname 1516636570
    raw不支持做快照,qcow2支持快照,并且快照就保存在qcow2的磁盘文件中
    

    kvm虚拟机克隆

    完整克隆

    virt-clone --auto-clone -o web01 -n web02 (完整克隆)  
    

    a:生成虚拟机磁盘文件

    qemu-img create -f qcow2 -b 49-web03.qcow2 49-web04.qcow2
    

    b:生成虚拟机的配置文件

      <name>49-web03</name>
      <uuid>8e505e25-5175-46ab-a9f6-feaa096daaa4</uuid>
      <source file='/opt/49-web03.qcow2'/>
      <mac address='52:54:00:4e:5b:89'/>
      
    

    c:导入虚拟机并进行启动测试

    kvm链接克隆

    a.基于源磁盘文件,创建链接磁盘文件

    qemu-img create -f qcow2 -b 49-web03.qcow2 49-web04.qcow2
    

    后置备
    b:生成虚拟机的配置文件
    c:导入虚拟机并进行启动测试

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 1024 --vcpus 1 --disk /opt/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
    

    kvm虚拟机的桥接网络

    默认的虚拟机网络是NAT模式,网段192.168.122.0/24

    默认NAT模式

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 1024 --vcpus 1 --disk /opt/web04.qcow2 --boot hd --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    

    桥接模式

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 1024 --vcpus 1 --disk /data/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
    

    1:创建桥接网卡

    virsh iface-bridge eth0 br0
    

    取消桥接网卡

    virsh iface-unbridge br0
    

    2:修改xml

    virsh edit centos7
        <interface type='bridge'>
          <mac address='52:54:00:55:aa:fa'/>
          <source bridge='br0'/>
    

    在宿主机上,重启虚拟机生效
    3:测试虚拟机网络

    热添加技术

    kvm虚拟机在线热添加硬盘

    1.创建一块硬盘

    qemu-img create -f qcow2 add01.qcow2 5G
    

    2.添加硬盘

    
    临时
    virsh attach-disk centos7 /data/centos7-add01.qcow2 vdb  --subdriver=qcow2
    永久
    virsh attach-disk centos7 /data/centos7-add01.qcow2 vdb  --subdriver=qcow2  --config
    

    删除硬盘
    virsh detach-disk centos7 vdb

    虚拟机磁盘扩容:

    在kvm虚拟机,卸载

    virsh detach-disk centos7 vdb
    qemu-img resize /data/centos7-add01.qcow2 +5G
    virsh attach-disk centos7 /data/centos7-add01.qcow2 vdb --live --cache=none --subdriver=qcow2
    

    在虚拟机中:

    xfs_growfs /dev/vdb
    

    根分区扩容:
    1)在宿主机上关闭虚拟机并调整虚拟机磁盘大小

    qemu-img resize oldboy.qcow2 +10G
    
    

    2)虚拟机中fdisk重新分区

    fdisk /dev/vda
    

    3)重启之后,执行

    xfs_growfs /dev/vda1,
    

    如果虚拟机磁盘文件系统是

    ext4:resize2fs /dev/vda1
    

    kvm虚拟机在线热添加网卡

    virsh attach-interface web04 --type bridge --source br0 --model virtio 
    detach-interface web04 --type bridge --mac 52:54:00:35:d3:71
    

    kvm虚拟机在线热添加内存

    创建的时候使用此参数 --memory 512,maxmemory=2048

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 512,maxmemory=2048   --vcpus 1 --disk /data/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
    
    

    临时热添加内存

    setmem web04 1024M --live
    永久增大内存
    setmem web04 1024M --config
    

    kvm虚拟机在线热添加cpu

    创建的时候使用此参数 --vcpus 1,maxvcpus=10

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 512,maxmemory=2048  --disk /data/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
    
    热添加cpu核数
    setvcpus web04 4 --live
    永久添加cpu核数
    setvcpus web04 4 --config
    
    

    virt-manager和kvm虚拟机热迁移(共享的网络文件系统)

    冷迁移kvm虚拟机:配置文件,磁盘文件
    热迁移kvm虚拟机:配置文件,nfs共享

    热迁移

    操作步骤:
    一:在kvm01和kvm02上安装kvm和nfs,配置桥接网卡

    yum install libvirt* virt-* qemu-kvm* nfs-utils openssh-askpass -y
    systemctl start libvirtd.service
    virsh iface-bridge eth0 br0
    

    二:在nfs01上安装配置nfs

    yum install nfs-utils -y
    mkdir /data
    vim /etc/exports
    /data 10.0.0.0/24(rw,async,no_root_squash,no_all_squash)
    systemctl restart rpcbind
    systemctl restart nfs
    

    三:kvm01和kvm02挂载共享目录/opt

    mount -t nfs 10.0.0.31:/data /opt
     
    

    四:安装一台基于桥接模式的虚拟机

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 512,maxmemory=2048 --vcpus 1 --disk /data/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
    

    热迁移的命令:

    virsh migrate --live --verbose oldboy qemu+ssh://10.0.0.12/system --unsafe
    

    将宿主机10.0.0.11上的kvm虚拟机oldboy迁移到10.0.0.12

    图新化界面热迁移

    1):

    yum groupinstall “GNOME Desktop” -y
    yum install openssh-askpass -y

    yum install tigervnc-server -y

    vncpasswd
    vncserver :1
    vncserver -kill :1

    2):kvm虚拟机热迁移
    1:两边的环境(桥接网卡)
    2:实现共享存储(nfs)
    3:虚拟机桥接网络
    4:在线热迁移

    virt-v2v -i ova centos-dev-test01-v2v.ova -o local -os /opt/test -of qcow2

    openstack

    kvm宿主机 2000台
    查看每一个宿主机有多少台虚拟机?
    查看每一个宿主机还剩多少资源?
    查看每一台宿主机,每一个虚拟机的ip地址?
    kvm管理平台,数据库工具
    信息:宿主机,总配置,剩余的总配置
    虚拟机的信息,配置信息,ip地址,操作系统

    带计费功能的kvm管理平台,openstack ceilometer计费
    自动化管理kvm宿主机,云主机定制化操作

    部署openstack
    克隆一台openstack模板机:4G内存,开启虚拟化,挂载centos7.4的光盘
    上传脚本openstack-mitaka-autoinstall.sh到/root目录
    上传镜像:cirros-0.3.4-x86_64-disk.img到/root目录
    上传配置文件:local_settings到/root目录
    上传openstack_rpm.tar.gz到/opt下,并解压
    sh /root/openstack-mitaka-autoinstall.sh
    大概10-30分钟左右
    访问http://10.0.0.11/dashboard
    域:default
    用户名:admin
    密码:ADMIN_PASS

    注意: 在windows系统上修改hosts解析(10.0.0.11 controller)

    添加node节点:
    修改ip地址
    hostnamectl set-hostname compute1
    重新登录让新主机名生效
    cd /opt/
    rsync -avz 10.0.0.11:/opt/repo .
    上传脚本 openstack_node_autoinstall.sh
    sh openstack_node_autoinstall.sh <node节点ip>

    openstack controller主控制节点,node节点, kvm宿主机
    node节点, kvm宿主机
    node节点, kvm宿主机
    node节点, kvm宿主机
    node节点, kvm宿主机

    展开全文
  • kvm

    千次阅读 2018-08-12 21:07:10
    Kvm:内核虚拟化模块 Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。 点击虚拟机设置 选择 处理器—-》虚拟化...

    Kvm:内核虚拟化模块
    Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。

    点击虚拟机设置 选择 处理器—-》虚拟化Intel VT-x/EPT或AMD-V/RVI(V)

    一、 图形化安装
    [root@localhost ~]# egrep “(vmx|svm)” /proc/cpuinfo
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer xsave avx f16c hypervisor lahf_lm tpr_shadow vnmi ept vpid fsgsbase tsc_adjust smep arat
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer xsave avx f16c hypervisor lahf_lm tpr_shadow vnmi ept vpid fsgsbase tsc_adjust smep arat
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer xsave avx f16c hypervisor lahf_lm tpr_shadow vnmi ept vpid fsgsbase tsc_adjust smep arat
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer xsave avx f16c hypervisor lahf_lm tpr_shadow vnmi ept vpid fsgsbase tsc_adjust smep arat

    如果输出的结果包含 vmx,它是 Intel处理器虚拟机技术标志;如果包含 svm,它是 AMD处理器虚拟机技术标志;。如果你甚么都得不到,那应你的系统并没有支持虚拟化的处理 ,不能使用kvm。另外Linux 发行版本必须在64bit环境中才能使用KVM。

    安装虚拟化相关软件
    [root@localhost ~]# mount /dev/sr0 /mnt
    mount: /dev/sr0 is write-protected, mounting read-only
    KVM虚拟化中libvirt是目前使用最为广泛的对KVM虚拟机进行管理的工具和应用程序接口,而且一些常用的虚拟机管理工具(virsh、virt-install、virt-manager等)和云计算框架平台都在底层使用libvirt的应用程序接口。
    virsh是用于管理虚拟化环境中的客户机和Hypervisor的命令行工具,与virt-manager等工具类似,它也是通过libvirt API来实现虚拟化的管理。virsh是完全在命令行文本模式下运行的用户态工具,它是系统管理员通过脚本程序实现虚拟化自动部署和管理的理想工具之一。
    virt-manager是虚拟机管理器(Virtual Machine Manager)这个应用程序的缩写,也是管理工具的软件包名称。virt-manager是用于管理虚拟机的图形化的桌面用户接口。
    总的来说,libvirt是接口,virsh、virt-manager是管理工具,这些管理工具通过libvirt提供的接口来进行管理

    [root@localhost ~]# yum install virt-manager libvirt -y
    Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
    This system is not registered with an entitlement server. You can use subscription-manager to register.
    base | 4.1 kB 00:00:00
    **Resolving Dependencies
    -**
    [root@localhost ~]# systemctl restart libvirtd
    [root@localhost ~]# systemctl enable libvirtd
    [root@localhost ~]# lsmod |grep kvm
    kvm_intel 170086 0
    kvm 566340 1 kvm_intel
    irqbypass 13503 1 kvm
    [root@localhost ~]# virt-manager

    二、命令行安装
    检查磁盘是否有空闲空间:
    [root@localhost ~]# df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/sda3 48G 11G 38G 22% /
    devtmpfs 898M 0 898M 0% /dev
    tmpfs 912M 4.0K 912M 1% /dev/shm
    tmpfs 912M 9.1M 903M 1% /run
    tmpfs 912M 0 912M 0% /sys/fs/cgroup
    /dev/sda1 197M 152M 46M 78% /boot
    tmpfs 183M 32K 183M 1% /run/user/0
    /dev/sr0 3.8G 3.8G 0 100% /mnt
    添加桥接网络
    [root@localhost ~]# nmcli connection add type bridge con-name br1 ifname br1
    Connection ‘br1’ (c629f509-3d64-44a7-b76b-bf24bfd5c707) successfully added.
    添加从设备到网络
    [root@localhost ~]# nmcli connection add type bridge-slave con-name br1-port1 ifname ens33 master br1
    Connection ‘br1-port1’ (1ee7b12a-0cae-4661-9a03-8ca2b79a9ebe) successfully added.

    启用桥接网卡
    [root@localhost ~]# nmcli connection up br1-port1
    查看桥接网卡是否成功
    [root@localhost ~]# nmcli connection show
    NAME UUID TYPE DEVICE
    br1 c629f509-3d64-44a7-b76b-bf24bfd5c707 bridge br1
    br1-port1 1ee7b12a-0cae-4661-9a03-8ca2b79a9ebe 802-3-ethernet ens33
    virbr0 07482c6b-6a94-4ca9-9634-3d59e674b431 bridge virbr0
    br1 d2a6add7-7c47-4e7f-8655-2ce498df2204 bridge –
    ens33 52ee9cf2-4412-4325-bb0a-19938d91157c 802-3-ethernet –

    [root@localhost ~]# mount /dev/sr0 /mnt
    mount: /dev/sr0 is write-protected, mounting read-only
    安装必要的软件
    [root@localhost ~]# yum install virt-install virt-viewer
    Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-
    : manager
    This system is not registered with an entitlement server. You can use subscription-manager to register.
    Resolving Dependencies
    –> Running transaction check
    —> Package virt-install.noarch 0:1.4.1-7.el7 will be installed
    —> Package virt-viewer.x86_64 0:5.0-7.el7 will be installed
    –> Finished Dependency Resolution

    Dependencies Resolved

    [root@localhost ~]# systemctl restart libvirtd
    [root@localhost ~]# systemctl enable libvirtd
    [root@localhost ~]# lsmod |grep kvm
    kvm_intel 170086 0
    kvm 566340 1 kvm_intel
    irqbypass 13503 1 kvm
    安装虚拟机
    [root@localhost ~]# virt-install –name rhel7.4 –disk path=/dev/sdb –check path_in_use=off –graphics spice –vcpus=1 –ram 1024 –location=/root/rhel-server-7.4-x86_64-dvd.iso –network bridge=br1 –os-type=linux –os-variant=rhel7

    Starting install…
    Retrieving file .treeinfo… | 1.9 kB 00:00
    Retrieving file vmlinuz… | 5.6 MB 00:00
    Retrieving file initrd.img…

    展开全文
  • Kvm

    2018-01-17 12:42:33
    kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51cto.com/703525/1288795kvm虚拟化学习笔记(二)之linuxkvm虚拟机安装http://koumm.blog.51cto.com/703525/1289627kvm虚拟化学习笔记(三)之windowskvm...

    本文出自:http://koumm.blog.51cto.com

    kvm虚拟化学习笔记(一)之kvm虚拟化环境安装
    http://koumm.blog.51cto.com/703525/1288795
    kvm虚拟化学习笔记(二)之linuxkvm虚拟机安装
    http://koumm.blog.51cto.com/703525/1289627
    kvm虚拟化学习笔记(三)之windowskvm虚拟机安装
    http://koumm.blog.51cto.com/703525/1290191
    kvm虚拟化学习笔记(四)之kvm虚拟机日常管理与配置
    http://koumm.blog.51cto.com/703525/1290269
    kvm虚拟化学习笔记(五)之windows虚拟机性能调整
    http://koumm.blog.51cto.com/703525/1290682
    kvm虚拟化学习笔记(六)之kvm虚拟机控制台登录配置
    http://koumm.blog.51cto.com/703525/1290996
    kvm虚拟化学习笔记(七)之kvm虚拟机克隆
    http://koumm.blog.51cto.com/703525/1291793
    kvm虚拟化学习笔记(八)之kvm虚拟机vnc配置
    http://koumm.blog.51cto.com/703525/1291803
    kvm虚拟化学习笔记(九)之kvm虚拟机时间配置
    http://koumm.blog.51cto.com/703525/1291862
    kvm虚拟化学习笔记(十)之kvm虚拟机快照备份
    http://koumm.blog.51cto.com/703525/1291893
    kvm虚拟化学习笔记(十一)之kvm虚拟机扩展磁盘空间
    http://koumm.blog.51cto.com/703525/1292146

    kvm虚拟化学习笔记(十二)之kvmlinux虚拟机在线扩展磁盘
    http://koumm.blog.51cto.com/703525/1295296

    kvm虚拟化学习笔记(十三)之kvm虚拟机磁盘文件读取小结
    http://koumm.blog.51cto.com/703525/1298845

    kvm虚拟化学习笔记(十四)之kvm虚拟机静态迁移
    http://koumm.blog.51cto.com/703525/1298852
    kvm虚拟化学习笔记(十五)之kvm虚拟机动态迁移
    http://koumm.blog.51cto.com/703525/1300783

    kvm虚拟化学习笔记(十六)之kvm虚拟化存储池配置
    http://koumm.blog.51cto.com/703525/1304196
    kvm虚拟化学习笔记(十七)之KVM到KVM之v2v迁移

    http://koumm.blog.51cto.com/703525/1304271

    kvm虚拟化学习笔记(十八)之ESXi到KVM之v2v迁移
    http://koumm.blog.51cto.com/703525/1304461

    kvm虚拟化学习笔记(十九)之convirt集中管理平台搭建
    http://koumm.blog.51cto.com/703525/1305553

    kvm虚拟化学习笔记(二十)之convirt安装linux系统

    http://koumm.blog.51cto.com/703525/1306526

    kvm虚拟化学习笔记(二十一)之KVM性能优化学习笔记
    http://koumm.blog.51cto.com/703525/1606422

    转载于:https://blog.51cto.com/11225677/2061990

    展开全文
  • kvm虚拟机安装

    2018-10-16 17:42:59
    kvm虚拟机安装介绍 KVM 虚拟机的管理工具  准确来说,KVM 仅仅是 Linux 内核的一个模块。管理和创建完整的 KVM 虚拟机,需要更多的辅助工具 QEMU-KVM 在 Linux 系统中,首先我们可以用 modprobe 系统工具去加载...
  • KVMkvm

    千次阅读 2012-10-15 09:04:21
    KVMkvm 在本文中,我们使用 KVM 引用内核 虚拟机,使用 kvm 引用系统管理程 序(用来启动一台新虚拟机)。 探索 Linux 内核虚拟机 学习 KVM 架构及其优点 级别: 中级 M. Tim Jones, 顾问工程师, Emulex ...
    KVM 和 kvm
    在本文中,我们使用 KVM 引用内核
    虚拟机,使用 kvm 引用系统管理程
    序(用来启动一台新虚拟机)。
    探索 Linux 内核虚拟机
    学习 KVM 架构及其优点
    级别: 中级
    M. Tim Jones, 顾问工程师, Emulex
    2007 年 5 月 28 日
    Linux® 既有良好的灵活性,在虚拟化方面同样出色。但是最近,随着内核虚拟机
    (KVM)的出现,Linux 虚拟化的前景发生了变化。KVM 是构成主流 Linux 内核
    (V2.6.20)一部分的第一个虚拟化解决方案。KVM 支持 Linux 客户操作系统的虚拟化
    —— 甚至支持其硬件对虚拟化敏感的 Windows® 系统的虚拟化。了解 Linux KVM 的架构
    并了解它与内核的紧密集成为何会改变您使用 Linux 的方式。
    简介
    虚拟化 概念很早就已出现。简单来说,虚拟化就是使用某些程序,并使其看起来类似于其他程序的过
    程。将这个概念应用到计算机系统中可以让不同用户看到不同的单个系统(例如,一台计算机可以同
    时运行 Linux 和 Microsoft® Windows®)。这通常称为全虚拟化(full virtualization)。
    虚拟化也可以使用更加复杂的格式,其中单个计算机看上去
    具有多个架构(对于一个用户来说,它是一个标准的 x86 平
    台;对于另外一个用户来说,它是 IBM Power PC® 平
    台)。这种虚拟化形式通常被称为 硬件仿真。
    最后,更加简单的一种虚拟化是操作系统虚拟化,其中一台
    计算机可以运行相同类型的多个操作系统。这种虚拟化可以将一个操作系统的多个服务器隔离开来
    (这意味着全都必须使用相同类型和版本的操作系统)。有关虚拟化方法的更多信息,请参看 参考资
    料。
    虚拟化和准虚拟化(para-virtualization)
    虚拟化最常使用的两种方法是全虚拟化 和准虚拟化。使用全虚拟化,在虚拟化的操作系统和硬件之间
    存在一个层,用于决定访问。这个层称为系统管理程序 或虚拟机监视器(VMM)。准虚拟化与之类
    似,但是系统管理程序会以一种更具协作性的方式进行操作。这是因为每个客户操作系统都了解自己
    正在虚拟化模式中运行,因此每个系统都与系统管理程序协作,来实现底层硬件的虚拟化。
    全虚拟化的例子包括商业虚拟化解决方案 VMware,以及商业 IBM zSeries® 计算机上使用的 IBM
    System z9 Virtual Machine(z/VM)操作系统。准虚拟化的例子有 Xen 和 User-Mode-Linux (UML)。
    KVM 也被认为是一个全虚拟化解决方案,不过我们稍后再介绍这个问题。
    虚拟化的工作原理
    我们首先简要介绍一下虚拟化技术及其涉及的元素。虚拟化解决方案的底部是要进行虚拟化的机器。
    这台机器可能直接支持虚拟化,也可能不会直接支持虚拟化;那么就需要系统管理程序 层的支持。系
    统管理程序,或称为 VMM,可以看作是平台硬件和操作系统的抽象化。在某些情况中,这个系统管
    理程序就是一个操作系统;此时,它就称为主机操作系统,如 图 1 所示。
    图 1. 虚拟化的分层抽象
    处理器对于虚拟化的支持
    由于平台虚拟化的优点非常有用,因
    此处理器供应商已经修改了自己的芯
    片来直接支持这种方法。这样做使处
    理器可以直接支持不同于客户机操作
    系统的系统管理程序。对于 VMM 和
    VM 来说,除了处理器状态(寄存器
    等)的管理不同之外,处理器还支持
    I/O 和中断的虚拟化。要了解更多信
    息,请参看 参考资料。
    Linux 内核中 KVM 的源代码
    您可以在 ./linux/drivers
    /kvm(V2.6.20 及更新版本)中找到
    KVM 的源代码。这个目录包含了
    KVM 的源文件,以及对于 Intel 和
    AMD 扩展的处理器支持文件。
    系统管理程序之上是客户机操作系统,也称为虚拟机(VM)。这些 VM 都是一些相互隔离的操作系
    统,将底层硬件平台视为自己所有。但是实际上,是系统管理程序为它们制造了这种假象。
    目前使用虚拟化解决方案的问题是,并非所有硬件都可以很
    好地支持虚拟化。较老的 x86 处理器根据执行范围对特定指
    令会产生不同结果。这就产生了一个问题,因为系统管理程
    序应该只能在一个最受保护的范围中执行。由于这个原因,
    诸如 VMWare 之类的虚拟化解决方案会提前扫描要执行的代
    码,从而将这些指令替换为一些陷阱指令(trap
    instruction),这样系统管理程序就可以正确地处理它们。
    Xen 可以支持一种协作的虚拟化方法,它不需要任何修改,
    因为客户机知道自己正在进行虚拟化,并已经进行了修改。
    KVM 会简单地忽略这个问题,如果您希望进行虚拟化,就强
    制必须在更新的硬件上运行。
    刚开始会觉得这有些不方便,但是考虑到目前上市的较新机器都可以支持虚拟化(例如 Intel® VT 和
    AMD SVM),用不了多久,这将成为标准方法而不是少数例外情况。有关可以支持虚拟化的处理器
    的更多信息,请参看 参考资料 和侧栏 处理器对于虚拟化的支持。
    KVM 系统管理程序
    考虑到虚拟化技术的发展时间并不长,KVM 实际上还是一种相对来说比较新的技术。目前存在各具功
    能的开源技术,例如 Xen、Bochs、UML、Linux-VServer 和 coLinux,但是 KVM 目前正在被大量使
    用。另外,KVM 不再仅仅是一个全虚拟化解决方案,而将成为更大的解决方案的一部分。
    KVM 所使用的方法是通过简单地加载内核模块而将 Linux 内核转换为一个系统管理程序。这个内核模
    块导出了一个名为 /dev/kvm 的设备,它可以启用内核的客户模式(除了传统的内核模式和用户模
    式)。有了 /dev/kvm 设备,VM 使自己的地址空间独立于内核或运行着的任何其他 VM 的地址空间。
    设备树(/dev)中的设备对于所有用户空间进程来说都是通用的。但是每个打开 /dev/kvm 的进程看
    到的是不同的映射(为了支持 VM 间的隔离)。
    KVM 然后会简单地将 Linux 内核转换成一个系统管理程序
    (在安装 kvm 内核模块时)。由于标准 Linux 内核就是一个
    系统管理程序,因此它会从对标准内核的修改中获益良多
    (内存支持、调度程序等)。对这些 Linux 组件进行优化
    (例如 2.6 版本内核中的新 O(1) 调度程序)都可以让系统管
    理程序(主机操作系统)和 Linux 客户操作系统同时受益。
    但是 KVM 并不是第一个这样做的程序。UML 很久以前就将
    Linux 内核转换成一个系统管理程序了。使用内核作为一个系
    统管理程序,您就可以启动其他操作系统,例如另一个 Linux 内核或 Windows 系统。
    KVM
    安装 KVM 之后,您可以在用户空间启动客户操作系统。每个客户操作系统都是主机操作系统(或系
    统管理程序)的一个单个进程。 图 2 提供了一个使用 KVM 进行虚拟化的视图。底部是能够进行虚拟
    化的硬件平台(目前指的是 Intel VT 或 AMD-SVM 处理器)。在裸硬件上运行的是系统管理程序(带
    有 KVM 模块的 Linux 内核)。这个系统管理程序与可以运行其他应用程序的普通 Linux 内核类似。但
    是这个内核也可以支持通过 kvm 工具加载的客户操作系统。最后,客户操作系统可以支持主机操作系
    统所支持的相同应用程序。
    图 2. 使用 KVM 的虚拟化组件
    记住 KVM 只是虚拟化解决方案的一部分。处理器直接提供了虚拟化支持(可以为多个操作系统虚拟
    化处理器)。内存可以通过 kvm 进行虚拟化(这在下一节中将会讨论)。最后,I/O 通过一个稍加修
    改的 QEMU 进程(执行每个客户操作系统进程的一个拷贝)进行虚拟化。
    KVM 向 Linux 中引入了一种除现有的内核和用户模式之外的新进程模式。这种新模式就称为客户 模
    式,顾名思义,它用来执行客户操作系统代码(至少是一部分代码)。回想一下内核模式表示代码执
    行的特权模式,而用户模式则表示非特权模式(用于那些运行在内核之外的程序)。根据运行内容和
    目的,执行模式可以针对不同的目的进行定义。客户模式的存在就是为了执行客户操作系统代码,但
    是只针对那些非 I/O 的代码。在客户模式中有两种标准模式,因此客户操作系统在客户模式中运行可
    以支持标准的内核,而在用户模式下运行则支持自己的内核和用户 空间应用程序。客户操作系统的用
    户模式可以用来执行 I/O 操作,这是单独进行管理的。
    在客户操作系统上执行 I/O 的功能是由 QEMU 提供的。QEMU 是一个平台虚拟化解决方案,允许对
    一个完整的 PC 环境进行虚拟化(包括磁盘、图形适配器和网络设备)。客户操作系统所生成的任何
    I/O 请求都会被中途截获,并重新发送到 QEMU 进程模拟的用户模式中。
    KVM 通过 /dev/kvm 设备提供了内存虚拟化。每个客户操作系统都有自己的地址空间,并且是在实例
    化客户操作系统时映射的。映射给客户操作系统的物理内存实际上是映射给这个进程的虚拟内存。为
    了支持客户物理地址到主机物理地址的转换,系统维护了一组影子页表(shadow page table)。处理
    器也可以通过在访问未经映射的内存位置时使用系统管理程序(主机内核)来支持内存转换进程。
    实例化新客户操作系统
    新客户操作系统的实例化是由一个名为 kvm 的工具提供的。这个工具可以与 kvm 模块协同工作,使
    用 /dev/kvm 来加载客户操作系统,将它与虚拟磁盘(主机操作系统中的一个普通文件)关联起来,
    然后启动客户操作系统。
    通过一组在 /dev/kvm 设备上执行的 ioctls 可以提供控制支持。当第一次打开这个特殊文件时,就会创
    建一个新的 VM 对象,它与一个虚拟 CPU 关联在一起。您然后可以使用几个 ioctls 来创建一个虚拟
    CPU,检查 kvm 版本,创建内存区域,然后启动一个虚拟 CPU。您可以使用 kvm 命令实现这种功
    能。在接下来的几节中,我们将介绍 kvm 命令,并给出几个受支持的 ioctls 的示例。
    使用 KVM
    如果硬件支持的话,使用 KVM 实际上非常简单。您需要一个具有虚拟化支持的处理器。通过查看
    /proc/cpuinfo 可以知道系统是否支持虚拟化。这个文件指定了是否支持 vmx(Intel)或 svm(AMD)
    扩展。
    接下来,您需要一个启用了 KVM 支持的 Linux 内核。您可以在 Device Drivers > Virtualization 下的
    内核配置中完成这种配置。还必须启用处理器对环境的支持。另外,还必须具有 kvm 和 qemu 用户空
    间应用程序。更多信息请参见 参考资料。
    有了启用了虚拟化支持的引导内核,接下来的一个步骤是为客户操作系统创建一个磁盘映像。您可以
    使用 qeumu-img 来完成此操作,如下所示。注意这个映像的大小是 4GB,但是使用 QEMU 的写时
    复制格式(copy-on-write,qcow)时,整个文件将根据需要增长,而不是完全占据这 4 GB 的空间。
    $ qemu-img create -f qcow vm-disk.img 4G
    在创建虚拟磁盘之后,就可以将客户操作系统加载到其上。下面的例子假设客户操作系统是在
    CD-ROM 上。除了使用 CD-ROM ISO 映像来填充虚拟磁盘之外,还必须在结束时启动这个映像。
    $ kvm -no-acpi -m 384 -cdrom guestos.iso -hda vm-disk.img -boot d
    Ari Kivity 已经编写了一组测试工具来测试 KVM,而不需要全部的设备模型。下面的代码片断(来自于
    kvm-12/user/main.c)从较高的层次上查看了 VM 的启动(请参见 清单 1)。控制特性是由内核中的
    ioctls 提供的(具体来说,在 ./linux-2.6.20/drivers/kvm/kvm_main.c 文件中)。
    对 kvm_init 的调用会打开 /dev/kvm 设备,检查版本号(由 KVM 内核模块导出),然后分配一个
    KVM 上下文对象并填充一些回调函数。kvm_create 函数会建立并映射两个内存区域,然后使用
    ioctl(KVM_CREATE_VCPU)创建一个虚拟 CPU(VCPU)。
    load_file 函数然后会将映像加载到给定的 VM 的地址空间中,然后调用 kvm_run 执行该
    VM(使用 ioctl KVM_RUN)。尽管这个过程非常简单,但是它解释了如何使用 KVM 实例化新客户操
    作系统。
    清单 1. 测试 KVM 系统管理程序的应用程序片断
    int main()
    {
    void *vm_mem;
    kvm = kvm_init(&test_callbacks, 0);
    if (!kvm) {
    fprintf(stderr, "kvm_init failed\n");
    return 1;
    }
    if (kvm_create(kvm, 128 * 1024 * 1024, &vm_mem) < 0) {
    kvm_finalize(kvm);
    fprintf(stderr, "kvm_create failed\n");
    return 1;
    }
    if (ac > 1)
    if (strcmp(av[1], "-32") != 0)
    load_file(vm_mem + 0xf0000, av[1]);
    else
    enter_32(kvm);
    if (ac > 2)
    load_file(vm_mem + 0x100000, av[2]);
    kvm_show_regs(kvm, 0);
    kvm_run(kvm, 0);
    return 0;
    }
    结束语
    KVM 是解决虚拟化问题的一个有趣的解决方案,但是由于它是第一个进入内核的虚拟化解决方案,很
    难想象它会很快用于服务器虚拟化。还有其他一些方法一直在为进入内核而竞争(例如 UML 和
    Xen),但是由于 KVM 需要的修改较少,并且可以将标准内核转换成一个系统管理程序,因此它的优
    势不言而喻。
    KVM 的另外一个优点是它是内核本身的一部分,因此可以利用内核的优化和改进。与其他独立的系统
    管理程序解决方案相比,这种方法是一种不会过时的技术。KVM 两个最大的缺点是需要较新的能够支
    持虚拟化的处理器,以及一个用户空间的 QEMU 进程来提供 I/O 虚拟化。但是不论好坏,KVM 位于
    内核中,这对于现有解决方案来说是一个巨大的飞跃。
    参考资料
    学习
    您可以参阅本文在 developerWorks 全球网站上的 英文原文。
    有很多方法都可以提供虚拟化,您可以从 “虚拟 Linux” 一文中了解更多内容
    (developerWorks,2007 年 1 月)。
    包括 IBM、 Intel 和 AMD 在内的一些公司都提供了虚拟化硬件。您可以查看各自的站点了解更
    多信息。
    有关 KVM 的最新新闻,请查看 KVM wiki,这是由 Qumranet 提供的。
    尽管 KVM 的出现时间非常短,但是您可以找到一些介绍其各个方面性能的文章。其中两篇非常
    有趣的文章是由 Phoronix 和 KernelNewbies 提供的。
    KernelNewbies 上的另外一篇有趣文章对 虚拟化方法进行了很好的比较(包括 KVM)。
    V2.6 Linux 调度程序是由 Ingo Molnar 创建,实现了 O(1) 调度。您可以通过阅读 “Linux 调度器
    内幕”(M. Tim Jones,developerWorks,2006 年 9 月)了解更多有关这个调度程序的内容 。
    一种协作虚拟化方法 coLinux 让您可以在 Windows 上运行 Linux。
    QEMU 是一个开源处理器仿真器,它也可以为 KVM 提供 PC 环境虚拟化功能。
    在 developerWorks 中国网站 Linux 专区 中可找到适合 Linux 开发人员的更多资源。
    随时关注 developerWorks 技术活动 和 网络广播。
    获得产品和技术
    要下载 KVM 所必须的应用程序,请查看 Debian。
    获取 SEK for Linux,共包含两张 DVD,其中有用于 Linux 的最新 IBM 试用软件,包括 DB2®、
    Lotus®、Rational®、Tivoli® 和 WebSphere®。
    利用 IBM 试用版本软件 在 Linux 上构建您的下一个开发项目,可直接从 developerWorks 下
    载。
    讨论
    通过参与 developerWorks blog 加入 developerWorks 社区。
    关于作者
    M. Tim Jones 是一名嵌入式软件工程师,他是 GNU/Linux Application Programming、AI
    Application Programming 以及 BSD Sockets Programming from a Multilanguage
    Perspective 等书的作者。他的工程背景非常广泛,从同步宇宙飞船的内核开发到嵌入式架
    构设计,再到网络协议的开发。Tim 是位于科罗拉多州 Longmont 的 Emulex Corp. 的一名
    顾问工程师。
    IBM、Power PC 和 zSeries 是 IBM在美国的注册商标。 Linux 是 Linus Torvalds 在美国和/或其他国家的
    注册商标。 Microsoft 和 Windows 是微软公司在美国和/或其他国家的注册商标。 Intel、Intel logo 和 Intel
    VT 是 Intel 公司或其子公司在美国和其他国家的商标或注册商标。 其他公司、产品或服务的名称可能是
    其他公司的商标或服务标志。
    IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许
    可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。
    展开全文
  • KVM虚拟机

    千次阅读 2015-06-30 14:36:59
    Kvm教程目录[隐藏]1 友情连接2 KVM 与 vbox的区别3 关于kvm4 相关连接5 基本知识5.1 安装准备5.2 安装kvm5.3 创建虚拟镜像5.4 安装虚拟机系统5.5 使用虚拟机最简单的命令6 使用6.1 文件共享6.2 快照...
  • kvm中运行kvm

    2014-12-09 21:55:00
     上次讨论了如何在 VMware ESXi 虚拟机上运行 KVM 问题,前不久有读者想 “在 kvm 上面创建个虚拟机安装 rackspace 的 openstack” 问到 “如何开启虚拟机上的 CPU VT 功能以便在 KVM 上运行 KVM”,又是一个嵌套...
  • kvm对象头

    千次阅读 2019-07-15 16:45:55
    在之前的文章中,简要说了一下kvm中的对象头,kvm中的对象头和jvm中的不完全相同.本文进行详细介绍. 在我们的VM中,内存中的每个堆分配结构前面都有一个对象头,它提供关于对象类型和大小的详细信息。头的长度是一个字...
  • kvm目录结构

    千次阅读 2019-07-01 17:46:35
    kvm介绍 此KVM不是目前特别火的Kernel-based Virtual Machine(一个开源的系统虚拟化模块).而是一个JAVA 的虚拟机.是J2ME cldc 的一个实现.其源码的难度比hotspot简单多了.因此,想通过研读KVM,以加深对hotspot的理解 ...
  • kvm启动流程

    千次阅读 2019-07-02 18:11:11
    启动入口位于j2me_cldc/kvm/VmExtra/src/main.c的main方法.代码如下: int main (int argc, char* argv[]) { int result; #if USE_JAM char *jamInstalledAppsDir = "./instapps"; #endif JamEnab...
  • kvm link解析

    千次阅读 2019-07-01 17:57:58
    之前的几篇文章介绍了 kvm 将 class读取到kvm中的环节,此时该class的状态为CLASS_LOADED.此时其还需要进行链接,验证.本文介绍一下其链接环节. 链接 该部分的代码是在j2me_cldc/kvm/VmCommon/src/loader.c 中,代码...
  • kvm终止流程

    千次阅读 2019-07-12 11:39:00
    本文介绍KVM的终止流程.其是在StartJVM方法中调用的.代码如下: int StartJVM(int argc, char* argv[]) { volatile int returnValue = 0; /* Ensure that we have a class to run 必须提供要运行的类名 */ if ...
  • KVM是什么?

    2019-09-11 17:01:51
    KVM是基于内核的 虚拟化CUP和内存的技术 KVM负责 虚拟化CUP和内存 QEUM负责虚拟化IO设备 另外说下: KVM是虚拟在硬件设备上的 区别于VMware VMware是虚拟在OS操作系统上的 ...
  • KVM免安装工具包

    2019-03-21 15:12:08
    kvm免安装工具包。Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心很少。KVM目前...
  • KVM详解,学习kvm系列文章

    万次阅读 多人点赞 2018-08-06 10:43:03
    1. KVM 介绍 1.0 虚拟化简史 1.1 KVM 架构 2. KVM 的功能列表 3. KVM 工具集合 4. RedHat Linux KVM 安装 4.1 在安装 RedHat Linux 时安装 KVM 4.2 在已有的 RedHat Linux 中安装 KVM 4.3 QEMU/KVM 代码...
  • kvm划分了2个server虚拟机, 一个给的是192.168.122.0/24的网络, 一个给的是192.168.121.0/24的网络, 作映射1089和1389分别对应两个虚拟机的远程桌面3389的端口, 但是只能远程连接一个,另一个提示 无法...
  • 接着《Docker最初的2小时(Docker从入门到入门)》继续聊,再花10个小时写出《KVM最初的2小时(KVM从入门到入不了门)》。坦白讲,由于KVM远远比Docker要复杂,还是要2小时爱上KVM,这绝非难事,所以很可能入不了门...

空空如也

1 2 3 4 5 ... 20
收藏数 23,525
精华内容 9,410
关键字:

kvm