KVM折腾记...https://lengjibo.github.io/KVM%E6%8A%98%E8%85%BE%E8%AE%B0/

 Veröffentlicht am 2018-09-20 |  Edited on 2018-09-21 |  in 运维 |  Views: 35

每个人都会有缺陷,就像被上帝咬过的苹果,有的人缺陷比较大,正是因为上帝特别喜欢他的芬芳。
——《战争与和平》


唉,最近迷上这玩意儿了,可怕,一直瞎折腾…

多图预警,此文毫无逻辑,纯手打纯瞎写

测试系统:centos7

装系统的时候比较迷,连个ifconfig都忘了装…

就像我们所知道的,“ifconfig”命令用于配置GNU/Linux系统的网络接口。它显示网络接口卡的详细信息,包括IP地址,MAC地址,以及网络接口卡状态之类。但是,该命令已经过时了,而且在最小化版本的RHEL 7以及它的克隆版本CentOS 7,Oracle Linux 7和Scientific Linux 7中也找不到该命令。

要查看网卡细节,输入以下命令:


ip addr

输出样例:


1: lo: <loopback,up,lower_up> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: venet0: <broadcast,pointopoint,noarp,up,lower_up> mtu 1500 qdisc noqueue state UNKNOWN
link/void
inet 127.0.0.1/32 scope host venet0
inet 192.168.1.101/32 brd 192.168.1.101 scope global venet0:0

在网络畅通的情况下我们可以使用以下命令,安装ifconfig


yum provides ifconfig

输出样例:

net-tools包提供了ifconfig命令。因此,让我们安装net-tools包来使用ifconfig命令。


yum install net-tools

现在,你就可以像以往一样使用ifconfig命令了。


ifconfig -a

上图

因为KVM在图形下操作比较方便,我这里又装了一下界面

首先安装X(X Window System),命令为

yum groupinstall “X Window System” 回车(注意有引号)

安装完成会显示completed!

检查一下我们已经安装的软件以及可以安装的软件,用命令

yum grouplist 回车

然后安装我们需要的图形界面软件,GNOME(GNOME Desktop)

yum groupinstall + “桌面”
这里需要特别注意!!!!

一定要注意 名称必须对应 不同版本的centOS的软件名可能不同 其他Linux系统类似

否则会出现No packages in any requested group available to install or update 的错误。

安装完成后我们开始搞kvm

首先查看cpu是否支持虚拟化


grep vmx /proc/cpuinfo

如果有vmx信息输出,就说明支持VT;如果没有任何的输出,说明你的cpu不支持,将无法使用KVM虚拟机。

注:若为虚拟机环境,请在cpu哪里勾选虚拟化选项

然后确保BIOS里开启虚拟化功能,即查看是否加载KVM模块

如果没有加载,运行以下命令:


[root@kevin ~]# modprobe kvm
[root@kevin ~]# modprobe kvm-intel

内核模块导出了一个名为/dev/kvm的设备,这个设备将虚拟机的的地址空间独立于内核或者任何应用程序的地址空间。

安装KVM插件


yum install qemu-kvm libvirt libvirt-python libguestfs-tools virt-install

其实这些是可以在系统安装的时候选择的,若未选择,可以现在安装

安装图形化界面:


yum install -y virt-manager

systemctl enable libvirtd && systemctl start libvirtd #设置开机自启并且启动lbvired服务

禁用防火墙:


[root@localhost ~]#systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld

关闭selinux:


[root@localhost ~]# vi /etc/selinux/config

将selinux设置为diabled,保存退出 挂载一块硬盘并且格式化


mkfs.ext4 /dev/sdb

添加之后还不能用,需要格式化


[root@localhost ~]# mkfs.ext4 /dev/sdb #使用ext4文件格式进行格式化
[root@localhost ~]# mkdir /ios #在根目录下创建一个挂载点目录
[root@localhost ~]# mount /dev/sdb /ios/ #将sdb挂载到该目录下,就可以使用了
[root@localhost ~]# df -h #查看一下是否挂载成功
[root@localhost ~]# vi /etc/fstab #开机自动挂载

