“KVM的环境配置及安装(本地版)”的版本间的差异

来自CloudWiki
跳转至: 导航搜索
配置本地yum源安装kvm
 
(未显示5个用户的19个中间版本)
第1行: 第1行:
 +
==所需软件==
 +
 
==KVM环境配置==
 
==KVM环境配置==
 
===安装Centos===
 
===安装Centos===
第48行: 第50行:
 
如果执行这条命令的返回结果为0则表示CPU不支持虚拟化,如果返回结果为1或者大于1到数字则表示CPU支持虚拟。其中vmx为Intel的CPU指令集,svm为AMD的CPU指令集。
 
如果执行这条命令的返回结果为0则表示CPU不支持虚拟化,如果返回结果为1或者大于1到数字则表示CPU支持虚拟。其中vmx为Intel的CPU指令集,svm为AMD的CPU指令集。
 
==安装KVM==
 
==安装KVM==
===安装KVM软件包===
+
===配置本地yum源===
===配置本地yum源安装kvm===
 
  
创建iso存放目录和挂载目录
+
[root@controller ~]# mkdir /mnt/centos
  
mkdir /mnt/iso
+
[root@controller ~]# mount -o loop /dev/sr0 /mnt/centos(此命令没有任何输出,如果有输出就说明发生了错误)
  
mkdir /mnt/cdrom
+
[root@controller ~]# ls /mnt/centos
  
将ios镜像上传到/mnt/iso 
+
<nowiki>CentOS_BuildTag  EULA  images      repodata              RPM-GPG-KEY-CentOS-Testing-6
  
cp /dev/sr0 /mnt/iso
+
EFI              GPL  isolinux  Packages RPM-GPG-KEY-Centos-Debug-6  RPM-GPG-KEY-CentOS-6  TRANS.TBL</nowiki>
 
 
挂载 mount -o loop /mnt/iso /mnt/cdrom
 
 
 
ls /mnt/cdrom
 
  
 
移动/etc/yum.repo.d文件里的*repo文件
 
移动/etc/yum.repo.d文件里的*repo文件
第69行: 第66行:
 
mkdir /etc/yum.repos.d/bak
 
mkdir /etc/yum.repos.d/bak
  
cd /etc/yum.repo/
+
cd /etc/yum.repos.d/
 +
 
 +
[[文件:190528.PNG|700px]]
  
 
mv *.repo bak
 
mv *.repo bak
第75行: 第74行:
 
创建自己的repo文件
 
创建自己的repo文件
  
vi myself.repo
+
cd /etc/yum.repos.d
  
[base]
+
[root@controller yum.repos.d]# vi local.repo
  
name=cdrom
+
<nowiki>[centos]
  
baseurl=file:///mnt/cdrom
+
name=centos
  
enabled=1
+
baseurl=file:///mnt/centos
  
gpgckeck=0
+
gpgcheck=0
  
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-CentOS-6
+
enabled=1</nowiki>
  
 
输入rm -f /var/run/yum.pid
 
输入rm -f /var/run/yum.pid
第93行: 第92行:
 
清除缓存
 
清除缓存
  
此时本地yum源就配置好了
+
yum clean all
  
安装kvm软件包
+
yum repolist
  
[root@localhost ~]#yum -y install kvm virt-manager libvirt libvirt-python python-virtinst libvirt-client qemu-kvm qemu-img
+
<nowiki>Loaded plugins: fastestmirror, langpacks
 +
Loading mirror speeds from cached hostfile
 +
centos/primary_db                                          | 2.8 MB  00:03
 +
repo id                              repo name                            status
 +
centos                              centos                              3,723
 +
repolist: 3,723</nowiki>
  
  
 +
此时本地yum源就配置好了
  
[root@localhost ~]# yum -y install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v libguestfs-tools
+
===安装kvm软件包===
  
<nowiki>  perl-Pod-Simple.x86_64 1:3.13-144.el6
+
[root@localhost ~]#yum -y install kvm virt-manager libvirt libvirt-python python-virtinst libvirt-client qemu-kvm qemu-img
  perl-Test-Harness.x86_64 0:3.17-144.el6
 
  perl-Test-Simple.x86_64 0:0.92-144.el6
 
  perl-devel.x86_64 4:5.10.1-144.el6
 
  perl-libs.x86_64 4:5.10.1-144.el6
 
  perl-version.x86_64 3:0.77-144.el6
 
  
Complete!
+
[[文件:521.PNG|700px]]
</nowiki>
 
  
 
===启动libvirt===
 
===启动libvirt===
  
 +
[root@localhost ~]#service libvirtd restart
  
https://baike.baidu.com/item/libvirt/2515334?fr=aladdin
+
[[文件:5211314.PNG|700px]]
 
 
[root@localhost ~]# /etc/init.d/libvirtd restart
 
 
<nowiki>Stopping libvirtd daemon:                                  [FAILED]
 
