KVM总结文档一(CentOS-6.5)

一:kvm安装

两台服务器

192.168.115.18
192.168.115.19

0.修改物理服务器时区

cp  /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime
yum  install  ntpdate  -y
echo  "*/5 * * * *  root   ntpdate  cn.pool.ntp.org"  >> /etc/crontab  &&  cat  /etc/crontab
service crond  stop  &&  service   crond  start

1.修改主机名

echo "192.168.1.154   kvm-node154.com   kvm-node154"  >>/etc/hosts
echo "192.168.1.155   kvm-node155.com   kvm-node155"  >>/etc/hosts
cat  /etc/hosts

2.修改内核模式(兼容内核)

sed  -i  "s/default=0/default=1/g"    /boot/grub/grub.conf   &&  cat  /boot/grub/grub.conf

3.关闭SELINUX

sed  -i   "s/SELINUX=enforcing/SELINUX=disabled/g"  /etc/selinux/config  &&  cat  /etc/selinux/config

4.关闭防火墙和NetworkManager

chkconfig  iptables  off
chkconfig  ip6tables off
chkconfig  NetworkManager   off

5.重启

yum  update  -y
reboot

6.重启完毕后,检测是否支持虚拟化

cat  /proc/cpuinfo | grep  -E  "vmx|svm"   --color=always

7.安装kvm虚拟化所需要的模块和工具

yum  install kvm python-virtinst libvirt tunctl bridge-utils  virt-manager  qemu-kvm-tools virt-viewer virt-v2v   libguestfs-tools   -y

8.配置libvirt客户端服务常用的远程连接别名

vi  /etc/libvirt/libvirt.conf
uri_aliases = [
        "kvm154=qemu+ssh://[email protected]/system",
        "kvm155=qemu+ssh://[email protected]/system",
]

9.启动libvirtd守护进程进行客户端登录测试

service libvirtd   start
virsh -c  kvm154
virsh -c  kvm155

10.配置libvirtd服务端,关闭TLS安装连接,打开TCP连接,设置TCP监听端口,TCP连接不适用认证授权的方式,设置socket的保存位置.

cp  /etc/libvirt/libvirtd.conf    /etc/libvirt/libvirtd.conf_$(date +%F)
cat  >>  /etc/libvirt/libvirtd.conf   << EOF
listen_tls = 0
listen_tcp = 1
tcp_port = "16666"
unix_sock_dir = "/var/run/libvirt"
auth_tcp = "none"
EOF
service  libvirtd  stop  &&  service  libvirtd  start

11.使libvirtd关闭TLS和打开TCP功能生效,两种方式

方法一:
sed -i ‘s/#LIBVIRTD_ARGS="--listen"/LIBVIRTD_ARGS="--listen"/g‘  /etc/sysconfig/libvirtd  
/etc/init.d/libvirtd restart    
netstat  -tulnp  | grep  16666
方法二:
 libvirtd  --listen  -d  或者   libvirtd -l -d

12.配置vnc监听地址,默认为127.0.0.1,更改为0.0.0.0,这样做的目的是在创建vm虚拟机时.就不需要指定--vnclisten 0.0.0.0

sed -i ‘s/#vnc_listen = "0.0.0.0"/vnc_listen = "0.0.0.0"/g‘  /etc/libvirt/qemu.conf  
cat  /etc/libvirt/qemu.conf  | more

13.查看kvm模块是否正常加载

lsmod  | grep  kvm

14.查看版本

virsh -version
/usr/libexec/qemu-kvm  -version

15.关闭NetworkManager网络管理服务器

chkconfig  NetworkManager off
service  NetworkManager  stop
service  NetworkManager  status

16.配置br0网卡

cd  /etc/sysconfig/network-scripts/
cp  ifcfg-eth0   ifcfg-br0

eth0配置如下:

