Attach Volume 操作(Part I) - 每天5分钟玩转 OpenStack(53)

上一节我们创建了 volume,本节讨论如何将 volume attach 到 Instance,今天是第一部分。

Volume 的最主要用途是作为虚拟硬盘提供给 instance 使用。Volume 是通过 Attach 操作挂载到 instance 上的。本节我们就来详细讨论 Cinder 是如何实现 Attach 的。

上一节我们成功创建了基于 LVM provider 的 volume。每个 volume 实际上是存储节点上 VG 中的一个 LV。

那么问题来了:存储节点上本地的 LV 如何挂载到计算节点的 instance 上呢?通常情况存储节点和计算节点是不同的物理节点。

解决方案是使用 iSCSI,如下图所示

iSCSI 是 Client-Server 架构,有 target 和 initiator 两个术语。

Target
提供 iSCSI 存储资源的设备,简单的说,就是 iSCSI 服务器。

Initiator
使用 iSCSI 存储资源的设备,也就是 iSCSI 客户端。

Initiator 需要与 target 建立 iSCSI 连接,执行 login 操作,然后就可以使用 target 上面的块存储设备了。 Target 提供的块存储设备支持多种实现方式,我们实验环境中使用的是 LV。 Cinder 的存储节点 cinder-volume 默认使用 tgt 软件来管理和监控 iSCSI target,在计算节点 nova-compute 使用 iscsiadm 执行 initiator 相关操作。

下面来看看 Attach 操作的流程图

  1. 向 cinder-api 发送 attach 请求

  2. cinder-api 发送消息

  3. cinder-volume 初始化 volume 的连接

  4. nova-compute 将 volume attach 到 instance

下面我们详细讨论每一个步骤。

向cinder-api发送attach请求

客户(可以是 OpenStack 最终用户,也可以是其他程序)向 cinder-api 发送请求:“请将这个 volume attach 到指定的 instance 上。

这里我们将 volume “vol-1” attach 到 instance ”c2”上。 attach 操作之前,c2 上的虚拟磁盘如下:

进入 GUI 操作菜单 Project -> Compute -> Volumes

选择 volume “vol-1”,点击“Manage Attachments”

在 “Attach to Instance”下拉列表中,选择instance “c2”

点击 ”Attach Volume”

cinder-api 将接收到 attach volume 的请求,attach 请求实际上包含两个步骤:

  1. 初始化 volume 的连接 Volume 创建后,只是在 volume provider 中创建了相应存储对象(比如 LV),这时计算节点是无法使用的。Cinder-volume 需要以某种方式将 volume export 出来,计算节点才能够访问得到。这个 export 的过程就是“初始化 volume 的连接”。 下面是 cinder-api 的日志文件 /opt/stack/logs/c-api.log 中记录的相关信息Initialize_connection 的具体工作主要由 cinder-volume 完成,将在后面详细讨论。

  2. Attach volume 初始化 volume 连接后,计算节点将 volume 挂载到指定的 instance,完成 attach 操作。下面是 cinder-api 的日志文件 /opt/stack/logs/c-api.log 中记录的相关信息

Attach 的具体工作主要由 nova-compute 完成,也将在后面详细讨论。

cinder-api 发送消息

cinder-api 分两步完成 attach 操作,所以对应地会先后向 RabbitMQ 发送了两条消息:

  1. 初始化 volume 的连接 cinder-api 没有打印发送消息的日志,只能通过源代码查看 /opt/stack/cinder/cinder/volume/api.py,方法为 initialize_connection

  2. Attach volume cinder-api 没有打印发送消息的日志,只能通过源代码查看

下一节我们讨论 cinder-volume 和 nova-compute 如何实现 attach 操作。

转载于:https://www.cnblogs.com/CloudMan6/p/5624930.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/271516.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python如何确定拐点_多年股市老鸟买卖操作经验——如何在波段操作确定买入点!经典...

