The ScaleIO virtual SAN consists of 3 software components

===================

Meta Data Manager (MDM):
Configures and monitors the ScaleIO system. The MDM can be configured in a redundant Cluster Mode with three members on three servers or in a Single Mode on a single server.

An MDM cluster consists of three components:

  • Primary MDM
  • Secondary MDM
  • Tie-Breaker

 

ScaleIO Data Server (SDS):
Manages the capacity of a single server and acts as a backend for data access. The SDS is installed on all servers contributing storage devices to the ScaleIO system. These devices are accessed through the SDS.

 

ScaleIO Data Client (SDC):
A lightweight device driver that exposes ScaleIO volumes as block devices to the application residing on the same server on which the SDC is installed.

 

Figure 1. ScaleIO architecture

 

Storage Definitions

===================

Protection Domain:

A Protection Domain is a subset of SDSs. Each SDS belongs to one (and only one) Protection Domain. Thus, by definition, each Protection Domain is a unique set of SDSs.

 

Storage Pool
A Storage Pool is a subset of physical storage devices in a Protection Domain. Each storage device belongs to one (and only one) Storage Pool. When a Protection Domain is generated, by default it has one Storage Pool (Default).

When a volume is configured over the virtualization layer the volume is distributed over all devices residing in the same Storage Pool. This allows more than one failure in the system without losing data. Since a Storage Pool can withstand the loss of one of its members, having two failures in two different Storage Pools will not cause data loss.

 

Storage Tiers

Storage Pools allow the generation of different storage tiers in the ScaleIO system. When generating a Protection Domain, it is recommended to have SDSs which have the same storage media associated with them (though usually that is the case in most
datacenters since the servers are commonly cloned).

The same goes for a Storage Pool. The best practice would be having the same storage devices in the same pool. This ensures that the volumes will be distributed over the same type of storage.

Note: Mixing different types of media in the same pool is allowed, but one should be aware that due to the distribution of the data, performance will be as good as the least-performing member of the Storage Pool.

ScaleIO Physical Layer

========================

1. MDM. 3 nodes for a redundant management cluster in Cluster MDM, or a single node in case of a Single MDM.

2. SDS. Identify all the nodes which will contribute some, or all, of their physical storage. Install an SDS component on them. Divide the SDSs (nodes) into Protection Domains. Each SDS can be a member of only one Protection Domain. Divide the SDSs (nodes) into Protection Domains. Each SDS can be a member of only one Protection Domain.

3. Identify all the nodes on which the application will access the data exposed by the ScaleIO volumes. Install an SDC component on them. As for communication, the system utilizes the already existing LAN. The components communicate over the LAN using standard TCP/IP. The SDS may have multiple IP addresses, allowing wider bandwidth and better IO performance and redundancy.

As for communication, the system utilizes the already existing LAN. The components communicate over the LAN using standard TCP/IP. The SDS may have multiple IP addresses, allowing wider bandwidth and better IO performance and redundancy.

 

ScaleIO Virutalization Layer

=======================

In this layer, users can:

  • Define volumes.
  • Map volumes

 

ScaleIO over VMware

=======================

In a VMware environment, ScaleIO provides a ScaleIO SCSI target. This target is enclosed, as all the other components, in a virtual machine (VM) that is specific to ScaleIO, known as ScaleIOVM. The ScaleIO SCSI target exposes LUNs to the hypervisor's SCSI initiator. These LUNs are in-turn used by other virtual machines through the data-store.

Figure 3 ScaleIO VM architecture

 

参考资料

========================

EMC ScaleIO User Guide v1.20.1 for Linux and VMware

https://support.emc.com/docu50195_ScaleIO-User-Guide-1.20.1.pdf

ScaleIO 1.2 基础的更多相关文章

  1. 什么是ScaleIO中的forwards rebuild和backwards rebuild?

    Forward rebuild发生在磁盘或节点挂掉的时候. 这种rebuild的过程的load是均衡到protection domain中所有可用的磁盘和节点上的. 这种rebuild相对于backw ...

  2. 容器编排系统K8s之Volume的基础使用

    前文我们聊到了k8s上的ingress资源相关话题,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/14167581.html:今天们来聊一下k8s上volum ...

  3. java基础集合经典训练题

    第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...

  4. node-webkit 环境搭建与基础demo

    首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...

  5. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  6. Golang, 以17个简短代码片段,切底弄懂 channel 基础

    (原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...

  7. [C#] C# 基础回顾 - 匿名方法

    C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...

  8. HTTPS 互联网世界的安全基础

    近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...

  9. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

随机推荐

  1. 牛客练习赛19 D-托米去购物

    最裸的最大流,没啥好说的.. #include<bits/stdc++.h> #define LL long long #define fi first #define se second ...

  2. AngularJS核心01:如何启动

    启动 下面解释了AngularJS是如何运行下面Html的(用一张图和一个例子来解释): 浏览器载入HTML,然后把它解析成DOM. 浏览器载入angular.js脚本. AngularJS等到DOM ...

  3. Python实现图片转文字并翻译至剪切板

    一.环境搭建: 1.PySimpleGUI: pip3 install pysimplegui 2.pytesseract需要有tesseract环境才行: 1. 先搭建tesseract: brew ...

  4. 【BZOJ 4662】 4662: Snow (线段树+并查集)

    4662: Snow Time Limit: 40 Sec  Memory Limit: 256 MBSubmit: 136  Solved: 47 Description 2333年的某一天,临冬突 ...

  5. 【BZOJ 2323】 2323: [ZJOI2011]细胞 (DP+矩阵乘法+快速幂*)

    2323: [ZJOI2011]细胞 Description 2222年,人类在银河系外的某颗星球上发现了生命,并且携带了一个细胞回到了地球.经过反复研究,人类已经完全掌握了这类细胞的发展规律: 这种 ...

  6. eclipse 怎么 直接查看 文件所在位置 显示在文件管理器中。用浏览器浏览。

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha eclipse 怎么 直接查看 文件所在位置 显示在文件管理器中.用浏览器浏览.

  7. wpf企业应用之UI模块解耦

    关于UI模块的解耦,说简单点,首先需要配置菜单与对应操作类的映射关系(或存放于配置文件,或继承接口直接写死在模块代码中,或存放到数据库,原理都一样),然后在菜单加载时,读取配置项动态生成菜单或是其他控 ...

  8. POJ3450 Corporate Identity

    后缀数组. 解决多个字符串的最长公共子串. 采用对长度的二分,将子串按height分组,每次判断是否在每个字符串中都出现过. 复杂度O(NlogN) By:大奕哥 #include<cstrin ...

  9. 【SDOI2017】树点染色【线段树+LCT】

    本来只是想练练LCT,没想到是个线段树 对于操作1:诶新的颜色?这不是access吗? 也就是说,我们用一棵splay来表示一种颜色 操作2直接在LCT上乱搞-- 不对啊,操作3要查子树 诶好像是静态 ...

  10. VIM选项配置说明

    选项配置说明 选项书写格式 选项说明 :se[t] 显示所有被改动的选项 :se[t] all 显示所有非 termcap 选项 :se[t] termcap 显示所有 termcap 选项 :se[ ...