首页
关于本博客
友情链接
推荐
linux/shell
Search
1
LEDE官方固件安装中文语言包的方法
11,087 阅读
2
LEDE固件踢出弱信号客户端,实现WiFi无缝漫游脚本
9,183 阅读
3
基于CloudFlare API的纯Shell动态DNS(DDNS)脚本
8,153 阅读
4
一次OpenVPN交叉编译笔记
6,664 阅读
5
利用iptables的string模块来屏蔽域名(关键词匹配)
6,111 阅读
study
OpenWrt/LEDE
网络技术
数通
HCNP/CCNP
linux
shell
CentOS
Ubuntu/Debian
php
Linux应用
C#
C/C++
虚拟化
IDC
杂项
MySQL
运维笔记
zabbix
seafile
openvpn
QEMU/KVM
windows
html
nginx
互联网应用
IP地址段汇总
登录
Search
标签搜索
nginx
OpenWrt
openvpn
SSH
seafile
cloudflare
iptables
openssl
linux
letsencrypt
CentOS
反向代理
ftp
openvpn配置模板
vsftpd
seafile网盘
Linux启动脚本
ddns
nas
seafile服务器
自渡
累计撰写
75
篇文章
累计收到
1
条评论
首页
栏目
study
OpenWrt/LEDE
网络技术
数通
HCNP/CCNP
linux
shell
CentOS
Ubuntu/Debian
php
Linux应用
C#
C/C++
虚拟化
IDC
杂项
MySQL
运维笔记
zabbix
seafile
openvpn
QEMU/KVM
windows
html
nginx
互联网应用
IP地址段汇总
页面
关于本博客
友情链接
推荐
linux/shell
搜索到
1
篇与
QEMU/KVM
的结果
2018-10-15
在Linux下通过命令行部署KVM虚拟机
由于条件限制,一直没有机会在Linux下尝试安装kvm虚拟机,前几天刚好给笔记本安装了Ubuntu18.04,虽然个垃圾本,但是用来跑Linux是绰绰有余。而很多程序都不支持Linux,所以只能通过虚拟机安装Windows的方式来运行他们。实验环境操作系统:Ubuntu 18.04.1 LTS宿主机:联想G400笔记本CPU:i5-3230M内存:8G检查CPU是否支持虚拟化cat /proc/cpuinfo |grep vmx通过apt安装所需软件包sudo apt install qemu-kvm bridge-utils libvirt virtinst配置网桥KVM客户机连接网络常见的有三种方式:NAT模式:该方式是将主机作为路由器,充当客户机的网关,将客户机的外网流量NAT至主网卡从而使客户机能够访问互联网,该方式的缺点是外部网络无法连接到客户机,当然在宿主机上通过iptables来关闭nat并在上层路由器配好路由的话,是可以让外网来访问客户机的。桥接物理网络模式:在该模式下,宿主机充当一台交换机,客户机通过宿主机(交换机)来获取上级DHCP分配的IP地址,此时客户机与宿主机处于同一网段内,外部网络以及宿主机都可以与客户机进行连接。Host-Only模式:该模式与NAT模式类似,唯一不同的是只有宿主机才能与客户机建立连接。我这里进行实验的网络配置为桥接模式,客户机能够直接与宿主机处于同一网段,方便访问。Ubuntu/Debian系的操作系统,网卡的配置信息存在/etc/network/interfaces文件内或者在/etc/network/interfaces.d目录内。建立桥接网络应先配置虚拟网桥,这里将网桥设备命名为br0sudo nano /etc/network/interfaces在文件下方加入选项auto br0 iface br0 inet dhcp bridge_ports enp2s0 bridge_stp off bridge_fd 0保存后重启网络即可sudo systemctl restart networking编辑虚拟机的VNC选项以便进入客户机控制台sudo nano /etc/libvirt/qemu.conf取消以下选项的注释,修改后保存vnc_listen = "0.0.0.0" vnc_password = "设置你的密码"重新启动libvirtdsudo /etc/init.d/libvirtd restart创建虚拟磁盘先创建一个目录用于存放虚拟机的安装镜像及磁盘文件sudo mkdir -p /home/kvm/iso sudo mkdir -p /home/kvm/instance使用qemu-img命令创建一块大小为20G,格式为qcow2的虚拟磁盘,用于等会挂载到客户机上,名称可自定义qemu-img create -f qcow2 /home/kvm/instance/instance01.qcow 20G配置客户机并完成系统安装首先下载镜像,这里演示的是安装CentOS6.10 64位wget -P /home/kvm/iso/ http://mirrors.163.com/centos/6/isos/x86_64/CentOS-6.10-x86_64-minimal.iso使用virt-install命令定义一台客户机virt-install \ --name=instance01 \ --virt-type=kvm \ --hvm --ram=1024 \ --vcpus=1 \ --network bridge=br0,model=virtio \ --graphics vnc,port=5900 \ --disk path=/home/kvm/instance/instance01.qcow,bus=virtio \ --os-type=linux \ --cdrom=/home/kvm/iso/CentOS-6.10-x86_64-minimal.iso参数解读--name:客户机名称,最后配置文件会存在/etc/libvirt/qemu/目录下 --virt-type:虚拟类型,一般是kvm,也可以是xen等等 --ram:分配给客户机的内存大小 --vcpus:分配给客户机的CPU个数 --network:网络配置,这里将网桥设备配置为br0,驱动为virtio --graphics:VNC相关配置,必选,用于通过VNC进入客户机控制台并进行系统安装 --disk path:输入刚才生成的虚拟磁盘的路径,将虚拟磁盘挂载到客户机,驱动为virtio --os-type:操作系统类型 --cdrom:输入系统iso镜像路径,用于系统安装上一步骤的命令执行完毕后,客户机会立即启动,所以可以通过VNC客户端,连接相应的端口进行操作系统的安装客户机的管理命令在宿主机上,管理客户机的工具主要是virsh命令,常用命令有:列出所有客户机sudo virsh list --all 或者 sudo virsh --connect qemu:///system list --all启动客户机sudo virsh start 客户机名关闭客户机sudo virsh shutdown 客户机名shutdown的方式往往不能够关闭虚拟机,所以应给客户机安装acpid并设为开机自启sudo yum -y install acpid /etc/init.d/acpid start chkconfig --add acpid连接客户机控制台sudo virsh console 客户机名强行关闭一台客户机(从列表删除,可重新定义)sudo virsh destroy 客户机名从xml文件定义一台客户机,用于解决destroy后,客户机不在列表的问题sudo virsh define /etc/libvirt/qemu/客户机名彻底删除客户机sudo virsh undefine 客户机名挂起客户机sudo virsh suspend 客户机名恢复被挂起的客户机sudo virsh resume 客户机名使客户机在宿主机开机后自动启动sudo virsh autostart 客户机名取消客户机随宿主机的启动而启动sudo virsh autostart --disable
2018年10月15日
3,353 阅读
0 评论
0 点赞