多年股市老鸟买卖操作经验——如何在波段操作确定买入点!经典!股市谚语:“长线是金,短线是银,波段操作是钻石。”这从一个侧面反映了波段操作的重要性。波段操作就是在股价趋势变化的早期阶段辨识买卖机会,在波动的阶段性底部(谷底…

获取后端接口请求中的参数(@PathVariable,@RequestParam,@RequestBody区别,使用postman请求

获取参数 SpringBoot提供的获取参数注解包括:PathVariable,RequestParam,RequestBody,三者的区别如下表: 一:后端接口什么都不加 postman请求后端接口 二:后端接口加RequestParam POST请求RequestParam: ① 用来处理…

spark shell 删除失效_Spark任务提交源码解析

1. 前言反反复复捣鼓了很久,终于开始学习Spark的源码了,果不其然,那真的很有趣。这里我打算一本正经的胡说八道来讲一下Spark作业的提交过程。基础mac系统基础环境如下:JDK 1.8IDEA 2019.3源码Spark 2.3.3Scala 2.11.8提交脚本# 事…

硬件基础:理解串口通信以及232,485,422常见问题

这里并不对串口的编程作讲解,主要是从应用的角度去讲一讲。因为更多的时候,都是产品做好了,比如触摸屏需要和控制器,PLC通信。理想的情况下,一般只要一上电,不需要太多的操作和配置,就可以通信上…

decimal转为string sql_SQL注入详解|OWASP Top 10安全风险实践(二)

本文为一些列连载文章之一,不定期更新,计划目录如下:OWASP介绍SQL注入命令注入XML外部实体注入XPATH注入反射式、DOM及存储XSS失效的身份认证和会话管理不安全的直接对象引用安全配置错误敏感信息泄露功能级访问控制缺失跨站请求伪造服务端请…

各类排序算法实现(亲测)

排序算法通常分为外部排序和内部排序,通常所说的八类排序属于内部排序; 外部排序在此不说明,主要给出八类排序的简单思想和实现: 1.插入排序 1.1 直接插入排序: 每次将一个新数,插入到已经排列好的有序…

计算机基础:声音的相关知识笔记

1、声音的相关概念 模拟声音信号:声波在时间和幅度上都是连续的模拟信号。 1.1 声音的组成 幅度:声波的振幅。计量单位是分贝(dB) 频率:声波每秒变化的次数,用Hz表示。人耳能听到的声音信号的频率范围20Hz~…

ansi编码_Java 字符编码

点击上方蓝字关注我们!作者介绍王云静,Java 开发工程师,2018 年 7 月加入去哪儿网,目前在目的地 - 呼叫中心。曾获得过 ACM 亚洲区域赛铜牌。-----基本概念字符集字符(Character)是各种文字和符号的总称,包括各国家文字…

外卖和快递行业数据_下周一起,整治全面启动!锁定全市外卖、快递行业!

为加强我市外卖、快递行业电动自行车交通安全管理,降压预防事故,营造良好的通行秩序,下周一起(12月21日)深圳交警将开展电动自行车交通安全月暨外卖、快递行业集中整治行动。⭕圈重点⭕下周一起(12月21日)正式开展外卖、快递行业集中整治行动…

计算机基础:图形、图像相关知识笔记

1、图形、图像的基础知识 图形:由称为矢量的数学对象所定义的直线和曲线等组成。 图像:也称为栅格图像,由点阵图或位图图像、用像素来代表图像。每一个像素都被分配一个特点的位置和颜色值。 图形和图像之间在一定条件下可以互相转换&#xf…

计算机应用用什么样的笔记本,制图用什么笔记本好

以前人们常说的绘画都是在纸上,然而科技时代的到来也让绘画的方式有了改变,而且现实中还在发展电子商务,因此大家都开始使用计算机制图,不同的计算机制图的方式不一样,专业使用电脑制图的人都会对电脑比较挑剔。它们还…

【代码笔记】iOS-下拉选项cell

一&#xff0c;效果图。 二&#xff0c;工程图。 三&#xff0c;代码。 RootViewController.h #import <UIKit/UIKit.h> //加入头文件 #import "ComboBoxView.h"interface RootViewController : UIViewController {ComboBoxView *_comboBox; }end RootV…

宽量程电压电流 stm32_万用表你只会量电压电流?史上最全万用表手册,这么做你不会烧表...

一&#xff0c;万用表使用前的准备。二&#xff0c;万用表各个档位的含义。三&#xff0c;万用表测量电压。四&#xff0c;万用表测量电流。五&#xff0c;万用表测量电阻。六&#xff0c;万用表测量二极管。七&#xff0c;万用表测量电容。八&#xff0c;万用表一般的维护保养…

24个笔画顺序表_小学一年级语文26个汉语拼音字母要点+田字格儿歌,赶紧给孩子看...

126个汉语拼音字母要点汉语拼音字母表-声母表汉语中每个音节起始处的辅音可以构成声母。汉语拼音方案《声母表》规定的声母符号一共有23个。b [玻] p [坡] m [摸] f [佛]d [得] t [特] n [讷] l [勒]g [哥] k [科] h [喝] j [基] q [欺] x [希]z [资] c[雌] s [思] r [日] zh[知…

多媒体基础:动画和视频知识笔记

1、动画和视频的概念 动画&#xff1a;将静态的图像、图形等按照一定的时间顺序显示而形成的连续的动态画面。传统意义来说动画是在连续多格的胶片上拍摄的一系列画面&#xff0c;比将胶片以一定的速度放映&#xff0c;从而产生动态的视觉技术。 视频&#xff1a;活动的、连续的…

mongoDB的安装(一)

0、安装环境说明&#xff1a; linux系统&#xff1a;centos6.5 mongoDB版本&#xff1a;mongodb-linux-x86_64-rhel62-3.2.7.tgz 1、下载 mongoDB的下载&#xff1a;https://www.mongodb.com/download-center#community&#xff0c;注意选择版本 2、解压 tar -zxvf mongodb-lin…

计算机管理任务计划程序损坏,win7弹出任务计划程序窗口显示该任务映像损坏或已篡改0x80041321错误代码怎么办...

最近有win7 64位专业版系统用户到本站反馈说碰到这样一个问题&#xff0c;就是电脑突然弹出一个任务计划程序窗口&#xff0c;显示该任务映像损坏或已篡改0x80041321错误代码&#xff0c;遇到这样的问题该如何处理呢&#xff0c;本文就给大家讲解一下win7弹出任务计划程序窗口显…

Visual paradigm社区版下载及中文菜单的设置

免费的官网社区版链接为&#xff1a; https://www.visual-paradigm.com/download/community.jsp 设置中文菜单 安装之后&#xff0c;由于如果想设置中文菜单的话&#xff0c;可能会遇到麻烦&#xff0c;因为菜单太多 如下图&#xff0c;所示步骤&#xff1a; Window-->…

python画函数图像要用到的模块_教你如何绘制数学函数图像——numpy和matplotlib的简单应用...

numpy和matplotlib的简单应用 一、numpy库 1.什么是numpy NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵&#xff0c;比Python自身的嵌套列表&#xff08;nested list structure)结构要高效的多&#xff08;该结构也可以用来表示矩阵&#xff…

台式电脑如何使用无线网,wifi怎么连接?

随着网络的发展&#xff0c;现在无线路由器已经深入到寻常百姓家了&#xff0c;无线信号满街都是&#xff0c;但是作为台式电脑&#xff0c;却不具备wifi自动连接这个功能。那么&#xff0c;台式电脑怎么用wifi呢&#xff1f;下面小编就教大家wifi如何连接。1、电脑必须安装一块…