虚拟化基础入门

KVM简介

虚拟化概念(KVM ---  全称是基于内核的虚拟机(Kernel-based Virtual Machine))
 	- virtualization资源管理
 	-- x个物理资源 -- > y个逻辑资源
 	-- 实现程度:完全,部分,硬件辅助(CPU)

虚拟化主要厂商及产品

系列PC/服务器代表
VMwareVMware Workstaion , vSphere
MicrosoftVIrtualPC,Hyper-V
RedHatKVM,RHEV
CitrixXen
OracleOracle VM VIrtualBox

安装虚拟化服务器平台

  • 必备软件
    1.qemu-kvm -为kvm提供底层仿真支持
    2.libvirt-daemon -libvirtd守护进程,管理虚拟机
    3.libvirt-client -用户端软件,提供客户端管理命令
    4.libvirt-daemon-driver-qemu -libvirtd连接qemu的驱动
  • 可选功能
    1.virt-install #系统安装工具
    2.virt-manager #图形管理工具
    3.virt-v2v #虚拟机迁移工具
    4.virt-p2v #物理机迁移工具
  • 虚拟化平台的安装
yum -y install qemu-kvm libvirt-daemon libvirt-client libvirt-daemon-driver-qemu
systemctl start libvirtd
KVM虚拟机的组成
-	内核虚拟化模块(KVM)
-	系统仿真设备(QEMU)
-	虚拟化管理程序(LIBVIRT)
-	一个XML文件(虚拟机配声明文件)
-	位置/etc/libvirt/qemu/
-	一个磁盘镜像文件(虚拟机的硬盘)
-	位置/var/lib/libvirt/images

管理KVM平台

virsh命令工具介绍

  • virsh虚拟机管理
  • virsh list [–all] 列出虚拟机
  • virsh start | shutdown | reboot 启动,停止,重启
  • virsh destroy 强制停止虚拟机
  • virsh define | undefine 根据xml文件创建/删除虚拟机
  • virsh console 连接虚拟机的console
  • virsh edit 修改虚拟机的配置
  • virsh autostart 设置虚拟机自启动
  • domiflist 查看虚拟机网卡信息
  • domblklist 查看虚拟机硬盘信息
    virsh 虚拟网络管理
  • virsh net-list [–all] 列出虚拟网络
  • virsh net-start 启动虚拟交换机
  • virsh net-destroy 强制停止虚拟交换机
  • virsh net-define 根据xml文件创建虚拟网络
  • virsh net-undefine 删除一个虚拟网路设备
  • virsh net-edit 修改虚拟交换机的位置
  • virsh net-autostart 设置虚拟交换机自启动

常用镜像盘类型

特点/类型RAWQCOW2
KVM默认
I/O效率较高
占用空间
压缩不支持支持
后端盘复用不支持支持
快照不支持支持

qemu-img命令

  • qemu-img是虚拟机的磁盘管理命令,支持非常多的磁盘格式,例如raw,qcow2,vdi,vmdk等等
  • qemu-img命令格式:qemu-img 命令 参数 快文件名称 大小
  • 常用命令
  • create 创建一个磁盘
  • convert 转换磁盘格式
  • info 查看磁盘信息
  • resize 扩容磁盘空间
  • qemu-img create -f 格式 磁盘路径 大小 //创建新的镜像盘文件(qemu-img create -f qcow2 disk.img 50G)
  • qemu-img info 磁盘路径 //查询镜像盘文件的信息(qemu-img info disk.img)
  • qemu-img create -b disk.img -f qcow2 disk1.img //使用后端模板文件

COW技术原理
Copy On Write 写时复制

  • 直接映射原始盘的数据内容
  • 当数据有修改要求时,在修改之前自动将旧数据拷贝存入前端盘后,对前端盘进行修改
  • 原始盘始终是只读的.

虚拟机管理–xml管理
创建xml文件

  • virsh edit 虚拟机名 //对虚拟机配置进行调整

批量创建 虚拟机

克隆脚本命令

  • 创建虚拟机
    cd /var/lib/libvirt/images/
    qemu-img create -f qcow2 -b node.qcow2 node1.img 20G
  • 修改xml文件
    sed ‘s,node,node1,’ node.xml > /etc/libvirt/qemu/node1.xml
  • 定义xml文件
    virsh define /etc/libvirt/qemu/node1.xml
  • 开启虚拟机
    virsh start node1

网卡及配置文件
/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0	//驱动名称,与ifconfig看到的名称一致
ONBOOT=yes	//开机启动
NM_CONTROLLED=no	//不接受NetworkManager控制
TYPE=Ethernet	//类型
BOOTPROTO=static	//协议(dhcp|static|none)
IPADDR=192.168.1.1	//IP地址
NETMASK=255.255.255.0	//子网掩码
GATEWAY=192.168.1.254	//默认网关

virsh扩容磁盘

  • domblklist 查看虚拟机硬盘信息
  • blockresize --path [绝对路径] --size 50G openstack

扩容思路:硬盘–分区–文件系统
根分区扩容:

  • 语言必须设置为英文 LANG=C
  • 查看硬盘是否有多余空间 lsblk
  • 扩容第一个分区 /usr/bin/growpart /dev/vda1
  • 扩容文件系统 /usr/sbin/xfs_growfs /
  • 检查扩容结果 df -h
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值