LVM名称介绍

PV:物理磁盘

VG:卷组,多个PV可以组成一个VG,一个VG可以划分成多个LV(逻辑卷)。

PP:物理区块,将一个VG逻辑的划分成连续的小块。

LP:逻辑区块,若干个PP组成一个LP,多个PP组成一个LP,类似于raid0;一个LP映射多个PP镜像,类似于raid1。

LV:由VG划分,若干连续LP组成一个LV(对应OS层的分区

LVM创建到挂载到物理机再到虚机实验

需要安装 lvm2

yum install lvm2

1.给虚拟机挂载三个云硬盘作为硬盘

2.创建pv

pv create /dev/vdc /dev/vdd /dev/vde

pvscan查看

3.创建vg

-s表示最小的块的大小

“zhou”VG创建成功,包含三块硬盘

注:vgextend vg名  硬盘名  扩展VG  ( vgreduce减少)

4.创建 lv

lvcreate -L 20G -n lvname vgname

pvs;lvs;vgs;

后续就是对lv的处理 格式化后可以使用

服务端安装

yum install scsi-target-utils

vim/etc/tgt/targets.conf

  1. <targetiqn.2014-07.com.tecmint:tgt1>
  2. backing-store /dev/vg_iscsi/lv_iscsi
  3. backing-store /dev/vg_iscsi/lv_iscsi
  4. </target>

  1. iSCSI 采取限定名 (iqn.2014-07.com.tecmint:tgt1).
  2. 名称随便你
  3. 用于确定目标名, 这是这台服务器中的第一个目标
  4. LVM共享特定的LUN,backstore 通过fdisk -l查看磁盘路径

service tgtd start

  1. #tgtadm --mode target --op show

tgt-admin --show

上面的命令会列出可用LUN的下面这些信息

  1. iSCSI 限定名
  2. iSCSI 已经准备好
  3. 默认LUN 0被控制器所保留
  4. LUN 1是我们定义的目标器
  5. 这里我为每个LUN都定义了4GB
  6. 在线: 是的,这就是可以使用的LUN

initiar端

1.发现

iscsiadm -m discovery --type sendtargets --portal IP

2.登陆scsi,挂载到物理机

命令:iscsiadm -m node -T <target-name> -p <ip-address>:<port> --login(执行发现之后自动登陆)

#iscsiadm -m node -T iqn.2016-07.com.zmg:tgt2 -p 10.133.47.139:3260 --login

可以看到lun已经挂载到物理主机上了,接下来就是挂载到虚拟机。

端口scsi  iscsiadm -m node -T [target-name] -p [ip-address] –u

fdisk可以看到disk已经出现在host上

3.挂载到虚拟机

将这个disk attach到虚拟机上,使用libvirt实现

root:~#

virsh attach-disk instance-0000000b --source /dev/mapper/cinder--volumes-xxxxx --target vdc

Disk attached successfully

ssh到虚拟机里面,发现又多了一个disk

总结:LVM创建lv,然后把逻辑卷定义为iscsi存储的目标设备target,会有LUN ID,然后客户端initiator端发现目标设备

,然后登陆链接目标设备,挂载为物理机的磁盘,然后通过libvirt driver挂载到虚拟机上。

目的:iscsi是为了将存储设备通过ip网络连接在一起,使数据存储不受地域限制。

工作原理:

iscsi的协议自顶向下一共可以分为三层:

1。scsi层:根据客户端发出的请求建立 scsi cdb(命令和数据块),并传给iscsi层。同时接收来自iscsi层的cdb(命令描述块),并向应用返回数据。

2。iscsi层:对sicsi cdb进行封装,以便能够在基于tcp/ip协议的网络上进行传输,完成scsi到tcp/ip的协议映射。这一层是iscsi协议的核心层。(ISCSI协议封装SCSI报文为ip数据包)

3。tcp/ip层:对IP报文进行路由和转发,并且提供端到端的透明可靠的传输.(TCP/IP报文封装)

遇到问题小记
问题描述:SCSI服务器端与客户端可相互ping通,但当iSCSI客户端discover scsi-targets时,报错 No route to host 防火墙 iptables的原因 关掉firewalld

cinder 挂载卷和 iSCSI原理的更多相关文章

  1. cinder挂载卷的过程原理

    LVM名称介绍 PV:物理磁盘 VG:卷组,多个PV可以组成一个VG,一个VG可以划分成多个LV(逻辑卷). PP:物理区块,将一个VG逻辑的划分成连续的小块. LP:逻辑区块,若干个PP组成一个LP ...

  2. cinder侧挂载卷流程分析

    cinder侧挂载卷流程分析,存储类型以lvm+iscsi的方式为分析基础cinder侧主要调用了三个接口1)reserve_volume: 把volume的状态改为attaching,阻止其它节点执 ...

  3. iSCSI 原理和基础使用

    终于完成最后一篇了,一上午的时间就过去了. 下文主要是对基本操作和我对iSCSI的理解,网上有很多iSCSI原理,在这里我就不写了,请自行学习. 这篇文章仅对iSCSI的很多误解做一次梳理,你必须对所 ...

  4. [ Centos 7 iscsi搭建 及 1台客户端同时挂载多台iscsi服务端问题 ]

    一.什么是iscsi iSCSI技术是一种由IBM公司研究开发的,是一个供硬件设备使用的可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千 ...

  5. OpenStack 对接 Ceph 环境可以创建卷但不能挂载卷的问题

    问题 环境:Nova.Cinder.Glance 都对接了 Ceph RBD 后端存储. 以往的操作包括上传镜像.创建卷.挂载卷都是一切正常的,但突然出现了无法挂载卷的问题,而且还是因为 Ceph 客 ...

  6. 疑难杂症——解决 Cinder 僵尸卷问题

    目录 目录 问题描述 问题解决 最后 问题描述 Cinder 的僵尸卷一般是因为操作不当导致分配的卷无法正常使用且无法正常分离或删除. 问题解决 解决僵尸卷问题的思路类似解决 Linux 系统中的僵尸 ...

  7. 网络存储(二)之ISCSI原理

    组成 一个简单ISCSI系统大致由以下部分构成 ISCSI Initiator 或者 ISCSI HBA ISCSI Target 以太网交换机 一台或者多台服务器 结构图如下: iscsi服务器用来 ...

  8. k8s 挂载卷介绍(四)

    kubernetes关于pod挂载卷的知识 首先要知道卷是pod资源的属性,pv,pvc是单独的资源.pod 资源的volumes属性有多种type,其中就包含有挂载pvc的类型.这也帮我理清了之间的 ...

  9. iscsi原理

    iscsi原理 一,[名词解释] SCSI:小型计算机系统接口,SCSI作为i输入/输出接口, FC:光纤通道 DAS:直连式存储,指将存储设备通过SCSI接口或光纤通道直接连到一台计算机上. NAS ...

