云计算之KVM安装(二)
调整虚拟机
虚拟化Intel使用的是intel VT-X AMD使用的是AMD-V
创建虚拟机步骤
1.准备虚拟机硬盘
2.需要系统iso镜像
3.需要安装一个vnc的客户端来连接
查看系统环境
[[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) [[email protected]-node1 ~]# uname -r 3.10.0-327.36.2.el7.x86_64
Centos7下载:http://pan.baidu.com/s/1c2MHsGg 密码:5w1u
检查是否有vmx
或者svm
[[email protected] ~]# 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用户态
模块
[[email protected] ~]# 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
[[email protected] ~]# yum install qemu-kvm qemu-kvm-tools libvirt net-tools -y libvirt 用来管理kvm kvm属于内核态,不需要安装。但是需要一些类似于依赖的 启动
[[email protected] ~]# systemctl start libvirtd.service [[email protected]-node1 ~]# systemctl enable libvirtd.service
启动之后我们可以使用ifconfig进行查看,libvirtd已经为我们安装了一个桥接网卡
[[email protected] ~]# 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地址
[[email protected] ~]# 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以上
[[email protected] 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命令,复制系统的镜像。只需要挂载上光盘即可
[[email protected] opt]# dd if=/dev/cdrom of=/opt/CentOS-7.2.iso [[email protected]-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 依赖给安装上的
[[email protected] opt]# qemu-img create -f raw /opt/CentOS-7.2-x86_64.raw 10G [[email protected]-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 代表镜像大小
安装启动虚拟机的包
[[email protected] tmp]# yum install -y virt-install
安装虚拟机
可以使用—help查看相关存储
[[email protected] tmp]# virt-install --help
我们可以指定虚拟机的CPU、磁盘、内存等
安装虚拟机
[[email protected] 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开始的
[[email protected] opt]# virsh list --all Id 名称 状态 ---------------------------------------------------- 2 CentOS-7.2-x86_64 running
[[email protected] 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
装系统步骤不详细说明了,过于简单,请自行百度
虚拟机安装完成后是关闭了,我们需要启动
[[email protected] opt]# virsh list --all Id 名称 状态 ---------------------------------------------------- - CentOS-7.2-x86_64 关闭 [[email protected]-node1 ~]# virsh start CentOS-7.2-x86_64 #CentOS-7.2-x86_64 是虚拟机的名字,是我们创建的时候定义的