美文网首页
虚拟机创建-镜像介绍

虚拟机创建-镜像介绍

作者: lzp1234 | 来源:发表于2020-04-28 17:34 被阅读0次

前言

虚拟机在创建时,可选择:

  1. 从镜像启动(创建新硬盘)
  2. 从镜像启动(不创建新硬盘,重点介绍
  3. 其它(此处不介绍)

环境

openstack 版本:T
部署方式: kolla-ansible(容器)
块设备: ceph rbd

正文

从镜像启动,并创建新硬盘

该方法实际流程:

首先通过 cinder 创建一块硬盘,然后将镜像信息复制进去,最后将这块盘作为启动盘,启动虚拟机。

该启动方式的一些问题:
  1. 查询虚拟机时,无法查询到镜像信息。因为它本质上是从硬盘启动,而非镜像,所以查询不到。
  2. 此时规格中定义的硬盘大小不会起作用,实际硬盘大小由创建时传入的硬盘大小决定。

从镜像启动,不创建新硬盘(重点)

该方法实际流程

nova 直接访问 ceph rbd ,复制镜像文件供虚拟机使用。
根磁盘的大小由规格决定。(虚拟机规格调整时,不能将磁盘调小,只能增或保持不变)

该启动方式的一些问题:
  1. 使用该方法无法查询到根磁盘的卷信息。因为它没有使用 cinder 创建根磁盘,因此无法通过 cinder 接口查询到根磁盘的信息。
查询详细过程参考:

1. 查询到虚拟机 xml 信息

# 显示虚拟机信息
openstack server show

其中:
OS-EXT-SRV-ATTR:host 指虚拟机所在节点
OS-EXT-SRV-ATTR:instance_name 指虚拟机在 qemu 中的名称

在虚拟机所在节点执行:

# 进入 libvirt 容器
docker exec -itu0 nova_libvirt bash

# 查询 xml 信息,这里的 instance_name 是指刚刚查询到的虚拟机在 qemu 中的名称
virsh dumpxml <instance_name>

找到 xml 中的 devices 组:

image.png
如上图划线处,总体含义是指:
虚拟机的根磁盘由 ceph 的 rbd 提供。
其中块设备所在的 是 vms,名称 是 603ad6af-4ffd-4043-b154-ed97fa3781b3_disk

2. 查询块设备
查询该设备的方法有多种,一是直接进入 ceph_mon 容器中查询,二是在 nova_compute 容器中查询。
这里展示在 nova_compute 容器中查询(因为这种方式参考资料很少)。

首先退出刚刚进入的容器。
然后进入 nova_compute 容器:

# 进入容器
docker exec -itu0 nova_compute bash

在该容器中,/etc 下可以发现 ceph 的认证配置文件,这也说明了 nova_compute 直接与 ceph 交互。

# 查看 ceph 配置文件
ls /etc/ceph/
image.png

这个 keyring 结尾的文件就是 ceph 认证文件了,连接 ceph 时需要使用它。

使用 rbd 命令查看块设备信息

# rbd ls <pool> 查询该 pool 中的块设备
# 查看所有块设备列表, -k 指定 keyring 文件路径,--id 指定用户(也就是 keyring 文件中的倒数第二个单词:nova)
rbd ls vms -k /etc/ceph/ceph.client.nova.keyring --id nova

# rbd info <pool>/<name>
# 查看单个块设备详情
rbd info vms/603ad6af-4ffd-4043-b154-ed97fa3781b3_disk -k /etc/ceph/ceph.client.nova.keyring --id nova

执行如上命令可以查询到相应的块设备信息。

如果对 qemu 熟悉一点的话,还存在一个 qemu-img 的方法去查看虚拟机镜像(根磁盘)信息。

在这里也是可以使用 qemu-img 对该 rbd 设备进行查询的:

# qemu-img info rbd:<pool>/<name>:keyring=<path>:id=<user>
qemu-img info rbd:vms/603ad6af-4ffd-4043-b154-ed97fa3781b3_disk:keyring=/etc/ceph/ceph.client.nova.keyring:id=nova

相关文章

  • 虚拟机创建-镜像介绍

    前言 虚拟机在创建时,可选择: 从镜像启动(创建新硬盘) 从镜像启动(不创建新硬盘,重点介绍) 其它(此处不介绍)...

  • kvm使用

    一.虚拟机的创建 1.添加镜像到本地(利用rz命令) mkdir /iso上传镜像到/iso下,PS:虚拟机创建镜...

  • CentOS 7虚拟机创建指南

    准备 下载VMWare workstation下载CentOS 7镜像 虚拟机创建 创建虚拟机image.png ...

  • Kvm之二:创建虚拟机

    Centos7 Kvm 创建虚拟机 1、准备准备文件目录 2、创建虚拟机磁盘镜像文件 3、安装虚拟机linux操作...

  • BOX镜像

    镜像 vagrant是使用一个基础的镜像来快速克隆出虚拟机,而不是从零开始创建这种缓慢和乏味的方法来创建虚拟机。这...

  • openstack环境搭建

    一、创建虚拟机镜像 http://192.168.12.201/CentOS7.6.ovaopenstack.ov...

  • docker快速搭建kafka和elk环境

    目标 建立如下图所示开发镜像 创建一个6G内存的虚拟机,并用阿里镜像代理 创建完后启动docker-machine...

  • Virtualbox Centos 7 LNMP环境配置(一)

    CentOS中文站 1.创建新的虚拟机,选择好镜像系统。 CentOS镜像下载地址:https://www.cen...

  • VMWARE安装centos7

    准备工作 vmware虚拟机 centos7镜像 虚拟机创建过程 新建虚拟机,选择自定义类型 选择vmware版本...

  • Docker创建lrnp环境

    基于CentOS7创建Docker镜像,Redis、NGINX、PHP容器。(如果创建失败,重启虚拟机重新运行就可...

网友评论

      本文标题:虚拟机创建-镜像介绍

      本文链接:https://www.haomeiwen.com/subject/vucbwhtx.html