首页 > 代码库 > 云计算之KVM安装(二)
云计算之KVM安装(二)
云计算之KVM安装(二)
调整虚拟机
虚拟化Intel使用的是intel VT-X AMD使用的是AMD-V
创建虚拟机步骤
1.准备虚拟机硬盘
2.需要系统iso镜像
3.需要安装一个vnc的客户端来连接
查看系统环境
[root@linux-node1 ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@linux-node1 ~]# uname -r
3.10.0-327.36.2.el7.x86_64
Centos7下载:http://pan.baidu.com/s/1c2MHsGg 密码:5w1u
检查是否有vmx
或者svm
[root@linux-node1 ~]# grep -E ‘(vmx|svm)‘ /proc/cpuinfo
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ida arat epb pln pts dtherm hwp hwp_noitfy hwp_act_window hwp_epp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm rdseed adx smap xsaveopt
安装kvm用户态
模块
[root@linux-node1 ~]# yum list|grep kvm
libvirt-daemon-kvm.x86_64 1.2.17-13.el7_2.5 updates
pcp-pmda-kvm.x86_64 3.10.6-2.el7 base
qemu-kvm.x86_64 10:1.5.3-105.el7_2.7 updates
qemu-kvm-common.x86_64 10:1.5.3-105.el7_2.7 updates
qemu-kvm-tools.x86_64 10:1.5.3-105.el7_2.7 updates
[root@linux-node1 ~]# yum install qemu-kvm qemu-kvm-tools libvirt net-tools -y
libvirt 用来管理kvm
kvm属于内核态,不需要安装。但是需要一些类似于依赖的
启动
[root@linux-node1 ~]# systemctl start libvirtd.service
[root@linux-node1 ~]# systemctl enable libvirtd.service
启动之后我们可以使用ifconfig进行查看,libvirtd已经为我们安装了一个桥接网卡
[root@linux-node1 ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.56.11 netmask 255.255.255.0 broadcast 192.168.56.255
inet6 fe80::20c:29ff:fef4:affe prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:f4:af:fe txqueuelen 1000 (Ethernet)
RX packets 34379 bytes 41300995 (39.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 11590 bytes 1384679 (1.3 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 103 bytes 7866 (7.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 103 bytes 7866 (7.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:f6:bd:c9 txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
libvirtd为我们启动了一个dnsmasqp,这个主要是用来dhcp连接的,这个工具会给我们的虚拟机分配IP地址
[root@linux-node1 ~]# ps -ef|grep dns
nobody 5233 1 0 14:27 ? 00:00:00 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/libexec/libvirt_leaseshelper
root 5234 5233 0 14:27 ? 00:00:00 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/libexec/libvirt_leaseshelper
root 5310 2783 0 14:31 pts/0 00:00:00 grep --color=auto dns
查看磁盘空间大小
最好是20G以上
[root@linux-node1 tmp]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 48G 1.7G 46G 4% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 497M 167M 330M 34% /boot
tmpfs 378M 0 378M 0% /run/user/0
上传镜像
提示:如果使用rz上传镜像可能会出现错误,所以我们使用dd命令,复制系统的镜像。只需要挂载上光盘即可
[root@linux-node1 opt]# dd if=/dev/cdrom of=/opt/CentOS-7.2.iso
[root@linux-node1 opt]# ll
total 33792
-rw-r--r-- 1 root root 34603008 Jun 12 18:18 CentOS-7.2-x86_64-DVD-1511.iso
下载VNC
下载地址:http://www.tightvnc.com/download/2.8.5/tightvnc-2.8.5-gpl-setup-64bit.msi
安装完VNC如下图
创建磁盘
提示: qemu-img软件包是我们安装qemu-kvm-tools 依赖给安装上的
[root@linux-node1 opt]# qemu-img create -f raw /opt/CentOS-7.2-x86_64.raw 10G
[root@linux-node1 opt]# ll
总用量 617472
-rw-r--r--. 1 root root 10737418240 11月 16 09:52 CentOS-7.2-x86_64.raw
-rw-r--r--. 1 root root 632291328 6月 6 16:20 CentOS-7-x86_64-Minimal-1511.iso
-f 制定虚拟机格式,raw是裸磁盘
/opt/Centos 存放路径
10G 代表镜像大小
安装启动虚拟机的包
[root@linux-node1 tmp]# yum install -y virt-install
安装虚拟机
可以使用—help查看相关存储
[root@linux-node1 tmp]# virt-install --help
我们可以指定虚拟机的CPU、磁盘、内存等
安装虚拟机
[root@linux-node1 opt]# virt-install --name CentOS-7.2-x86_64 --virt-type kvm --ram 1024 --cdrom=/opt/CentOS-7-x86_64-Minimal-1511.iso --disk path=/opt/CentOS-7.2-x86_64.raw --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
--name = 给虚拟机起个名字
--ram = 内存大小
--cdrom = 镜像位置,就是我们上传iso镜像的位置,我放在/tmp下了
--disk path = 指定磁盘
--network network= 网络配置 default 就会用我们刚刚ifconfig里面桥接的网卡
--graphics vnc,listen= 监听vnc,
默认连接端口是从5900开始的
[root@linux-node1 opt]# virsh list --all
Id 名称 状态
----------------------------------------------------
2 CentOS-7.2-x86_64 running
[root@linux-node1 tmp]# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2036/mysqld
tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN 5767/qemu-kvm
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 4401/rpcbind
tcp 0 0 0.0.0.0:4369 0.0.0.0:* LISTEN 1163/epmd
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 5233/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1105/sshd
tcp 0 0 0.0.0.0:15672 0.0.0.0:* LISTEN 1101/beam
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1701/master
tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN 1101/beam
tcp6 0 0 :::111 :::* LISTEN 4401/rpcbind
tcp6 0 0 :::4369 :::* LISTEN 1163/epmd
tcp6 0 0 :::22 :::* LISTEN 1105/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1701/master
tcp6 0 0 :::5672 :::* LISTEN 1101/beam
udp 0 0 192.168.122.1:53 0.0.0.0:* 5233/dnsmasq
udp 0 0 0.0.0.0:67 0.0.0.0:* 5233/dnsmasq
udp 0 0 0.0.0.0:111 0.0.0.0:* 4401/rpcbind
udp 0 0 0.0.0.0:123 0.0.0.0:* 866/chronyd
udp 0 0 127.0.0.1:323 0.0.0.0:* 866/chronyd
udp 0 0 0.0.0.0:760 0.0.0.0:* 4401/rpcbind
udp6 0 0 :::111 :::* 4401/rpcbind
udp6 0 0 ::1:323 :::* 866/chronyd
udp6 0 0 :::760 :::* 4401/rpcbind
提示:因为vnc
默认是从5900
开始的,所以我们如果是第一台不需要输入端口号
安装界面如下:
因为centos7 默认网卡发生改变,我们需要修改内核参数,使用eth0作为网卡
光标移动到Install CentOS上
,按tab
键 输入net.ifnames=0 biosdevname=0
回车
分区说明
提示:我们不分交换分区,因为公有云上的云主机都是没有交换分区的
分区如下:
然后我们点击Done
本次分配分区按照10G内存
进行分配
分配标准分区
温馨提示:在虚拟机的世界里,越简单越好。像阿里云系统分区以前是给20个G,现在是给40个G
装系统步骤不详细说明了,过于简单,请自行百度
虚拟机安装完成后是关闭了,我们需要启动
[root@linux-node1 opt]# virsh list --all
Id 名称 状态
----------------------------------------------------
- CentOS-7.2-x86_64 关闭
[root@linux-node1 ~]# virsh start CentOS-7.2-x86_64
#CentOS-7.2-x86_64 是虚拟机的名字,是我们创建的时候定义的
云计算之KVM安装(二)