[[email protected] network-scripts]# cat  ifcfg-eth0 
DEVICE=eth0
HWADDR=00:0C:29:57:87:7F
TYPE=Ethernet
BRIDGE=br0
UUID=14fbc589-a209-4b37-acd5-60ef51214cdb
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none

br0配置如下:

[[email protected] network-scripts]# cat  ifcfg-br0 
DEVICE=br0
HWADDR=00:0C:29:57:87:7F
TYPE=Bridge
UUID=14fbc589-a209-4b37-acd5-60ef51214cdb
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=192.168.1.154
NETMASK=255.255.255.0
GATEWAY=192.168.1.1

17.查看网桥

brctl show

二:kvm创建虚拟机

1.使用virt-install工具创建虚拟机,它会调用qemu-kvm

具体参数:

--name   虚拟机名称
--ram    分配内存,取值值不带单位,直接为数值,默认单位MB
--vcpus  分配的cpu个数,不能查过物理服务器总的核心数
--disk   虚拟机的磁盘位置,后面接 path=dir
path:磁盘镜像存储的位置.
device:设备类型  ,有cdrom ,disk,floppy
bus:磁盘类型:ide,scsi,usb,virtio,xen
perms:访问权限:rw,ro,sh(共享可读写),默认rw
size:磁盘大小,单位GB
format:磁盘格式.raw,qcow2,vmdk等
sparse:磁盘使用稀疏格式,即不立即分配指定大小的空间
--network  使用桥接模式
bridge:连接到指定桥接网卡
model:网卡设备型号.e1000,rtl8139,virtio
mac:固定mac地址.无论何种方式.对于kvm来说,前三段必须是54:52:00
--cdrom  指定iso镜像的位置
--vnc    指定启用vnc服务
--vncport vnc服务的开放端口,供远程连接使用
--vnclisten  默认为127.0.0.1,只运行自身访问自身,一般改为0.0.0.0
--os-type   Linux或者Windows或者unix
--os-variant 系统型号.包括 win7|vista|winxp64|winxp|win2k8|win2k3|freebsd8|generic|debiansqueeze|debianlenny|fedora16|fedora15|fedora14|rhel6|rhel5.4|rhel4|sles11|sles10|
--accelerate  加速

2.上传iso镜像,到指定目录,创建镜像存储位置

mkdir  /iso
mkdir  /vm

3.创建qcow2的格式的磁盘,必须在创建虚拟机之前先创建磁盘镜像

qemu-img create  -f  qcow2  /vm/api1-qcow2.img  8G 
virt-install --name api1 --ram 512 --vcpus 1 --disk  /vm/api1-qcow2.img,size=8,device=disk,format=qcow2,bus=virtio,perms=rw  --network bridge=br0,model=virtio --cdrom /iso/CentOS-6.6-x86_64-minimal.iso --vnc  --vncport 5911   --vnclisten=0.0.0.0   --os-type=linux  --os-variant=rhel6  --accelerate

4.Tigervnc连接

IP:5911  ,安装过程,完成安装.重启guestOS,重启完成之后,必须需要手动用virsh start  Name命令手动去打开guestOS客户机.

5.创建raw(虚拟机默认磁盘格式)的磁盘.可以直接创建,不需要先创建磁盘镜像.

virt-install --name  api2  --ram512 --vcpus 1  --disk   /vm/api2-raw.img,size=8,device=disk,format=raw,bus=virtio,perms=rw  --network bridge=br0,model=virtio  --cdrom  /iso/CentOS-6.6-x86_64-minimal.iso --vnc  --vncport=5912 --vnclisten=0.0.0.0 --os-tyep=linux --os-variant=rhel6 --acclerate

6.Tigervnc连接

IP:5912  ,安装过程,完成安装.重启guestOS.必须需要手动用virsh start  Name命令手动去打开guestOS客户机.

7.虚拟机安装之后,不能使用virsh shutdown Name,需要在虚拟机中安装acpid服务

tigervnc登录到虚拟机,配置eth0的ip地址,确保可以访问外网,然后

