KVM部署及概念笔记

云计算概述:

什么是云计算:资源使用和交付模式。

虚拟化:一种具体的技术,用来将物理机虚拟成为多个相互独立的虚拟机。

云计算不等于虚拟化。使用了虚拟化的技术做支撑。

IAAS 基础设施即服务

PAAS

SAAS

私有云 公有云 混合云

KVM。  服务器虚拟化  桌面虚拟化 应用虚拟化

硬件虚拟化。Intel vt-x/EPT  AMD  AMD-v /RVI

libvirt   libvrit API库 +  libvirtd datemon + 用户工具(virsh)

xen kvm esxi qemu virtualbox

virsh shutdown   start  undefine  list edit

libvrit xml

#####################################################################################################################################################################33

[[email protected] ~]# cat /etc/redhat-release

CentOS Linux release 7.1.1503 (Core)

[[email protected] ~]# grep -E ‘(vmx|svm)‘ /proc/cpuinfo               ----查看是否支持虚拟化

[[email protected] ~]# yum install qemu-kvm qemu-kvm-tools virt-manager libvirt virt-install -y

qemu-kvm:用户态的程序与kvm进行交互

qemu-kvm-tools:用户态的程序与kvm进行交互的工具

virt-manager:虚拟化管理的工具

libvirt:

virt-install:

创建一个10G的硬盘:

[[email protected] ~]# qemu-img create -f raw /opt/CentOS-7.1-x86_64.raw 10G

Formatting ‘/opt/CentOS-7.1-x86_64.raw‘, fmt=raw size=10737418240

查看是否有kvm:

[[email protected] ~]# lsmod |grep kvm

kvm_intel             148081  0

kvm                   461126  1 kvm_intel

启动libvirtd并设置开机自动加载并查看状态:

[[email protected] ~]# systemctl enable libvirtd.service

[[email protected] ~]# systemctl start libvirtd.service

[[email protected] ~]# systemctl status libvirtd.service

将光盘挂载上:

[[email protected] ~]# mount /dev/cdrom /mnt

mount: /dev/sr0 is write-protected, mounting read-only

使用dd命令做一个ISO镜像:

[[email protected] ~]# dd if=/dev/cdrom of=/opt/CentOS-7.1.iso

8419328+0 records in

8419328+0 records out

4310695936 bytes (4.3 GB) copied, 285.28 s, 15.1 MB/s

创建一台kvm虚拟机:(首先保证有vnc客户端)

[[email protected] ~]# virt-install --name CentOS-7.1-x86_64 --virt-type kvm --ram 1024 --cdrom=/opt/CentOS-7.1.iso --disk path=/opt/CentOS-7.1-x86_64.raw --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole

Starting install...

Creating domain...                                                                                            |    0 B  00:00:03

Domain installation still in progress. You can reconnect to

the console to complete the installation process.

打开VNC客户端:10.0.0.111:5900

tab键:指定内核参数  net.ifnames=0 biosdevname=0     装出来的系统就是eth0

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

[[email protected] qemu]# virsh list                ----查看虚拟机是否运行

Id    Name                           State

----------------------------------------------------

2     CentOS-7.1-x86_64              running

[[email protected] qemu]# virsh list -all           ----查看所有虚拟机是否运行

Id    Name                           State

----------------------------------------------------

2     CentOS-7.1-x86_64              running

[[email protected] qemu]# virsh edit CentOS-7.1-x86_64    -----编辑虚拟机,通过xml

[[email protected] qemu]# virsh start CentOS-7.1-x86_64    -----启动虚拟机

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

管理kvm虚拟机:

[[email protected] qemu]# virsh edit CentOS-7.1-x86_64

<vcpu placement=‘auto‘ current="1">4</vcpu>       将cpu设置为自动调整,最低一个,最大四个

改完之后重启才生效

[[email protected] qemu]# virsh shutdown  CentOS-7.1-x86_64

[[email protected] qemu]# virsh start CentOS-7.1-x86_64

设置成2个cpu

[[email protected] qemu]# virsh setvcpus CentOS-7.1-x86_64 2 --live

设置成3个cpu

