kvm虚拟机简单定制之一:构建kvm虚拟机(centos7)

概述

为什么会把题目定位kvm虚拟机简单定制呢?

我想把自己对kvm虚拟机的认识系统的写下来,但感觉一下子不知道该怎么写。比如说安装就有很多参数:从光盘安启动安装或是从现有磁盘启动、磁盘大小是多少、网络类型是怎样的、cpu规格是怎样的、内存又是多少?另外如何实现网络类型转换、各种分区的扩展,或是当你想添加一块网卡时要如何操作?

想的太多,水平不够,当然就很难用简短的文字描述,所以干脆从初始构建开始,把这个过程走一遍,尽量包含所有能想到的细节。

环境

宿主机cpu和内存

  • KVM(linux)是券虚拟化技术,需要硬件支持CPU虚拟化,物理机大多是支持的,我这里用的VMware虚拟机作为宿主机,所以需要勾选如下选项

  • 内存尽量大一点,我这里设置了4G

宿主机配置

[root@kvm1 ~]# uname -r
3.10.0-862.el7.x86_64
[root@kvm1 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@kvm1 ~]# getenforce
Disabled
[root@kvm1 ~]# systemctl is-active firewalld.service
unknown
[root@kvm1 ~]# ip add show eth0|awk ‘NR==3{print $2}‘
10.0.0.101/24
[root@kvm1 ~]# ip add show eth1|awk ‘NR==3{print $2}‘
172.16.1.101/24
##配置repo源,我使用的ali源
[root@kvm1 yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@kvm1 yum.repos.d]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

宿主机安装相关组件

[root@kvm1 ~]# yum install libvirt* virt-* qemu-kvm* -y
  • libvirt,是虚拟机的管理软件,可以管理kvm、xen、qemu等
  • virt,包含virt-install、virt-clone,作用是虚拟机的安装和克隆
  • qemu-kvm,qemu-imag,作用是复制管理虚拟机的磁盘

其中libvirtd服务安装后,应该会自动设置启动和开机自启动,如果没有,那就人工开启。另外,如果这时留意,会发现宿主机多了一些网卡信息,如下

[root@kvm1 opt]# systemctl is-active libvirtd.service
active
[root@kvm1 opt]# systemctl is-enabled libvirtd.service
enabled

[root@kvm1 opt]# ip add |grep virbr0
4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
5: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000

默认的kvm虚拟机网络使用nat模式,并且由这个virbr0来分配ip地址,所以构建并安装好kvm虚拟机后会发现它的ip是192.168.122.0/24网段的

宿主机上传镜像

上传镜像后,就可以模拟从光盘安装系统的过程了。我这里上传到/opt目录。当然,镜像大的话就别用rz传了,速度慢不快,还有最大容量限制,可以使用sftp传输

[root@kvm1 ~]# cd /opt
[root@kvm1 opt]# ll
total 927744
-rw-r--r--  1 root root 950009856 Feb  3 09:32 CentOS-7-x86_64-Minimal-1804.iso

vnc工具

kvm默认网络模式是nat,宿主机会充当路由器,为内部的kvm虚拟机做端口映射。如果开启了vnc连接功能,kvm会为每个kvm虚拟机开启一个连接端口。可以访问宿主机的设备,就可以使使用vnc工具来连接kvm虚拟机。具体的使用方法会在下文中描述。

构建kvm虚拟机,并安装系统

构建虚拟机

[root@kvm1 opt]# virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name Centos7 --memory 1024 --vcpus 1 --disk /opt/centos2.raw,format=raw,size=10 --cdrom /opt/CentOS-7-x86_64-Minimal-1804.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole   

参数说明:

--virt-type kvm 虚拟化的类型
--os-type=linux 系统类型
--os-variant rhel7 系统版本
--name Centos7 虚拟机的名字
--memory 1024 虚拟机的内存
--vcpus 1 虚拟机cpu核数
--disk /opt/centos2.raw,format=raw,size=10 磁盘路径
--cdrom /opt/CentOS-7-x86_64-DVD-1804.iso 镜像路径
--network network=default 使用默认的NAT网络
--graphics vnc,listen=0.0.0.0 开启VNC
--noautoconsole

来看看宿主机是否为我们开放了一个vnc端口:

[root@kvm1 opt]# netstat -lntup|grep qemu-kvm
tcp        0      0 0.0.0.0:5900            0.0.0.0:*               LISTEN      2279/qemu-kvm    

接下来,就可以用这个端口连接它了

为kvm虚拟机安装系统

我们已经构建好了虚拟机,就好比在VMware中构建了一个空的虚拟机,并且连接了光盘镜像,接下来就是开机安装了。那么如上所说,vnc粉墨登场了,操作图示如下

上图中的端口是0,这是vnc端口的简明表达,0就代表5900,1代表5901,依次类推。填好ip和端口后,点击“connect”就可以了,那么,下面的界面是不是很熟悉了?

接下来就是系统安装了,其中有几个地方需要注意,如下图

除图中标明的点之外,我在磁盘分区中发现,如果使用lvm格式,就必须有一个/boot分区,但如果使用standard格式,就可以只分一个/f分区。另外提前说明一下,如果设置了/boot和/两个分区,那么在后面对根分区扩容时会遇到麻烦。

安装完毕后reboot时vnc会断开,系统启动后我们还可以重新连接。但是我们发现vnc窗口里是不能复制粘贴的,并且连来连去也麻烦,别烦,接下来我们会使用console或者ssh来连接。那么在以后的岁月里,vnc就只是备用工具了。

不过,在下一步实现kvm管理之前,还是来vnc页面来看看我们安装的系统是不是ok吧

