b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

sheepdog_sheepdog歌词_ceph

电脑杂谈  发布时间:2017-05-28 02:01:28  来源:网络整理

关于原理介绍大部分是参考的,但和别人略有不同。

Sheepdog,是由NTT的3名日本研究员开发的开源项目,主要用来为虚拟机提供块设备。sheepdog

其架构如下:

下面,我们将从架构、模块等几个方面来介绍下:

一、架构图

如上图:

采用无中心节点的全对称架构,无单点故障,存储容量和性能可线性扩展;

新增节点通过简单配置可自动加入(IP:PORT),数据自动实现负载均衡;

节点故障时,数据可自动恢复;

直接支持QEMU/KVM应用;

二、模块

如上图:

由corosync,完成集群成员管理和消息传递;

由Qemu作为Sheepdog的客户端,提供NBD/iSCSI协议支持;

由gateway实现数据的DHT路由,由storage server数据数据本地存储;

三、数据具体存储方式

如上图:

以VDI Object存储VM数据,向用户暴露的是一个块设备;

包含4种数据对象:VDI、Data Object、属性对象和用于快照的VM实时状态数据对象;

以4M的小文件方式实现OBS,但很容易基于此扩展,如使用使用库替代4M的小文件;

其实个人觉得下面的这个图更好:

四、集群管理

1. 采用corosync,tot是em协议的一个开源实现。totem协议主要用来实现集群成员管理和可靠顺序传输。

2. corosync通过提供一个CPG API来提供服务。sheepdog

首先,绑定一个fd到cpg_handle,并注册回调函数cpg_dispatch;

然后将fd注册到epoll;

corosync上消息会触发fd改变,通用epoll触发回调函数cpg_dispatch;

这里主要有两个函数,cpg_deliver_fn和cpg_confchg_fn,分别对应sd_deliver和sd_confchg.

其中,sd_deliver负责集群从corosync给本地发消息,主要是针对VDI进行操作;而sd_confchg主要是对node进行操作,用来监控集群成员变化。

五、存储对象管理

集群对象版本epoch;

obj目录下,每个新的epoch要对应创建一个新的目录;

可从epoch恢复数据;

六、一致性模型

通过epoll机制保证;

通过数据操作实现强一致性(多副本的写同时成功时,才向client返回);

七、DHT路由

从字面上理解的dht的意思。

代理路由方式;

由ip:port生成节点编号,做一致性哈希;


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-49633-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...