yum  install  -y  acpid   
chkconfig  acpid  on     
chkconfig   --list  | grep  acpid
reboot

8.虚拟机系统安装之后,配置虚拟机控制台登录配置,可以通过virsh  console  Name登录

(1)

echo  "ttyS0"  >>  /etc/securetty  &&  cat  /etc/securetty

(2)vi  /etc/grub.conf

rhgb quiet后面添加:console=ttyS0

(3)

echo "SO:12345:respawn:/sbin/agetty ttyS0 115200"  >> /etc/inittab   
cat  /etc/inittab

(4)

virsh   shutdown  Name    
sleep 10   &&  virsh start  Name

(5)

virsh  console   Name  注意虚拟机启动后,隔10s中才有正常启动信息显示.不必紧张.

9.配置VM时间

cp  /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime
vi  /etc/libvirt/qemu/api2.xml
<clock offset=‘utc‘>  ===> <clock offset=‘localtime‘>
yum  install  ntpdate  -y     
ntpdate  cn.pool.ntp.org  
echo  "*/5 * * * *  root   ntpdate  cn.pool.ntp.org"  >> /etc/crontab
service  crond  restart

三:kvm虚拟机本机克隆

必须需要说明的是.源客户机的状态必须处于关机或者暂停状态.本机克隆使用virt-clone命令进行.会自动生成镜像文件和XML配置文件.

1.本机克隆案例:

物理机IP地址:192.168.1.154
虚拟机名称: api1
虚拟机镜像: /vm/api1-qcow2.img
(1)停止api1
virsh  shutdown  api1      &&  sleep   30   &&  exit 0
(2)开始克隆:
virt-clone  -o  api1 -n  api2 -f  /vm/api2-qcow2.img
(3)启动api2,修改主机名和IP地址
virsh  console   api2
vi  /etc/sysconfig/network
HOSTNAME=vm-api2
GATEWAY=192.168.1.1

(4)网卡报错:

Bringing up interface eth0:  Device eth0 does not seem to be present, delaying initialization.
[FAILED]

(5)解决,编辑70-persistent-net.rules

cd /etc/udev/rules.d/   &&   vi 70-persisten-net.rules

将eth0的网卡的信息注释,将eth1的网卡name改为eth0.先记录下eth1的MAC信息.然后将eth1的mac地址粘贴到ifcfg-eth0中的mac地址.

如图:

(5)编辑api2的XML配置文件

virsh  edit   api2.xml
更改VNC的端口
port="5912"

四:kvm虚拟机磁盘快照

注意:

只有磁盘格式为qcow2的磁盘才支持磁盘快照和磁盘动态扩展.

1.基本命令

snapshot-list        Domain
snapshot-create-as   Domain  shotName
snapshot-revert   Domain    shotName
snapshot-delete  Domain   shotName

2.注意

创建快照必须保证虚拟机是开启的状态.恢复快照必须保证虚拟机是关机状态.

3.例子

Domain Name:   api2
shutdown  api2
snapshot-create-as   api2    api2_httpd
snapshot-list  api2
snapshot-revert   api2  api2_httpd
snapshot_delete  api2  api2_httpd
时间: 2025-01-05 07:17:25

KVM总结文档一(CentOS-6.5)的相关文章

Kvm学习文档记录

一.实验环境: 在vmware上打开vt支持选项: 操作系统信息: [[email protected] ~]# cat /etc/issue CentOS release 6.6 (Final) Kernel \r on an \m [[email protected] ~]# uname -a Linux node2 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

KVM总结文档二(CentOS-6.5)

五:kvm虚拟机磁盘扩展 两种方式: 1.添加一块新的虚拟磁盘 2.扩充原有磁盘的容量大小 注意: 只有磁盘格式为qcow2的磁盘才支持磁盘快照和磁盘动态扩展. 测试的虚拟机磁盘大小和格式. 方法一:添加新磁盘 1.查看已存在盘的大小 [[email protected] vm]# qemu-img   info  api1-qcow2.img  image: api1-qcow2.img file format: qcow2 virtual size: 8.0G (8589934592 byt

