KVM的常用操作
KVM安装
一、网卡桥接
1、在原网卡上注释掉IP配置,添加一下内容
BRIDGE=br0
2、配置桥接网卡地址
vim ifcfg-br0
DEVICE="br0"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Bridge"
BOOTPROTO=none
IPADDR="10.0.0.121"
NETMASK="255.255.255.0"
GATEWAY="10.0.0.2"
DNS1="223.5.5.5"
二、安装KVM
1、查看CPU是否支持虚拟化
cat /proc/cpuinfo | grep --color vmx
2、安装KVM,设置开机自启
yum install qemu-kvm libvirt libguestfs-tools virt-install virt-manager libvirt-python -y
systemctl start libvirtd
systemctl enable libvirtd
# 查看
systemctl is-enabled libvirtd
lsmod | grep kvm
3、安装VNCserver,便于远程控制
(1)、安装
yum -y install tigervnc tigervnc-server tigervnc-server-module
(2)、配置VNC服务
cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service> /lib/systemd/system/vncserver@:1.service
vim /lib/systemd/system/vncserver@:1.service
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
(3)、设置VNC密码
vncpasswd P@ssW0rd
(4)、重载配置,启动服务
systemctl daemon-reload
systemctl start vncserver@:1.service && systemctl enable vncserver@:1.service
# 查看
systemctl is-enabled vncserver@:1.service
# 如果启动报错 rm -rf /tmp/.X11-unix/* 然后再启动
三、在KVM上安装系统
1、安装windows
virt-install --name=win2008 --ram 512 --vcpus=1 --disk path=/var/lib/libvirt/images/win2008.img,size=30 --accelerate --cdrom /var/lib/libvirt/images/zh-\ Hans_windows_server_2008_datacenter_enterprise_standard_x86_dvd_x14-26742.iso --vnc --vncport=5917 --vnclisten=0.0.0.0 --network bridge=br0,model=virtio --noautoconsole
# 说明:
name:虚拟机名
ram:内存大小
vcpus:cpu核心数
disk path:虚拟机安装路径
cdrom:光盘镜像
vnc:指定vnc
vncport:指定vnc端口
vnclisten:监听地址
bridge:桥接模式
windows下用tightVNC viewer 远程连接10.0.0.121:5917 进行图形化安装
2、安装Linux
virt-install --name=centos7-1 --ram 1024 --vcpus=1 --disk path=/data/centos7-1.img,size=15 --accelerate --cdrom /data/CentOS-7-x86_64-DVD-1708\(1\).iso --vnc --vncport=5917 --vnclisten=0.0.0.0 --network bridge=br0,model=virtio --noautoconsole
四、虚拟机扩容
(1)、直接扩容
virsh shutdown test01.qcow2 //先关机
qemu-img info test01.qcow2
qemu-img resize test01.qcow2 +200G
(2)、在线扩容
# 查看现有磁盘
virsh domblklist centos7-1
# 创建一块qcow2虚拟磁盘
qemu-img create -f qcow2 /data/centos7-1.img 1G
# 在线添加这台qcow2虚拟磁盘
virsh attach-disk centos7-1 /data/centos7-1.img vdb --cache=none --subdriver=qcow2
五、配置更改
(1)、更改内存
# 1. 查看虚拟机当前内存
[root@sh-kvm-1 ~]# virsh dominfo kvm-1 | grep memory
Max memory: 4194304 KiB
Used memory: 4194304 KiB
# 2、动态设置内存为512MB,内存减少
virsh setmem kvm-1 524288
# 注意单位必须是KB
# 3、查看内存变化
# virsh dominfo kvm-1 | grep memory
Max memory: 14194304 KiB
Used memory: 524288 kiB
# 4、内存增加
virsh shutdown kvm-1
virsh edit kvm-1 # 直接更改memory
virsh create /etc/libvirt/demu/kvm-1/xml
# 之后操作1,2,3步骤增加内存
(2)、更改CPU
virsh shutdown kvm-1
virsh edit kvm-1
# <vcpu>2</vcpu> # 4 > 2
virsh create /etc/libvirt/demu/kvm-1/xml
六、KVM基本操作
(1)、查看虚拟机
# 查看运行的虚拟机
virsh list
# 查看所有虚拟机
virsh list --all
(2)、启动虚拟机
# 启动虚拟机
virsh start kvm-1
# 设置开机自启动
virsh autostart kvm-1
# 取消开机自启动
virsh autostart --disable kvm-1
(3)、连接虚拟机
# 连接
virsh console kvm-1
# 推出
ctrl+]
(4)、关闭虚拟机
virsh shutdown kvm-1
(5)、删除虚拟机
# 第一步,停掉虚拟机
virsh shutdown kvm-1
# 第二步
virsh destroy kvm-1
# 第三步
virsh undefine kvm-1
# 第四步
rm /dev/vg_shkvm1/kvm-1 # 不建议删除硬盘
(6)、快照管理
virsh snapshot-create 虚拟机 //创建快照
virsh snapshot-list --domain 虚拟机 //快照信息
virsh snapshot-revert 虚拟机 快照名 //恢复快照
virsh snapshot-delete --domain newframe --snapshotname 1520411749 删除快照
KVM的常用操作的更多相关文章
- 记录KVM虚拟机常用操作管理命令
环境说明 centos7中的KVM NAT方式是kvm安装后的默认方式.它支持主机与虚拟机的互访,同时也支持虚拟机访问互联网,但不支持外界访问虚拟机. 检查当前的网络设置 # virsh net-li ...
- KVM虚拟化管理 virt manager常用操作
部分涉及到Linux.Nginx.tomcat.MySQL等的点滴操作记录,时间长了,就忘掉了,偶尔整理一下操作的history,就此简要备份一下: [原][BG]-一次虚拟化环境实践简要记录: ht ...
- 【三】用Markdown写blog的常用操作
本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...
- php模拟数据库常用操作效果
test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...
- Mac OS X常用操作入门指南
前两天入手一个Macbook air,在装软件过程中摸索了一些基本操作,现就常用操作进行总结, 1关于触控板: 按下(不区分左右) =鼠标左键 control+按下 ...
- mysql常用操作语句
mysql常用操作语句 1.mysql -u root -p 2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...
- nodejs配置及cmd常用操作
一.cmd常用操作 1.返回根目录cd\ 2.返回上层目录cd .. 3.查找当前目录下的所有文件dir 4.查找下层目录cd window 二.nodejs配置 Node.js安装包及源码下载地址为 ...
- Oracle常用操作——创建表空间、临时表空间、创建表分区、创建索引、锁表处理
摘要:Oracle数据库的库表常用操作:创建与添加表空间.临时表空间.创建表分区.创建索引.锁表处理 1.表空间 ■ 详细查看表空间使用状况,包括总大小,使用空间,使用率,剩余空间 --详细查看表空 ...
- python 异常处理、文件常用操作
异常处理 http://www.jb51.net/article/95033.htm 文件常用操作 http://www.jb51.net/article/92946.htm
随机推荐
- The Preliminary Contest for ICPC Asia Xuzhou 2019 徐州网络赛 A Who is better?
A After Asgard was destroyed, tanker brought his soldiers to earth, and at the same time took on the ...
- 基于TCP的客户端和服务器端的代码设计
实验平台 linux 实验内容 编写TCP服务器和客户端程序,程序运行时服务器等待客户端连接.一旦连接成功,服务器显示客户端的IP地址和端口号,并向客户端发送字符串 实验原理 TCP是面向连接的通信, ...
- RF(For 循环)
一.介绍:RobotFrameWork 支持 FOR 循环语句,语法和 Python 的语法基本相同,但 RobotFrameWork 中,"FOR" 关键字前面需要增加一个 &q ...
- 10 微信小程序路由跳转
一.四种跳转方式 API路由详解 除了tabBar这种底部跳转的方法,我们还有路由跳转,以下四种方式: 1. wx.switchTab() :跳转到 tabBar 页面,并关闭其他所有非 tabBar ...
- JS中由闭包引发内存泄露的深思
目录 一个存在内存泄露的闭包实例 什么是内存泄露 JS的垃圾回收机制 什么是闭包 什么原因导致了内存泄露 参考 1.一个存在内存泄露的闭包实例 var theThing = null; var rep ...
- Sunday算法:字符串匹配算法进阶
背景 我们第一次接触字符串匹配,想到的肯定是直接用2个循环来遍历,这样代码虽然简单,但时间复杂度却是\(Ω(m*n)\),也就是达到了字符串匹配效率的下限.于是后来人经过研究,构造出了著名的KMP算法 ...
- 似乎是最实用的hashtable知识总结
哈希表:将对象转换为索引,然后存储在数组中. 定义注意点: 对象:就是面向对象中的对象,可以为任何东西.整数.浮点数.日期.字符串.类. 转换:通过hash函数来完成,hash函数是hash表的核心与 ...
- C. Coffee Break 贪心 思维 有点难 有意思
C. Coffee Break 这个贪心之前好像写过,还是感觉挺难的,有点不会写. 这个题目大意是:给你一个数列n个元素,然后给你一天的时间,给你一个间隔时间d, 问你最少要用多少天可以把这个数列的所 ...
- CGI (通用网关接口)
CGI cgi即 Common Gateway Interface 译作 通用网关接口 是应用程序与应用程序之间的输入输出协议.比如我们写信,规定了开头一句写称呼,中间写内容,最后署名和日期.看到这种 ...
- 软件工程复习 WHUT
软件过程模型: 瀑布模型:界限分明的独立阶段,计划驱动的软件过程.规范软件开发活动 (例如:可分为分析.开发.维护三个阶段) 也称生命周期模型.线性模型,采用结构化分析.设计.编程技术 不足的地方:知 ...