[[email protected] qemu]# virsh setvcpus CentOS-7.1-x86_64 3 --live

总结:只支持热添加,不支持热删除

回虚拟机查看:

[[email protected] qemu]cat /proc/cpuinfo         ----就可以看到cpu有4核了

########设置内存的热添加与热减少########

[[email protected] qemu]# virsh edit CentOS-7.1-x86_64

<memory unit=‘KiB‘>4048576</memory>

<currentMemory unit=‘KiB‘>1048576</currentMemory>

改完之后重启才生效

[[email protected] qemu]# virsh shutdown  CentOS-7.1-x86_64

[[email protected] qemu]# virsh start CentOS-7.1-x86_64

更改之后回虚拟机查看,内存从1G变成了721M

KVM之内存管理的气球模式:

[[email protected] ~]# virsh qemu-monitor-command CentOS-7.1-x86_64 --hmp --cmd info balloon

balloon: actual=1024

[[email protected] ~]# virsh qemu-monitor-command CentOS-7.1-x86_64 --hmp --cmd balloon 600

回虚拟机查看,内存从721变成了297M

[[email protected] ~]# virsh qemu-monitor-command CentOS-7.1-x86_64 --hmp --cmd balloon 2000

回虚拟机查看,内存从297变成了1697M

################网络##################

添加一个网桥:

[[email protected] opt]# brctl addbr br0

桥接网络:

[[email protected] ~]# brctl addif br0 eth0 && ip addr del dev eth0 10.0.0.111/24 && ifconfig br0 10.0.0.111/24 up && routeadd default gw 10.0.0.2 && iptables -F

[[email protected] ~]# virsh edit CentOS-7.1-x86_64

<interface type=‘bridge‘>

<mac address=‘52:54:00:f3:42:55‘/>

<source bridge=‘br0‘/>

此处修改后kvm虚拟机里面的网桥就会变成和宿主机一个网段的,并且可以用ssh客户端登录

如果IP地址出现的全部是mac地址,则需要把IP地址设置成静态的,并设置DNS,然后才能登录和ping通外网

#############硬盘############

全镜像模式          稀疏模式

raw                   qcow2

[[email protected] ~]# qemu-img info /opt/CentOS-7.1-x86_64.raw

image: /opt/CentOS-7.1-x86_64.raw

file format: raw

virtual size: 10G (10737418240 bytes)

disk size: 1.3G

#I/O优化  CDN公司必问

Virtio  virio-net virtio-blk 半虚拟化

#scheudler

[[email protected] ~]# dmesg | grep -i scheduler

[    0.775193] io scheduler noop registered

[    0.775195] io scheduler deadline registered (default)

[    0.775396] io scheduler cfq registered

[[email protected] ~]# cat /sys/block/sda/queue/scheduler

noop [deadline] cfq

[[email protected] ~]# echo cfq > /sys/block/sda/queue/scheduler

[[email protected] ~]# cat /sys/block/sda/queue/scheduler

noop deadline [cfq]

永久修改 加入内核参数    elevator=noop

时间: 2024-11-13 07:58:07

KVM部署及概念笔记的相关文章

RHCA CL220实战系列(一)之KVM部署CloudForms

1. 概述 红帽公司推出了混合云CloudForms解决方案,redhat的宗旨在于通过CloudForms能够管理所有的基础架构设施如RHEV,VMware和云(AWS和OpenStack),实现集中化管理平台.CloudForms由Engine引擎,VMDB虚拟数据库等组成,其中Engine作为CloudForms中核心功能,负责CloudForms的日常管理工作. CloudForms Engine简称CFME,是一个已经制定好的虚拟机,通过部署该虚拟机,可以快速的部署CloudForms

KVM部署LVS集群故障案例一则

一.故障现象 KVM部署LVS(Linux Virtual Server)集群后,能够单独以HTTP方式访问RS(Real Server)的实际IP,但无法通过VIP(Virtual IP)访问. 二.故障分析过程   1.简化架构   在原部署环境中,采用的架构是LVS的DR(Direct Return)模式,如下图所示: 为了便于故障排查,我们简化为 也就是在2台宿主机上,各保留一个虚拟机,角色分别是LVS的Director(调度器)和RS. 该架构中的服务器(及虚拟机)的IP和MAC地址如