好了,系统安装成功了,下一篇,我们来说kvm虚拟机的管理。

原文地址:https://www.cnblogs.com/Go-Spurs-Go/p/10349733.html

时间: 2024-07-29 01:58:32

kvm虚拟机简单定制之一:构建kvm虚拟机(centos7)的相关文章

Centos7构建KVM虚拟化平台,并通过KVM安装虚拟机

什么是虚拟化? 虚拟化就是把硬件资源从物理方式转变为逻辑方式,打破了物理结构,使用户可以灵活管理这些资源,并且允许1台物理机上同时运行多个操作系统,以实现资源利用率最大化和灵活管理的一项技术. 虚拟化的优势 减少服务器数量,降低硬件采购成本: 资源利用率最大化: 降低机房空间.散热.用电消耗的成本等: 硬件资源可动态调整,提高企业IT业务灵活性: 高可用性: 在不中断服务的情况下进行物理硬件资源调整: 降低管理成本: 具备更高效的容灾能力. KVM虚拟化 kvm自从Linux2.6.20版本后就

KVM虚拟化笔记(七)------kvm虚拟机时间配置

由于在虚拟化环境中,虚拟机在长时间的运行过程中,时间会变慢,通常的做法是配置ntpdate定时与时间服务器进行时间同步的计划任务.Kvm虚拟机默认采用的是UTC时间,需要进行专门的修改,还有考虑时间同步的问题,具体步骤如下: 1,kvm虚拟机修改时间配置文件 kvm虚拟机采用utc时间,需要先修改配置文件使用kvm虚拟机的时间与虚拟主机同步. [[email protected] qemu]# virsh edit hadoop3 最后重启下虚拟机 2. 关于kvm虚拟机时间问题解决思路 (1)

Linux实现KVM+QEMU+libvirt的虚拟机环境 并使用virsh对虚拟机进行管理

说明: 本文使用的实验环境是运行在windows10上的Vmware workstation 12.5 pro,宿主机操作系统是Ubuntu16(机器名称为KVM_test),kvm+qemu+libvirt安装在KVM_test上.运行在KVM_test上的客户机操作系统也是Ubuntu16(机器名称为test_ubuntu). 本实验需要的软件有Vmware workstation.vnc viewer.ubuntu16的ios镜像.Vnc viewer需要注册码,请自行百度查找. 本实验所

KVM虚拟化笔记(四)------kvm虚拟机日常管理

一,查看KVM虚拟机配置文件及运行状态 1,KVM虚拟机默认的配置文件路径:/etc/libvirt/qemu/ 而autostart目录是配置kvm虚拟机开机自启动的目录. [[email protected] qemu]# cd /etc/libvirt/qemu [[email protected] qemu]# ll total 24 drwxr-xr-x 2 root root 4096 Feb  2 15:03 autostart      ###开机自启动目录   -rw-----

kvm宿主机使用console登陆kvm虚拟机卡住解决办法

宿主机如果需要使用virsh console到虚拟机的shell,需要修改虚拟机的相关配置文件cat > /etc/default/grub << EOFGRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"GRUB_DEFAULT=savedGRUB_DISABLE_SUBMENU=trueGRUB_TERMINAL="console serial"GRUB_SERIAL

Linux -- 构建KVM虚拟化环境

硬件系统的配置 硬件和BIOS中虚拟化技术的支持是KVM运行的先决条件. 在x86-64架构的处理器中,KVM必需的硬件虚拟化扩展分别为:Intel的虚拟化技术(Intel VT)和AMD的AMD-V技术. 一般在BIOS中,VT的选项通过"Advanced →Processor Configuration"来查看和设置,它的标识通常为"Intel(R) Virtualization Technology"或"Intel VT"等类似的文字说明.

基于CentOS 6.5构建KVM服务器平台、网络和存储、公钥和私钥的建立

1.什么是虚拟化通过虚拟化技术将一台计算机虚拟成多台逻辑上的计算机.每个逻辑上的计算机可以安装不同的操作系统,这些系统之间互相独立并且互不干扰2.什么虚拟机一个软件平台,如同一个物理机上面运行操作系统和应用程序3.目前主流的虚拟化产品VMwareMicosoftCitrix RedHat 4.KVM网络设置NAT模式(默认)    KVM虚拟机网卡选择NAT,网关指向HOST主机的内网192.168.1.1,它就可以直接访问外网.路由模式(HOST开启路由转发功能)    HOST主机充当路由器

dalvik虚拟机简单介绍

首先,让我们来思考下面几个问题: 什么是Dalvik虚拟机? Dalvik VM与JVM有什么区别? Dalvik VM有什么新的特点? Dalvik VM的架构是怎么样的? 首先,我得承认第一个问题问得很傻:什么是Dalvik虚拟机?没有人给出过一个明确的定义,但是,我们似乎可以从人们对Java虚拟机的描述中得到些信息. Java虚拟机(JVM)是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的.它有自己完善的硬件架构(如处理器.堆栈.寄存器等),还具有相应的指令系统

KVM(七)使用 libvirt 做 QEMU/KVM 快照和 Nova 实例的快照

本文将梳理 QEMU/KVM 快照相关的知识,以及在 OpenStack Nova 中使用 libvirt 来对 QEMU/KVM 虚机做快照的过程. 1. QEMU/KVM 快照 1.1 概念 QEMU/KVM 快照的定义: 磁盘快照:磁盘的内容(可能是虚机的全部磁盘或者部分磁盘)在某个时间点上被保存,然后可以被恢复. 磁盘数据的保存状态: 在一个运行着的系统上,一个磁盘快照很可能只是崩溃一致的(crash-consistent) 而不是完整一致(clean)的,也是说它所保存的磁盘状态可能相