热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux运维、架构之路KVM虚拟化技术

一、云计算概述云计算:是一种资源使用和交付模式虚拟化:一种具体的技术,用来将物理机虚拟成为多个相互独立的虚拟机。云计算不等于虚拟化,云计算是使用了虚拟化的技术做支撑二、KV

一、云计算概述

      云计算:是一种资源使用和交付模式

      虚拟化:一种具体的技术,用来将物理机虚拟成为多个相互独立的虚拟机。云计算不等于虚拟化,云计算是使用了虚拟化的技术做支撑

二、KVM配置使用

1、系统环境

[root@kvm ~]# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 
[root@kvm ~]# uname -r
3.10.0-327.el7.x86_64
[root@kvm ~]# getenforce 
Disabled
[root@kvm ~]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)

2、导入镜像

mkdir -p /application/tools
cd /application/tools
dd if=/dev/sr0 of=/application/tools/CentOS7_2.iso
du -sh /application/tools/CentOS7_2.iso
4.1G    /application/tools/CentOS7_2.iso

3、安装管理KVM软件

yum -y install qemu-kvm qemu-kvm-tools virt-manager libvirt virt-install

4、启动libvirtd

libvirt是一套开源的虚拟化管理工具

生成kvm虚拟机:virt-install
查看在运行的虚拟机:virsh list
查看所有虚拟机:virsh list --all
查看kvm虚拟机配置文件:virsh dumpxml name
启动kvm虚拟机:virsh start name
正常关机:virsh shutdown name 
非正常关机(相当于物理机直接拔掉电源):virsh destroy name
删除:virsh undefine name(彻底删除,找不回来了,如果想找回来,需要备份/etc/libvirt/qemu的xml文件)
根据配置文件定义虚拟机:virsh define file-name.xml
挂起,终止:virsh suspend name
恢复挂起状态:virsh resume name
systemctl start libvirtd.service

4、创建虚拟机

①创建虚拟磁盘

mkdir -p /application/kvm_data
cd /application/kvm_data
qemu-img create -f qcow2 /application/kvm_data/moban.qcow2 20G
#查看虚拟磁盘详细信息
[root@kvm kvm_data]# qemu-img info moban.qcow2
image: moban.qcow2
file format: qcow2
virtual size: 20G (21474836480 bytes)
disk size: 196K
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false

②创建虚拟机

virt-install --virt-type=kvm --name=c72-moban --vcpus=1 -r 1024 -c /application/tools/CentOS7_2.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel7 --disk path=/application/kvm_data/moban.qcow2,size=20,format=qcow2

看到如下信息,使用vnc连接即可安装系统

③克隆虚拟机

1、磁盘文件
cd /application/kvm_data/
cp moban.qcow2 clone.qcow2
2、配置文件
virsh dumpxml c72-moban > test.xml
virsh dumpxml c72-moban > test1.xml

 克隆虚拟主机的配置文件需要修改以下内容

主机名、uuid、配置文件名称、mac地址
[root@moban qemu]# diff test.xml test1.xml 
2,3c2,3
<c72-clone
<e3f40d09-9333-4b15-93c6-63g56e8aa428
---
>   c72-moban
>   e3f40d09-9333-4b15-93c6-62d56e8aa428
34c34
<\'/application/kvm_data/clone.qcow2\'/>
---
>       \'/application/kvm_data/moban.qcow2\'/>
67c67
<\'52:54:00:dd:a9:21\'/>
---
>       \'52:54:00:dd:a9:f7\'/>

启动新克隆的虚拟主机

virsh define test.xml
virsh start c72-clone

④创建快照

virsh snapshot-create-as c72-clone kuaizhao#创建快照
virsh snapshot-list c72-clone#查看创建的快照
virsh snapshot-info c72-clone kuaizhao1 #还原快照
virsh snapshot-delete c72-clone kuaizhao1#删除快照

⑤虚拟机桥接

#方法一:virsh iface-bridge eth0 br0,虚拟机必须关闭才可以执行上面命令
#方法二:修改配置文件
virsh edit c72-clone,新创建主机采用桥接网卡将--network network=default换成--network bridge=br0。对已经创建的主机,修改成桥接方式。修改配置文件
#方法三:给虚拟机再次添加一块新的网卡,虚拟机需要运行状态
virsh attach-interface c72-moban --type bridge --source br0

手动配置网桥

brctl addif br0 eth0 && ip addr del dev eth0 10.0.0.201/24 && ifconfig br0 10.0.0.201/24 up && route add default gw 10.0.0.254

推荐阅读
  • 【MySQL】frm文件解析
    官网说明:http:dev.mysql.comdocinternalsenfrm-file-format.htmlfrm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果 ... [详细]
  • 本文详细介绍了如何在 Ubuntu 14.04 系统上搭建仅使用 CPU 的 Caffe 深度学习框架,包括环境准备、依赖安装及编译过程。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • 深入RTOS实践,面对原子操作提问竟感困惑
    在实时操作系统(RTOS)的实践中,尽管已经积累了丰富的经验,但在面对原子操作的具体问题时,仍感到困惑。本文将深入探讨RTOS中的原子操作机制,分析其在多任务环境下的重要性和实现方式,并结合实际案例解析常见的问题及解决方案,帮助读者更好地理解和应用这一关键技术。 ... [详细]
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼错误72error:ErroropeningoutputfileC:Users林鑫辰AppDataLocalTemptmpxft_0000 ... [详细]
  • 使用R语言进行Foodmart数据的关联规则分析与可视化
    本文探讨了如何利用R语言中的arules和arulesViz包对Foodmart数据集进行关联规则的挖掘与可视化。文章首先介绍了数据集的基本情况,然后逐步展示了如何进行数据预处理、规则挖掘及结果的图形化呈现。 ... [详细]
  • 来自FallDream的博客,未经允许,请勿转载,谢谢。一天一套noi简直了.昨天勉强做完了noi2011今天教练又丢出来一套noi ... [详细]
  • 在使用 MySQL 6.0.x 及以上版本的 JDBC 驱动时,若未正确配置 `serverTimezone` 参数,可能会导致连接异常。本文探讨了这一问题的原因及解决方法。 ... [详细]
  • 如何使用Maven将依赖插件一并打包进JAR文件
    本文详细介绍了在使用Maven构建项目时,如何将所需的依赖插件一同打包进最终的JAR文件中,以避免手动部署依赖库的麻烦。 ... [详细]
  • 本文介绍了Tomcat的基本操作,包括启动、关闭及首次访问的方法,并详细讲解了如何在IDEA中创建Web项目,配置Servlet及其映射,以及如何将项目部署到Tomcat。 ... [详细]
  • Java虚拟机及其发展历程
    Java虚拟机(JVM)是每个Java开发者日常工作中不可或缺的一部分,但其背后的运作机制却往往显得神秘莫测。本文将探讨Java及其虚拟机的发展历程,帮助读者深入了解这一关键技术。 ... [详细]
  • Android 中的布局方式之线性布局
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • xmpphp测试openfire发布信息
    xmpphp测试openfire发布信息1.先下载xmpphp,地址:https:code.google.compxmpphpdownloadslist2.编写php脚本。<?php ... [详细]
  • [oracle@oracle~]$impxxxx/userfile=/usr/local/src/666.dmpfull=ybuffer=40960000Import: ... [详细]
  • A题这题贼水,直接暴力就可以了。用个bool数组记录一下,如果某一天,当前剩下的最大的出现了的话,就输出一段。1#include<stdio.h>2intn;3boolvi ... [详细]
author-avatar
欢喜星空物语
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有