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. spring_150807_hibernate_transaction_annotation

    实体类: package com.spring.model; import javax.persistence.Entity; import javax.persistence.Id; import ...

  2. 15、Spark Streaming源码解读之No Receivers彻底思考

    在前几期文章里讲了带Receiver的Spark Streaming 应用的相关源码解读,但是现在开发Spark Streaming的应用越来越多的采用No Receivers(Direct Appr ...

  3. HTML5 Video/Audio播放本地文件

    这段时间经常看到开发者在反复询问同一个问题,为什么通过设置src属性,不能播放本地的媒体文件?例如video.src=”D:\test.mp4”. 这是因为浏览器中的JavaScript不能直接直接访 ...

  4. 小学生都能理解的原生js——call

    关于 js 作用域和执行上下文就不过多介绍了,本人也是在网上搜集了各种教程才逐渐理解,以下简单理解并说下call 的作用 首先简单理解下执行上下文有关概念,this 的指向就代表当前执行环境的上下文 ...

  5. 在eclipse中安装TestNG

    https://www.cnblogs.com/baixiaozheng/p/4989856.html 1.可借助Eclipse的Marketplace来安装TestNG Eclipse插件 a.打开 ...

  6. 51nod 1412 AVL树的种类

    非常简单的一道题,一眼题 枚举左儿子大小,再枚举深度即可 复杂度$O(n^2 log n)$ #include <cstdio> #include <cstring> #inc ...

  7. Problem B: 深入浅出学算法003-计算复杂度

    Description 算法复杂度一般分为:时间复杂度.空间复杂度.编程复杂度. 这三个复杂度本身是矛盾体,不能一味地追求降低某一复杂度,否则会带来其他复杂度的增加.在权衡各方面的情况下,降低时间复杂 ...

  8. bzoj 1018 线段树维护连通性

    本题将一道LCT的题特殊化(支持加边和删边,询问图的连通性),将图变成了2×m的网格图,然后就神奇地可以用线段树来维护. 对于每个区间[l,r],维护其四个角落之间的连通性(仅仅通过[l,r]这段的边 ...

  9. PAT甲级1014. Waiting in Line

    PAT甲级1014. Waiting in Line 题意: 假设银行有N个窗口可以开放服务.窗前有一条黄线,将等候区分为两部分.客户要排队的规则是: 每个窗口前面的黄线内的空间足以包含与M个客户的一 ...

  10. 我弄的一些TASKER配置

    http://tieba.baidu.com/p/2184969007 我弄的一些配置,需要的童鞋们找自己想要的吧,有些配置感觉还是很繁琐,请高手不吝赐教才好,图片太多,就发链接了. ◆保持屏幕开启, ...