云平台管理与部署---虚拟化平台-----KVM

article/2025/9/15 3:41:56

第一,搭建KVM服务器

 

1,虚拟化平台的安装

# yum -y install qemu-kvm  libvirt-daemon  libvirt-client  libvirt-daemon-driver-qemu
# systemctl start libvirtd
# ls /etc/libvirt/qemu
# ls /var/lib/libvirt/images/

 

第二,管理KVM平台

 

1,virsh 命令工具使用

 

 

2,常用镜像磁盘类型

 

3,qemu-img 命令

创建一个镜像磁盘文件:

# qemu-img create -f qcow2 disk.img 50G# qemu-img create -b disk.img -f qcow2 disk1.img        #使用后端模板文件创建一个新镜像盘文件# qemu-img create -b disk.img -f qcow2 disk2.img 16G    #使用后端模板创建一个16G的镜像盘文件# qemu-img info disk1.img                               #查看镜像文件信息

 

第三,virsh 虚拟机管理

 

创建一个虚拟网络

# pwd
/etc/libvirt/qemu/networks#vim vbr.xml
<network><name>vbr</name>                                        #vbr为虚拟网络的名字<forward mode='nat'/><bridge name='vbr' stp='on' delay='0'/><ip address='192.168.1.254' netmask='255.255.255.0'>    #ip为192.168.1.254<dhcp><range start='192.168.1.100' end='192.168.1.200'/>    #IP范围</dhcp></ip>
</network># virsh net-define vbr.xml                  #定义vbr虚拟网络
# virsh net-start vbr                        #启动vbr虚拟网络
# ifconfig                                    #验证
# virsh net-autostart vbr                     #设置vbr虚拟网络开机启动# cat vbr.xml                                 #启动后的配置文件
<network><name>vbr</name><uuid>1612c703-ac5d-40f2-a53b-4be1ae53f7ce</uuid><forward mode='nat'/><bridge name='vbr' stp='on' delay='0'/><mac address='52:54:00:3e:04:67'/><ip address='192.168.1.254' netmask='255.255.255.0'><dhcp><range start='192.168.1.100' end='192.168.1.200'/></dhcp></ip>
</network>
~                          

第四,xml管理

步骤一:导出虚拟机xml的配置文件
# cd /etc/libvirt/qemu/
# virsh dumpxml node1
# virsh dumpxml node1 > node.xml                 #导出虚拟机node1]的配置文件为node.xml#virsh命令: virsh edit 虚拟机名
#备注: 可以修改 name, memory, disk, network等字段#vim edit node1
<domain type='kvm'><name>node1</name>                                     //node1为虚拟机的名称,可以随意修改<uuid>76d5dc2c-5eef-4e30-8b6c-e58851814f84</uuid>      //uuid可以去掉<memory unit='KiB'>2048000</memory>                    //内存大小可以调整<currentMemory unit='KiB'>2048000</currentMemory><disk type='file' device='disk'><source file='arbbvirt/images/rhel7.2.qcow2'/>    //后端盘路径.. ..<interface type='network'><mac address='52:54:00:91:52:e4'/>            
//mac地址和带有address字样的全部去掉.. ..步骤二:重新定义虚拟机
# virsh define node1.xml# virsh undefine node1.xml                    #取消定义的虚拟机

 

 

一,自定义虚拟机安装

配置网络YUM源:

方法一 :#用http协议的YUM源:yum -y install httpd
mkdir /var/www/html/centos
mount /iso/CentOS-7-x86_64-DVD-1804.iso /var/www/html/centos/
# vim /etc/fstab
/iso/CentOS-7-x86_64-DVD-1804.iso       /var/www/html/centos/   iso9660 defaults 0 0#ls /var/www/html/centos/
#systemctl start httpd
#systemctl enable httpd
#netstat -antulp | grep 80# cat /etc/yum.repos.d/local.repo 
[dvd]
name=dvd.repo
baseurl=http://192.168.0.240/centos
enabled=1
gpgcheck=0yum clean all 
yum repolist                            #配置成功方法二:  #配置FTP的YUM源:# yum install vsftpd -y
# vim /etc/vsftpd/vsftpd.conf
114 listen=YES
123 listen_ipv6=NO
#systemctl start vsftpd
#systemctl enable vsftpd
#netstat -antulp | grep ftp# systemctl status firewalld.service                #看防火墙状态
# systemctl stopfirewalld                            #停止防火墙
# systemctl disable firewalld                        #禁止防火墙启动# getenforce                                         #查看selinux
# vim /etc/selinux/config                            #关闭selinux
SELINUX=disabled
# setenforce 0#mkdir /var/ftp/centos
#vim /etc/yum.repos.d/local.repo
[centos]
name=centos7
baseurl=ftp://192.168.0.240/centos
enabled=1
gpgcheck=0#yum clean all
#yum repolist                                        #配置成功

http和ftp两种YUM源都OK:

 

安装一个虚拟机:

# cd /var/lib/libvirt/images/
# qemu-img create -f qcow2 node.qcow2 16G
# virt-manager                                #启动virt-manager