转自 阿里云技术文档的 centos + PHP 环境 搭建

产品亮点 1.基于阿里云CentOS7.2镜像 2.采用yum方式安装,软件安装均为默认目录,未作任何修改. 3.采用经典LAMP组合,拓展性强,资源丰富,解决方案较多 4.附带PhpMyadmin和FTP,并已配置用户,开通即可使用 产品说明 产品亮点: 1.基于阿里云CentOS7.2镜像 2.采用yum方式安装,软件安装均为默认目录,未作任何修改 3.采用经典LAMP组合,拓展性强,资源丰富,解决方案较多 4.附带PhpMyadmin和FTP,并已配置用户,开通即可使用 使用方法: 1.使

CentOS 6.5 十分钟搭建KVM虚拟机详细文档,从零到有,快速入门。

以下技术文档全部在我的公司服务器上成功搭建并且运行 KVM通俗的说就是一台服务器当多台用,详细介绍去百度和谷歌. 首先查看服务器是否支持虚拟化 [[email protected] ~]# grep -E '(vmx|svm)' /proc/cpuinfo --color 反馈如下:   flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov p    at pse36 clflush dts acpi mmx 

centos k8s部署文档

文档会持续更新,以下是部署k8s二进制安装方法版本环境:kubernetes1.10.6Docker1.13 kubernetes?系统的各组件需要使用?TLS?证书对通信进行加密,本文档使用?CloudFlare?的 PKI 工具集cfssl?来生成 Certificate Authority (CA) 和其它证书:生成的 CA 证书和秘钥文件如下:ca-key.pemca.pemkubernetes-key.pemkubernetes.pemkube-proxy.pemkube-proxy-

centos之查看文档命令

cat :直接查看一个文档内容tac :从最后一行开始倒着显示文档内容 $被看成是某一行结束标志 如果文档太长,cat显示不了全部内容,为了方便,我们可以使用 more,less命令 more:从文件开头开始显示内容,通过按下空格键查看下一屏内容,不允许向上翻.按回车键可以一行一行向下翻.看到最后一屏自动退出查看. less: 有more就有less,less不与more相反且更为强大,内容并不从尾部显示到头部,与more显示顺序相同,它集成了more的空格键与回程键功能,同时还有以下功能:1.

[dpdk] 读文档

前提:已读了这本书<<深入浅出dpdk(朱清河等著)>>. 目标:读官方文档,同时跟着文档进行安装编译等工作. 环境:thinkpadT450 + archlinux + kvm + CentOS 7(逐层自下而上的关系) KVM参数: sudo qemu-system-x86_64 -nographic -enable-kvm -numa node -numa node -drive file=disk.img,if=virtio -cdrom /home/tong/ISO/Ce

ovirt3.6安装文档

Ovirt 集群安装文档 > 集群配置 节点数量:3 存储类型:glusterfs > 主机配置 CPU:8核 内存:8G 硬盘:100G 系统:centos7-minimal-1611 最小化安装 > ovirt版本: 3.6 安装host主机 添加hosts文件解析 # vi /etc/hosts 增加内容如下:     ```     192.168.40.197 host01.jasgroup.cn     192.168.40.196 host02.jasgroup.cn   

zabbix监控平台部署详细文档

监控系统介绍 一:监控介绍 1.监控软件介绍:使用 SNMP 协议获取主机 CPU.内存.磁盘.网卡流量等数据.用脚本将获取到的 SNMP 数据存入数据库中,然后再使用一种名为 MRTG 的软件根据获取的数据绘制图表来分析数据的变化.MRTG(Multi Router Traffic Grapher),顾名思义,这款软件最初是设计用于监控网络链路流量负载的.它可以用过 SNMP 获取到设备的流量信息,并根据这些信息绘制成图表并保存为 PNG 格式的图片,再将这些 PNG 图片以HTML 页面的方