随笔分类 - OpenStack
摘要:NFS Volume Provider(Part I) NFS 更多的应用在实验或小规模 cinder 环境,由于性能和缺乏高可用的原因在生产环境中不太可能使用,但是学习 NFS volume provider 的意义在于: 1、理解 cinder-volume 如何支持多 backend 2、更重
阅读全文
摘要:Boot from Volume Volume 除了可以用作 instance 的数据盘,也可以作为启动盘(Bootable Volume)。 打开 instance 的 launch 操作界面。 这里有一个下拉菜单“Select Boot Source”。以前 launch instance 要么
阅读全文
摘要:Restore Volume 操作 restore 的过程其实很简单,两步走: 在存储节点上创建一个空白 volume。 将 backup 的数据 copy 到空白 voluem 上。 restore 操作的详细流程: 1、向 cinder-api 发送 backup 请求 2、cinder-api
阅读全文
摘要:Backup Volume 操作 Backup 是将 volume 备份到别的地方(备份设备),将来可以通过 restore 操作恢复。 Backup VS Snapshot 初看 backup 功能好像与 snapshot 很相似,都可以保存 volume 的当前状态,以备以后恢复。 但二者在用途
阅读全文
摘要:Snapshot Volume 操作 Snapshot 可以为 volume 创建快照,快照中保存了 volume 当前的状态,以后可以通过 snapshot 回溯。 snapshot 操作实现比较简单,流程图如下: 1、向 cinder-api 发送 snapshot 请求 2、cinder-ap
阅读全文
摘要:Delete Volume 操作 状态为 Available 的 volume 才能够被 delete。 如果 volume 当前已经 attach 到 instance,需要先 detach 后才能 delete。 Delete操作实现比较简单,流程图如下: 1、向 cinder-api 发送 d
阅读全文
摘要:Extend Volume 操作 Extend Volume 操作扩大 volume 的容量。为了保护现有数据,cinder 不允许缩小 volume。 Extend 操作用于扩大 Volume 的容量,状态为 Available 的 volume 才能够被 extend。 如果 volume 当前
阅读全文
摘要:Detach Volume 操作 下图是 Detach 操作的流程图 1、向 cinder-api 发送 detach 请求 2、cinder-api 发送消息 3、nova-compute detach volume 4、cinder-volume 删除 target 详细分析: 1、向 cind
阅读全文
摘要:cinder-volume 初始化 volume 的连接 cinder-volume 接收到 initialize_connection 消息后,会通过 tgt 创建 target,并将 volume 所对应的 LV 通过 target export 出来。 通过命令 tgtadm --lld is
阅读全文
摘要:Attach Volume (Part I) Volume 的最主要用途是作为虚拟硬盘提供给 instance 使用。 Volume 是通过 Attach 操作挂载到 instance 上的。 上一节成功创建了基于 LVM provider 的 volume。每个 volume 实际上是存储节点上
阅读全文
摘要:Create Volume(Part III) 第三部分 cinder-volume 的处理过程 cinder-volume 通过 driver 创建 volume 与 cinder-api 和 cinder-scheduler 执行方式类似,cinder-volume 也启动了一个 Flow 来完
阅读全文
摘要:Create Volume(Part II) 第二部分 cinder-scheduler 调度工作 cinder-scheduler 执行调度 cinder-scheduler 执行调度算法,通过 Filter 和 Weigher 挑选最优的存储节点 cinder-scheduler 通过 Flow
阅读全文
摘要:Create Volume (Part I) Cinder 创建 volume Create 操作流程如下: 1、客户(可以是 OpenStack 最终用户,也可以是其他程序)向 API(cinder-api)发送请求:“帮我创建一个 volume”。 2、API 对请求做一些必要处理后,向 Mes
阅读全文
摘要:准备 LVM Volume Provider Cinder 真正负责 Volume 管理的组件是 volume provider。 Cinder 支持多种 volume provider,LVM 是默认的 volume provider。 Devstack 安装之后,/etc/cinder/cind
阅读全文
摘要:掌握 cinder-scheduler 调度逻辑 创建 Volume 时,cinder-scheduler 会基于容量、Volume Type 等条件选择出最合适的存储节点,然后让其创建 Volume。 详细分析 cinder-scheduler 实现调度工作的具体步骤: 在 /etc/cinder
阅读全文
摘要:Cinder 组件详解 cinder-api cinder-api 是整个 Cinder 组件的门户,所有 cinder 的请求都首先由 cinder-api 处理。 cinder-api 向外界暴露若干 HTTP REST API 接口。 在 keystone 中可以查询 cinder-api 的
阅读全文
摘要:下面是 Volume 创建的流程图 : 1、客户(可以是 OpenStack 最终用户,也可以是其他程序)向 API(cinder-api)发送请求:“帮我创建一个 volume” 2、API 对请求做一些必要处理后,向 Messaging(RabbitMQ)发送了一条消息:“让 Scheduler
阅读全文
摘要:理解 Block Storage 操作系统获得存储空间的方式一般有两种: 通过某种协议(SAS,SCSI,SAN,iSCSI 等)挂接裸硬盘,然后分区、格式化、创建文件系统; 或者直接使用裸硬盘存储数据(数据库) 通过 NFS、CIFS 等 协议,mount 远程的文件系统 第一种裸硬盘的方式叫做
阅读全文
摘要:如上图所示,把对 Instance 的管理按运维工作的场景分为两类:常规操作和故障处理。 常规操作 常规操作中,Launch、Start、Reboot、Shut Off 和 Terminate 都很好理解。 下面几个操作重点回顾一下: Resize 通过应用不同的 flavor 调整分配给 inst
阅读全文
摘要:计算节点宕机了怎么办? Evacuate 可在 nova-compute 无法工作的情况下将节点上的 instance 迁移到其他计算节点上。 但有个前提: Instance 的镜像文件必须放在共享存储上。 下面是 Evacuate instance 的流程图 1、向 nova-api 发送请求 2
阅读全文

浙公网安备 33010602011771号