使用virt-manager软件新建虚拟机:

选择安装方式:

 

选择内存、CPU、和自定义存储:

选择虚拟机名称和网络:

选择分区和KDUMP:

创建分区:

选择standard Partition:

创建一个根分区:

 

 

二,虚拟模板制作

思路:

1 kvm 原理讲解
  kvm 内核模块
  qemu 硬件仿真
  libvirt 用户接口管理
  虚拟机的组成
      硬盘文件
      配置文件

2 qemu-img  命令说明
  虚拟机硬盘文件的创建
  后端模板盘的使用

3 虚拟机配置文件说明
  内存,cpu,硬盘,网卡

4 安装一个虚拟机
  最小化安装,只分一个根分区

5 把虚拟机配置成模板
  禁用 selinux
  删除 firewalld 和 NetworkManager
  配置网卡
  配置 yum 源
  安装常用命令软件 ifconfig vim bridge-utils
  打开 console 终端
  配置硬盘 fstab,关闭不使用的服务
  安装扩容软件

6 清理日志信息


7 创建虚拟机

/var/lib/libvirt/images
qemu-img create -f qcow2 -b node.img node1.img 20G

cp node.xml /etc/libvirt/qemu/node1.xml
修改 node1.xml 
<name>xxxx</name>
<source file ...... >

# virsh define  node1.xml
# virsh start   node1
# virsh console node1
 

 

 

一,XML文件

 

***快建新虚拟机

# cp node.xml /etc/libvirt/qemu/redis01.xml
# cd /etc/libvirt/qemu/# vim redis01.xml

# /var/lib/libvirt/images/
# qemu-img create -b node.qcow2 -f qcow2 redis01.img#virsh list --all# virsh define redis01.xml
# virsh start redis01 
# virsh console redis01

 

 

新虚拟机的交付使用

1,正常运行快建的新虚拟机

2,用户自行修改主机名、IP的参数

# virsh list --all

新虚拟机的使用:

 

================================================================================================================================================================================================

一,离线访问虚拟机:

 

二,使用Virt-manager 管理运城KVM 主机

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


http://chatgpt.dhexx.cn/article/pFpSaaBm.shtml

相关文章

云计算-华为虚拟化平台FusionCompute

目录 FusionCompute产品介绍 FusionCompute虚拟化套件 FusionCompute产品定位 FusionCompute在虚拟化套件中位置 FusionCompute产品架构 FusionCompute模块功能模块 ​编辑FusionCompute产品功能 - 虚拟化计算 FusionCompute产品功能 - 虚拟化存储 FusionCompute产品功…

服务器虚拟化如何分配内存,VMware虚拟化平台内存如何管理?

当运行一个虚拟机时,vSphere的VMKernel为虚拟机生成一段可编址的连续内存,与普通操作系统提供给上层应用使用的内存具有相同的属性特征。引入内存虚拟化之后,同样的内存地址空间,允许VMkernel同时运行多个虚拟机并保证它们之间使用内存的独立性。 虚拟化平台三种内存模式 主…

Linux部署KVM虚拟化平台

了解KVM&#xff1a; Kernel-based Virtual Machine的简称&#xff0c;是一个开源的系统虚拟化模块&#xff0c;自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理&#xff0c;所以相对于Xen&#xff0c;其核心源码很少。KVM已成为…

综合虚拟试衣平台

【摘要】 综合虚拟试衣平台是一个完整的虚拟试衣体验系统&#xff0c;拥有电子商城、线下虚拟试衣设备、核心SAAS平台三个模块。人们可以在线上线下&#xff0c;通过鼠标选择场景、人物、衣物自动生成试衣动画&#xff0c;或是通过摄像头摆拍实时获取。用户可通过此平台体验从…

VMware ESXi-虚拟化平台的搭建

前言&#xff1a;vSphere 是VMware公司推出一套服务器虚拟化解决方案&#xff0c;其核心组件为 VMware ESXi 和VMware vCenter&#xff0c;本文简单介绍VMware ESXi 的安装使用。 它与我们常用的虚拟机不同的是&#xff0c;日常使用的虚拟机是需要依赖于一个操作系统的&#xf…

虚拟仿真实验平台服务器需求,虚拟仿真实验中心平台建设方案.pptx

虚拟仿真实验中心平台建设方案.pptx 一,二,三,虚拟仿真实验概述,虚拟仿真实验教学,虚拟仿真实验中心建设,一,二,三,虚拟仿真实验概述,虚拟仿真实验教学,虚拟仿真实验中心建设,,随着计算机、互联网等先进技术的迅速发展和大面积普及推广,虚拟仿真实验应运而生。虚拟仿真实验改变…

服务器虚拟化和云平台,云平台和服务器虚拟化区别

云平台和服务器虚拟化区别 内容精选 换一换 云硬盘(Elastic Volume Service, EVS)可以为云服务器提供高可靠、高性能、规格丰富并且可弹性扩展的块存储服务,可满足不同场景的业务需求,适用于分布式文件系统、开发测试、数据仓库以及高性能计算等场景。云服务器包括弹性云服务…