编辑完如下

如果没有输出结果,可以使用下面这条命令加载一下kvm模块


[root@localhost ~]# modprobe kvm

到目前为止,kvm平台已经基本安装完成,接下来需要创建桥接网卡
编辑主机原网卡配置文件vi /etc/sysconfig/network-scripts/ifcfg-ens33,在文件末尾添加一行:BRIDGE=”br0”

复制ifcfg-ens33配置文件并重命名为ifcfg-br0


[root@localhost network-scripts]# cp -rvf ifcfg-ens33 ifcfg-br0

修改ifcfg-br0配置文件 ![](https://i.screenshot.net/8oo82in) 重启下网络


[root@localhost ~]# systemctl restart network #重启网络

若出现以下提示的解决方法


Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.

解决:


[root@mina0 hadoop]# journalctl -xe
[root@mina0 hadoop]# systemctl stop NetworkManager
[root@mina0 hadoop]# systemctl disable NetworkManager

然后重启网络

可以看到ens33已经获取到了IP地址

然后开始一些基本的操作


[root@localhost ~]# virt-manager #打开虚拟机管理器

双击QEMU/KVM

创建一个镜像存储池用来存放ISO镜像文件,并命名

然后设置存储池所在的目录

创建一个虚拟机

将iso文件上传到存储池所在的目录,然后单击“浏览”按钮选择镜像文件,再选择操作系统类型及版本

至此一个虚拟机完成

虚拟机的部分操作:开始、暂停、重启、关闭等

Virsh命令
virsh list –all
查看在运行的所有的虚拟机
virsh dumpxml vm-name
查看kvm虚拟机配置文件
virsh start vm-name
启动kvm虚拟机
virsh shutdown vm-name
正常关机

virsh destroy vm-name
强制关机
virsh undefine vm-name
删除vm的配置文件

virsh define file-name.xml
根据配置文件定义虚拟机
virsh suspend vm-name
挂起虚拟机
virsh resumed vm-name
恢复被挂起的虚拟机
virsh snapshot-create
创建快照
virt-df -h vm-name
查看虚拟机的磁盘信息
virt-clone -o rhel7.0 -n rhel7.0-01 -f /var/rhel7.0-01.qcow2
查看快照信息(如果要恢复的话或者删除必须要看名称是什么)
virsh snapshot-revert rhel7.0 1537275180
恢复快照
virsh snapshot-delete rhel7.0 1537275180
删除快照

【转载】有图 KVM折腾记..的更多相关文章

  1. 转载:Chrome调试折腾记_(1)调试控制中心快捷键详解!!!

    转载:http://blog.csdn.net/crper/article/details/48098625 大多浏览器的调试功能的启用快捷键都一致…按下F12;还是熟悉的味道;  或者直接 Ctrl ...

  2. Anaconda折腾记(1)

    Anaconda折腾记 谨此记录小白的我在Anaconda里面的摸爬滚打 更换更新源 可以不使用命令,直接进入C盘,进入user文件夹,进入当前的用户文件夹下,记得显示隐藏文件. 找到.condarc ...

  3. 斐讯N1折腾记

    斐讯N1折腾记:运行 Linux 及优化  2018-06-23  37条评论  4,445次阅读  11人点赞 最后更新时间:2019年03月10日 咳咳咳,上篇教程教大家给斐讯 N1 降级并且刷了 ...

  4. Atom编辑器折腾记

    http://blog.csdn.net/bomess/article/category/3202419/2 Atom编辑器折腾记_(1)介绍下载安装 Atom编辑器折腾记_(2)基础了解使用 Ato ...

  5. BeagleBone折腾记(一):连接你的狗板

    BeagleBone折腾记一连接你的狗板 准备 了解BeagleBone BeagleBone社区 所需软硬件 USB连接 TTL连接 结语 准备 了解BeagleBone BeagleBone可能一 ...

  6. Vue折腾记 - (3)写一个不大靠谱的typeahead组件

    Vue折腾记 - (3)写一个不大靠谱的typeahead组件 2017年07月20日 15:17:05 阅读数:691 前言 typeahead在网站中的应用很多..今天跟着我来写一个不大靠谱的ty ...

  7. FreeBSD jail 折腾记(二)

    FreeBSD jail 折腾记(二) 创建jail目录 创建4个 分别是模板 骨架 数据 项目 创建模板目录 mkdir -p /jail/j1 # 然后放入基本目录,上篇说过不再写 创建骨架目录 ...

  8. 【树莓派】【转载】Raspberry Pi (树莓派)折腾记

    在网上看到一篇对树莓派折腾记录比较详细的文章,时间比较早,但是有些东西没变. 对于新手而言,还是有点参考价值.文章参见:http://skypegnu1.blog.51cto.com/8991766/ ...

  9. atom 折腾记(转载的)

    http://www.bkjia.com/webzh/999078.html

随机推荐

  1. 201871030106-陈鑫莲 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告

    项目 内容 课程班级博客链接 班级博客 这个作业要求链接 作业要求 我的课程学习目标 1.学会结对学习,体会结对学习的快乐2.了解并实践结对编程 3.加深对D{0-1}问题的解法的理解4.复习并熟悉P ...

  2. WPF -- 使用当前进程打开自定义文件的一种方式

    问题描述 当双击打开自定义格式的文件时,希望使用当前正在运行的进程,而不是另起一个进程. 本文介绍一种方式解决如上问题,方案参考user3582780的解答 设置自定义文件格式的默认打开方式 参考链接 ...

  3. Dynamics CRM9.0安装CRM的时候提示Microsoft.Crm.Setup.Server.RegisterSandboxServiceAction操作失败

    如图: 这种问题有两种情况会遇到.第一种是一个域装多套CRM产品会提示这个问题这个问题是解决不了的. 还一种情况就是安装9.0及以后的产品先安装了ADFS再安装产品就会提示这个错误. 第二种解决办法就 ...

  4. oo第二单元博客总结

    P1 设计结构 三次作业的架构都没有较大的改动,基本上都是靠调度器接受输入的请求并放入队列,然后调度器根据不同的电梯的当前状态来把请求分配至不同电梯的请求队列中,最后电梯再根据自己的请求队列去运行.因 ...

  5. Leedcode算法专题训练(哈希表)

    Java 中的 HashSet 用于存储一个集合,可以查找元素是否在集合中.如果元素有穷,并且范围不大,那么可以用一个布尔数组来存储一个元素是否存在.例如对于只有小写字符的元素,就可以用一个长度为 2 ...

  6. Leedcode算法专题训练(贪心)

    1. 分配饼干 455. 分发饼干 题目描述:每个孩子都有一个满足度 grid,每个饼干都有一个大小 size,只有饼干的大小大于等于一个孩子的满足度,该孩子才会获得满足.求解最多可以获得满足的孩子数 ...

  7. Java 使用 Maven BOM 统一管理版本号

    一个中大型的 Java 项目往往包含若干 JAR 包,这些 JAR 包有着不同的版本号.如果这些 JAR 包单独发布,然后直接通过版本号引用相应的 JAR 包,不同版本的兼容性维护将变得十分麻烦.为了 ...

  8. starctf_2019_babyshell

    starctf_2019_babyshell 有时shellcode受限,最好的方法一般就是勉强的凑出sys read系统调用来注入shellcode主体. 我们拿starctf_2019_babys ...

  9. VirtualBox CentOS8 调整分辨率

    1 概述 VirtualBox安装完CentOS8后无法调节分辨率,需要安装额外的工具. 2 安装依赖包 首先确保虚拟机能正常连接网络,然后安装:kernel.kernel-core.kernel-m ...

  10. 1. Robot Framework入门

    RF定义: 通用型的 自动测试框架, 绝大部分的软件的的自动化系统都可以采用它. 特点: 测试数据文件(Test Data)对应一个个的测试用例.测试数据文件里面使用的功能小模块叫关键字,由测试库(T ...