Starting libvirtd daemon: 2019-02-06 11:10:47.433+0000: 31229: info : libvirt vrsion: 0.10.2, package: 64.el6 (CentOS BuildSystem <http://bugs.centos.org>, 208-06-19-16:23:48, x86-01.bsys.centos.org)
 
2019-02-06 11:10:47.433+0000: 31229: warning : virGetHostname:2279 : getaddrinf failed for 'victory': Name or service not known
 
                                                          [ OK  ]
 
You have mail in /var/spool/mail/root
 
</nowiki>
 
 
 
出现了一个warning,是由于域名缺乏解析的原因,我们来配一下。
 
 
 
vi /etc/hosts
 
 
 
<nowiki>127.0.0.1  localhost localhost.localdomain localhost4 localhost4.localdomain4
 
::1        localhost localhost.localdomain localhost6 localhost6.localdomain6
 
10.0.0.48      victory
 
</nowiki>
 
 
 
vi /etc/resolv.conf
 
 
 
<nowiki>nameserver 114.114.114.114</nowiki>
 
 
 
[root@victory network-scripts]# service libvirtd restart
 
 
 
<nowiki>Stopping libvirtd daemon:                                  [  OK  ]
 
Starting libvirtd daemon:                                  [  OK  ]</nowiki>
 
 
 
可以看到这时警告消失。
 
 
 
 
 
[https://www.cnblogs.com/chris-cp/p/4222372.html libvirt常用命令]
 
  
 
===libvirt连接KVM===
 
===libvirt连接KVM===
  
[root@localhost ~]# virsh -c qemu:///system list   //用libvirt连接到超级管理程序
+
[root@localhost ~]# virsh -c qemu:///system list         //用libvirt连接到超级管理程序
  
 
  <nowiki>Id    Name                          State
 
  <nowiki>Id    Name                          State
 
----------------------------------------------------</nowiki>
 
----------------------------------------------------</nowiki>
  
[root@localhost ~]# lsmod |grep kvm   // lsmod 命令:是一个小程序,用来显示文件、proc/modules的信息,也就是显示当前内核模块装载的模块
+
[root@localhost ~]# lsmod |grep kvm             // lsmod 命令:是一个小程序,用来显示文件、proc/modules的信息,也就是显示当前内核模块装载的模块
  
 
  <nowiki>kvm_intel              54285  0  
 
  <nowiki>kvm_intel              54285  0  

2019年5月30日 (四) 01:53的最新版本

所需软件

KVM环境配置

安装Centos

Vietual1-13.png

修改内核模式为兼容内核启动

[root@ localhost ~]# uname -a

Linux victory 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux


[root@ localhost ~]#vim /boot/grub/grub.conf

将default=0修改为default=1

关闭SElinux,重启后生效

[root@ localhost ~]#vim /etc/sysconfig/selinux

# 修改SELINUX=disabled
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

关闭防火墙

[root@ localhost ~]#chkconfig ip6tables off

[root@ localhost ~]#chkconfig iptables off

重启

reboot

查看SELINUX更改效果:

[root@victory ~]# getenforce

Disabled


查看是否支持虚拟化

[root@localhost ~]# egrep -c '(vmx|svm)' /proc/cpuinfo

16

如果执行这条命令的返回结果为0则表示CPU不支持虚拟化,如果返回结果为1或者大于1到数字则表示CPU支持虚拟。其中vmx为Intel的CPU指令集,svm为AMD的CPU指令集。

安装KVM

配置本地yum源

[root@controller ~]# mkdir /mnt/centos

[root@controller ~]# mount -o loop /dev/sr0 /mnt/centos(此命令没有任何输出,如果有输出就说明发生了错误)

[root@controller ~]# ls /mnt/centos

CentOS_BuildTag  EULA  images       repodata              RPM-GPG-KEY-CentOS-Testing-6

EFI              GPL   isolinux  Packages RPM-GPG-KEY-Centos-Debug-6  RPM-GPG-KEY-CentOS-6  TRANS.TBL

移动/etc/yum.repo.d文件里的*repo文件

mkdir /etc/yum.repos.d/bak

cd /etc/yum.repos.d/

190528.PNG

mv *.repo bak

创建自己的repo文件

cd /etc/yum.repos.d

[root@controller yum.repos.d]# vi local.repo

[centos]

name=centos

baseurl=file:///mnt/centos

gpgcheck=0

enabled=1

输入rm -f /var/run/yum.pid

清除缓存

yum clean all

yum repolist

Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
centos/primary_db                                          | 2.8 MB   00:03
repo id                              repo name                            status
centos                               centos                               3,723
repolist: 3,723


此时本地yum源就配置好了

安装kvm软件包

[root@localhost ~]#yum -y install kvm virt-manager libvirt libvirt-python python-virtinst libvirt-client qemu-kvm qemu-img

521.PNG

启动libvirt

[root@localhost ~]#service libvirtd restart

5211314.PNG

libvirt连接KVM

[root@localhost ~]# virsh -c qemu:///system list //用libvirt连接到超级管理程序

Id    Name                           State
----------------------------------------------------

[root@localhost ~]# lsmod |grep kvm // lsmod 命令:是一个小程序,用来显示文件、proc/modules的信息,也就是显示当前内核模块装载的模块

kvm_intel              54285  0 
kvm                   333172  1 kvm_intel

[root@localhost ~]# virsh --version

0.10.2

[root@localhost ~]# virt-install --version

0.600.0

[root@localhost ~]# ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-kvm //创建软链接