Hadoop 2.2.0部署安装(笔记,单机安装)

SSH无密安装与配置 具体配置步骤: ◎ 在root根目录下创建.ssh目录 (必须root用户登录) cd /root & mkdir .ssh chmod 700 .ssh & cd .ssh ◎ 创建密码为空的 RSA 密钥对: ssh-keygen -t rsa -P "" ◎ 在提示的对称密钥名称中输入 id_rsa将公钥添加至 authorized_keys 中: cat id_rsa.pub >> authorized_keys chmod 6

kvm虚拟化学习笔记(二十一)之KVM性能优化学习笔记

本学习笔记系列都是采用CentOS6.x操作系统,KVM虚拟机的管理也是采用virsh方式,网上的很多的文章都基于ubuntu高版本内核下,KVM的一些新的特性支持更好,本文只是记录了CentOS6.x系列操作系统下KVM优化的点,有很多都是默认支持开启了的,除了采用virtio方式的磁盘IO,与网络IO接口优化之外,其它真是无需太多优化. 1. CPU性能优化 (1) 服务器或宿主机主板BIOS中开启Intel Virtualization Technology(简称VT), 如果主板支持In

KVM部署及硬件参数更改

一.kvm虚拟化环境搭建准备1.硬件环境       kvm只能部署在物理机上面.2.BIOS开启VT Virtualization Tech [Enabled] 3.查看cpu 是否支持kvm 全虚拟化    # grep "flags" /proc/cpuinfo|uniq flags : fpu vme de pse tsc msr pae mce cx8 apic sepmtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr

openstack项目【day24】:KVM部署

本节内容 虚拟化支持 软件准备 检查CPU虚拟化支持 安装软件包 激活并启动libvirtd服务 网络模式 配置桥接网络 验证网络 尝试连接Hypervisor 创建虚拟机 虚拟机操作 一.虚拟化支持 KVM虚拟化需要CPU的硬件辅助虚拟化的支持,用来加速,在本环境中为Intel的CPU,使用的Intel VT技术.(该功能在有些主机里面可能需要去BIOS里面开启) 二.软件准备 操作系统: CentOS 7.2 软件包: CentOS自带yum源 关闭防火墙 关闭SELinux:将 /etc/

Cloudstack+Glusterfs+Kvm 集群(笔记)

一.环境介绍: Cloudstack-Management:10.12.0.10 Gluster-Management:10.12.0.11 Node:10.12.0.12 Node:10.12.0.13 Node:10.12.0.14 Node:10.12.0.15 Node:10.12.0.16 Node:10.12.0.17 Node:10.12.0.18 Node:10.12.0.19 Node:10.12.0.20 Node:10.12.0.21 Node:10.12.0.22 Nod

KVM部署搭建

1:KVM概述 公司部分linux服务器利用率不高,为充分利用这些linux服务器,可以部署kvm,在物理服务器上运行多个服务,例如,运行nginx的服务器上部署kvm,然后虚拟机上运行tomcat 2:知识点 Kvm自2.6版本后就直接整合到linux内核,依托与CPU虚拟化指令集(如lntel-VT AMD-V)实现高性能的虚拟化支持 一:安装方式桌面安装 实验环境操作系统为centos7.2 ??vmware虚拟机 1:安装kvm所要依赖包 ? yum ?-y ?install ?qemu

通过KVM部署第一台虚拟机

通过前期的准备(Centos7 安装 KVM),接下来就可以来部署虚拟机了. 安装虚拟机有两种方法,一种是通过 virt-manager使用图形化工具安装,还有一种就是通过virt-install命令行方式进行安装,本篇文章采用的是命令行安装. 0x01 准备工作 1.准备安装镜像 本次安装的操作系统是 Fedora26 通过官网下载到的镜像文件** Fedora-MATE_Compiz_Live-x86_64-26-1.5.iso**将其放置到合适的位置. 2.创建一块虚拟机使用的硬盘 在合适