随机推荐

  1. JAVA多线程提高六:java5线程并发库的应用_线程池

    前面我们对并发有了一定的认识,并且知道如何创建线程,创建线程主要依靠的是Thread 的类来完成的,那么有什么缺陷呢?如何解决? 一.对比new Threadnew Thread的弊端 a. 每次ne ...

  2. MySQl学习-——Mysql体系结构与Mysql存储引擎

    Mysql体系结构与Mysql存储引擎 Mysql体系结构 mysql体系结构图:

  3. GridControl详解(一)原汁原味的表格展示

    Dev控件中的表格控件GridControl控件非常强大.不过,一些细枝末节的地方有时候用起来不好找挺讨厌的.使用过程中,多半借助Demo和英文帮助文档.网上具体的使用方法也多半零碎.偶遇一个简单而且 ...

  4. 如何构建一个很棒网站页脚(Website Footer)

    对于很多人来说,制作页脚是只是设计师顺手而为的任务.它似乎很容易,似乎可以忽略不计.因为很多人都觉得网站底部很少人会去看,而且页脚链接的所有链接的点击率(CTR)都是最低的,何必呢? 真是这样的吗?下 ...

  5. 使用 XSLT 作为 HTML 的样式表

    简介 当听到样式表这个词时,您可能会想到 CSS 样式表.XSLT 样式表通常用于 XML 转换,比如在 Web 服务之间映射数据.因为 XSLT 非常适合此用途,所以创建了顶层元素 <styl ...

  6. Configure Always On Availability Group for SQL Server on Ubuntu——Ubuntu上配置SQL Server Always On Availability Group

    下面简单介绍一下如何在Ubuntu上一步一步创建一个SQL Server AG(Always On Availability Group),以及配置过程中遇到的坑的填充方法. 目前在Linux上可以搭 ...

  7. 【BZOJ】3495: PA2010 Riddle 2-SAT算法

    [题意]有n个城镇被分成了k个郡,有m条连接城镇的无向边.要求给每个郡选择一个城镇作为首都,满足每条边至少有一个端点是首都.n,m,k<=10^6. [算法]2-SAT,前后缀优化建图 [题解] ...

  8. [ JS 进阶 ] 闭包,作用域链,垃圾回收,内存泄露

    原网址:https://segmentfault.com/a/1190000002778015 1. 什么是闭包? 来看一些关于闭包的定义: 闭包是指有权访问另一个函数作用域中变量的函数 --< ...

  9. H5小游戏——看你有多色

    使用了封装了canvas的create.js库来实现的. 最终效果: 工程: Rect.js /* * 方块类 */ function Rect(n,color,specialColor){ crea ...

  10. 010 JVM类加载

    转自http://www.importnew.com/23742.html 前言 我们知道我们写的程序经过编译后成为了.class文件,.class文件中描述了类的各种信息,最终都需要加载到虚拟机之后 ...