研究一下如何进入虚拟机
- https://blog.csdn.net/zhaihaifei/article/details/58156297—重要,使用virt-install安装虚拟机并配置桥接网络
- https://blog.csdn.net/ubuntu64fan/article/details/8137236—登录虚拟机配置的重要参考
- https://jingyan.baidu.com/article/d5a880ebaa643213f147ccc7.html—安装过程参考
- https://www.cnblogs.com/saryli/p/11827903.html—virt-install相关的参数
- https://my.oschina.net/williamherrychina/blog/56463-virt-install参数英文
- https://www.cnblogs.com/xia-dong/p/11511293.html—kvm中的virtio介绍
1.确认硬件平台是否支持虚拟化,并安装相应的工具,创建目录和硬盘、宿主机的网桥配置
```shell运行如下命令后,如果输出中有vmx或者svm,则cpu支持硬件虚拟化
egrep ‘(vmx|svm)’ —color /proc/cpuinfo
安装kvm的相应工具
sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils qemu virt-manager virt-viewer
创建虚拟机前创建存放iso和虚拟机镜像文件的目录,
并且将.iso文件放在/home/dick/iso目录下
mkdir /home/dick/iso
mkdir /home/dick/kvming
创建虚拟机硬盘qemu-img命令
qemu-img create -f qcow2 /home/dick/kvming/test.img 4G #在该目录下创建4G的硬盘存储 qemu0img create -f qcow2 /var/lib/libvirt/images/controller.img 100G #创建100G的虚拟机硬盘
宿主机的网桥配置,网桥配置要在创建虚拟机命令前进行,创建br-ctl网桥
——————宿主机的桥接网络配置————————-
sudo /etc/init.d/networking stop #先停止网络服务 sudo cp /etc/network/interfaces /etc/network/interfaces_bak #备份一套原有配置 sduo vim /etc/network/interfaces
—————————————-参考配置1
auto lo iface lo inet loopback auto em1 iface em1 inet manual #上网方式采用自动
添加网桥br-em1
auto br-em1 iface br-em1 inet static address 192.168.4.240 #将em1的ip地址分配给网桥。 netmask 255.255.255.0 network 192.168.4.0 broadcast 192.168.4.255 gateway 192.168.4.250
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 8.8.8.8
dns-search ctler
bridge_ports em1 #为网桥添加接口em1(之前默认的上网网口)
bridge_stp off
bridge_fd 0
bridge_maxwait 0
重启网络
<a name="1uHsd"></a>
# 2.用virt-install命令创建虚拟机
```shell
#-----------------virt-install相关参数介绍-----------------------#
virt-install --virt-type kvm #虚拟机类型
--name catserver1 #虚拟机名字
--ram 1024 #虚拟机内存大小,单位为MB,也可以写成-r 1024
--cdrom=/home/dick/iso/ubuntu-16.04.1-server-amd64.iso #光盘安装介质的路径 也可以写成 -c
--disk path=/var/lib/libvirt/images/controller.img,bus=virtio,size=100 #指定存储设备和属性,
#size是新建磁盘映像的大小,
#format是磁盘映像格式,
#如果已通过“-disk”选项指定了cdrom,但未指定“-cdrom”或任何其他安装选项,则“-disk”cdrom将用作安装介质。也即.img是创建出来的
--network network=default #网络配置,default是不进行配置
#--network bridge=br-ctl,model=virtio #配置网桥br-ctl
--os-type=linux
#-------------示例如下-----------#
virt-install -n controller -r 4096 -c /var/lib/libvirt/images/ubuntu-14.04.5-server-amd64.iso --disk path=/var/lib/libvirt/images/controller.img,bus=virtio,size=100 --network bridge=br-ctl,model=virtio --graphics vnc,listen=0.0.0.0 --noautoconsole -v
3.虚拟机的网络配置—桥接网络
#--------------虚拟机的网络配置-----------------
#通过ReaalVNC或者TigerVNC进行虚拟机已安装的操作系统,修改/etc/network/interfaces如下
#-------------------参考配置1
auto eth0
iface eth0 inet static
address 192.168.4.243 #这个ip地址和宿主机的IP地址是同一个网段,但是末尾不同,宿主机192.168.4.240
netmask 255.255.255.0 #剩下的netmask等和宿主机保持一致
network 192.168.4.0
broadcast 192.168.4.255
gateway 192.168.4.250
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 202.106.0.20
dns-search network
#-------------接着ping测试和宿主机192.168.4.240是否相通
4.远程连接和登录虚拟机,管理虚拟机
#--------------使用virsh console的方式进入虚拟机-------#
#宿主机上修改虚拟机vm1的配置文件
virsh edit vm1
#在<devices>...</devices>里面添加如下内容(注意, 如果已经存在就不要加了):
<devices>
...
<serial type='pty'>
<source path='/dev/pts/2'/>
<target port='0'/>
</serial>
<console type='pty' tty='/dev/pts/2'>
<source path='/dev/pts/2'/>
<target port='0'/>
</console>
</devices>
#在虚拟机ubuntu上设置使得virsh console可以登录虚拟机
#在虚拟机vm1中, 需要创建一个文件"/etc/init/ttyS0.conf", 内容如下(#注释部分可以忽略):
# ttyS0.conf - getty
# This service maintains a getty on ttyS0 from the point the system is
# started until it is shut down again.
start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]
respawn
exec /sbin/getty -L 115200 ttyS0 vt220
5.管理虚拟机命令
#---------管理虚拟机的命令-----------#
virsh start 虚拟机的名字 #启动虚拟机 virsh start catserver1
virsh shutdown catserver #关闭虚拟机
virsh list --all #查看当前系统的虚拟机
virsh vncdisplay catserver #查看VNC端口
#删除虚拟机
virsh destroy vm16 #强制停止虚拟机
virsh undefine vm16 #删除虚拟机
#之后删除虚拟机文件,()
updatedb
locate vm16
rm -rf /var.....
#启动kvm虚拟系统管理器
sudo virt-manager
- 虚拟化的三种网络访问方式
(1). 虚拟网络’default’: NAT(默认方式,支持虚拟机上网但不支持互相访问)
(2). 主机设备eth0(桥接’br0’): bridge方式,使得虚拟机成为网络中具有独立IP的主机,需要在宿主机网络上建立一个桥接器
(3). 主机设备eth0(根据实际情况而定): macvtap(支持互访) - Bridge桥接网络原理介绍
Bridge 将虚拟机桥接到host机器的网卡上,guest和host机器都通过bridge上网.对外不同的ip- 使得虚拟机成为网络中具有独立IP的主机
- 桥接网络(物理设备共享)是把一个物理设备复制到一台虚拟机上。
- 桥网的基本原理是创建一个桥接接口br0,然后在物理网卡和虚拟网络接口之间传递数据。
- 要被配置的物理网卡是可以工作并且是可以被外部网络访问的网卡,在ifconfig下是有物理ip的,比如eth0网卡,配置完后,在ifconfig下,host的eth0网卡的ip地址会消失不见,而新出现的br0中会出现和之前eth0相同的ip。这个不影响host上网
- .img和.iso压缩文件的关系
都是光盘的镜像文件,ISO可以用虚拟光驱软件来打开.IMG可以用HDCOPY或者DAEMON软件。其使用效果都是一样的.但是不同的虚拟光驱它所使用的镜象包扩展名也不一样的,所以你要压缩光盘的时候,必须要针对你所使用的虚拟光驱软件来做.ISO是比较通用的光盘镜象模式,但是往往有一些虚拟光驱不认这种格式