虚拟化服务器云平台,云管理平台——虚拟化管理功能介绍

原标题&#xff1a;云管理平台——虚拟化管理功能介绍 虚拟化资源池管理&#xff1a;实现对虚拟化数据中心资源池中的物理服务器、虚拟机统一管理、监控、调度。 主要功能&#xff1a; 物理服务器管理&#xff1a;资源纳管、信息获取、清单与查询、配置和管理 虚拟机管理&#…

javassist 基本用法

Javassist是一个能够操作字节码框架&#xff0c;在学习的过程中存在了一些问题&#xff0c;用博客的方式记录下来&#xff0c;希望对大家有所帮助。 一、实例功能 学习的实例来自于 IBM developer 主要功能实现计算一个方式具体的执行时间. 二、代码实例 package org.ja…

javassist对已有的类进行操作

准备工作&#xff1a; 首先创建一个java项目&#xff0c;然后导入javassist.jar包 创建一个注解 package com.chengyu.javassist;public interface Auto {String name();int year(); }创建一个接口 public interface Earth { } 创建两个类 public class Pepelo{ } packag…

【Javassist】快速入门系列03 使用Javassist实现方法异常处理

系列文章目录 01 在方法体的开头或结尾插入代码 02 使用Javassist实现方法执行时间统计 03 使用Javassist实现方法异常处理 文章目录 系列文章目录前言引入Javassist jar包使用Javassist实现方法异常处理 总结说明 前言 上一章我们介绍了使用使用Javassist实现了对方法执行时…

【Javassist】快速入门系列04 使用Javassist更改整个方法体

系列文章目录 01 在方法体的开头或结尾插入代码 02 使用Javassist实现方法执行时间统计 03 使用Javassist实现方法异常处理 04 使用Javassist更改整个方法体 文章目录 系列文章目录前言引入Javassist jar包使用Javassist更改整个方法体 总结说明 前言 上一章我们介绍了使用Ja…

Java字节码编程之非常好用的javassist

我为什么要研究这个&#xff1f; 因为我在开发一个框架的时候需要用到。 我开发的这个框架&#xff0c;有一个注解&#xff0c;当用户输入变量名&#xff0c;类名的时候&#xff0c;我这个框架可以为其自动生成一个对象&#xff0c;并加载到内存中供以后使用。 这个小功能可…

javassist学习

Java 字节码以二进制的形式存储在 .class 文件中&#xff0c;每一个 .class 文件包含一个 Java 类或接口。Javaassist 就是一个用来 处理 Java 字节码的类库。它可以在一个已经编译好的类中添加新的方法&#xff0c;或者是修改已有的方法&#xff0c;并且不需要对字节码方面有深…

Javassist

Javassist Javassist是一个开源的分析、编辑和创建Java字节码的类库&#xff0c;可以直接编辑和生成Java生成的字节码。 相对于bcel, asm等这些工具&#xff0c;开发者不需要了解虚拟机指令&#xff0c;就能动态改变类的结构&#xff0c;或者动态生成类。javassist简单易用&…

[Java基础]—Javassist

Javassist Javassist (JAVA programming ASSISTant) 是在 Java 中编辑字节码的类库;它使 Java 程序能够在运行时定义一个新类, 并在 JVM 加载时修改类文件。原理与反射类似&#xff0c;但开销相对较低。 常用API ClassPool getDefault : 返回默认的 ClassPool 是单例模式的&…

Javassist基本用法

Javassist概述 Javassist是可以动态编辑Java字节码的类库。它可以在Java程序运行时定义一个新的类&#xff0c;并加载到JVM中&#xff1b;还可以在JVM加载时修改一个类文件&#xff0c;添加新的方法&#xff0c;或者是修改已有的方法。Javassist使用户不必关心字节码相关的规范…

Java中的高性能字节码工具:Javassist

前言 一般常见的动态方法调用使用Reflection或者字节码生成技术。虽然JDK已对反射进行了优化但在追求性能的场景中仍然显得性能不佳。本文即是介绍一个面向程序员友好的字节码操作类库javassist。根据benchmark其展现的性能已几乎无异于直接调用。 开源地址&#xff1a;javas…

Java字节码技术javassist

一、Javassist入门 &#xff08;一&#xff09;Javassist是什么 Javassist是可以动态编辑Java字节码的类库。它可以在Java程序运行时定义一个新的类&#xff0c;并加载到JVM中&#xff1b;还可以在JVM加载时修改一个类文件。Javassist使用户不必关心字节码相关的规范也是可以编…

java--javassist学习

Javassist是一个开源的分析、编辑和创建Java字节码的类库。是由东京工业大学的数学和计算机科学系的 Shigeru Chiba &#xff08;千叶 滋&#xff09;所创建的。它已加入了开放源代码JBoss 应用服务器项目,通过使用Javassist对字节码操作为JBoss实现动态AOP框架。javassist是jb…