1.11 SAN存储技术:

从存储到主机之间的网络连接有多种不同的机制,包括DAS、SAN、NAS等,而针对大型应用,关键应用常常采用SAN存储架构,其优点是高性能,易拓展,而缺点则是管理复杂、价格昂贵(特别是使用FC光纤网络)。

如上图,关键业务如web服务器、数据库服务器等通过光纤连接到光纤交换上,光纤交换下是多套存储形成的存储网络,这样的架构性能相当强劲。企业级应用中,为防止单点故障,还会使用两套光纤交换实现物理上的冗余,保证高可用性。

说到SAN就必须要提iSCSI,iSCSI(ip Over SCSI)业内也常叫作ipSAN,即是通过TCP/IP的网络协议来传输磁盘的SCSI数据,随着以太网技术的发展,千兆万兆都将应用在企业中,而以iSCSI存储的性价比,很多中小型企业会更加倾向于使用。

区分SCSI设备和FC光纤设备是相当重要的,FC光纤设备是在存储虚拟化最底层模拟一个或多个SCSI设备的抽象设备,并没有真实的SCSI设备,而是通过SCSI协议模拟的。

GNBD(Global Network Block Device)全局网络块设备类似于iSCSI的存储架构,只是数据传输以数据块为单位,C/S内核模块提供了通过以太网块级别(block-level)的存储访问。

1.12 光纤通道:

现在企业级应用中,通信最佳选材当然是FC光纤了,光纤通信抗干扰、高速率,在企业中表现优秀,光纤通道的组建需要光纤线、HBA卡、光纤交换机,组成一个高性能高可用的光纤网络。

由于光纤网络的管理复杂性,且价格高昂,所以一般仅应用在最为关键的业务的关键部分,典型的应用就是光纤存储网络。

1.13 HBA光纤接口卡:

说到HBA卡就要说说光纤通信的原理,光纤通信主要是一个光电转换的过程,数字信号通过HBA卡转换成光信号,光信号在光纤中高速传输,在另一端的HBA卡上转换成电信号。HBA卡本身就有处理器对数据进行处理,不需要耗费CPU的处理时间,这也是光纤通信高效的原因之一。

HBA卡类似于SCSI卡,在计算机中被识别成SCSI设备。HBA卡使用SCSI命令,SCSI数据将被添加网络包头和包尾,转换成FC光纤通道协议进行传输。一些HBA卡能提供一个以上的光纤物理路径,就像多路径一样。

1.14 光纤交换机:

光纤交换机是SAN光纤存储网络的重要部分,提供了良好的拓展性,也使得SAN存储网络连接几乎不受距离的限制。光纤通道通信距离可以超过100km。

光纤交换的拓扑有以下三种:点对点;仲裁环路;交换式光纤网。点对点是两个设备的简单连接,仲裁环路是所有的设备都排列在一个环路连接中,交换式光纤网是所有的设备连接到一个或多个光纤交换机上,形成光纤交换网络。企业中普遍使用的是交换式光纤网。

1.15 iSCSI存储:

iSCSI可以理解为ip Over SCSI,也可以理解为internet SCSI,即是指SCSI数据通过以太网络进行传输,使用TCP/IP协议,默认使用3260端口。一些企业更乐于使用iSCSI,因为不像FC光纤网,iSCSI完全可以利用现有的交换网络进行部署,且iSCSI以性价比著称,对于中小型企业来说是最佳选择。

1.16 NPS网络电源控制器:

NPS(Network Power Switch)网络电源控制器,即电源Fence。在集群中,Fence设备是相当重要的,在Windows的集群中没有Fence这个概念,他的服务切换是通过仲裁机制来实现;而Linux的集群既有仲裁机制,也有Fence机制。

Fence设备大体可以分为两大类,一类是电源Fence,另一类则是电缆Fence。现在的集群大部分只使用了电缆Fence。下面介绍一下Fence的工作原理:以双机的HA集群为例,当空闲节点通过心跳线得知服务节点发生问题,如通信失败等,空闲节点就会利用服务节点上的Fence卡将该节点关机或重启,并将服务资源“抢”到本节点上。电源Fence则是检测到集群节点断电时则切换服务到另一节点。

下图即为NPS,主要就是为每一个电源接口提供一个以太网口,以实时监控电源情况,目前国内很少使用,其实有了UPS和完善的机房管理体制,NPS也没有什么必要。

1.17 ACPI机制:

ACPI(Advanced Configuration and Power interface)机制主要是针对主机电源管理的机制,对于管理电源消耗很有用处。各厂商也有相应的产品,如戴尔的远程访问接口卡DRAC,惠普的是iLo,英特尔的是IpmI等。

由于ACPI是基于软件的机制,所以并不能完全依赖。例如,集群中一个节点由于内核恐慌(kernel panic)而被逐出集群,这时该节点将不能处理必要的电源轮询。

1.18 网络集群节点:

集群心跳也属于集群通信传输的一部分,集群上的服务可以利用不同网卡上的子网分隔开来,集群间通信形成一个子网,集群中各节点对外提供服务的网卡连接到公网。

通常为防止单点故障,各通信接口都要利用两块以上的网卡做绑定,可以实现冗余和负载均衡的作用。

网络设备必须支持组播,组播用于集群间各节点之间的通信,地址是集群创建之时自动生成的,但也可以手动地用其他地址覆盖。必须确定所有的网络硬件(路由、交换、集线器、网卡等)支持组播。交换机的默认配置有些是关闭了组播的,你可以通过ping组播地址测试一下,使用netstat -g 查看已分配的组播地址。

1.19 广播与组播:

广播的特点就是单对多,像DHCP服务那样,利用广播来发送自己DHCP的身份;组播则是数据包发送给指定的接收者。有一个形象的比喻,广播就是告诉全公司的人一件事,组播则是只告诉一部分你想告诉的人。

组播比广播更具效率,因为广播是不管你需不需要这信息,通通都发一遍,而组播则是有针对性地发送,效率自然比较好。

不是所有的以太网卡都支持组播。

IPv6很依赖组播,因为IPv6取消了广播,采用了更合理的组播。

1.20 以太通道的绑定:

以太通道的绑定即是将多块物理网卡在操作系统上绑定成一个逻辑设备,实现高可用性和负载均衡。在集群中,双机之间的心跳线是集群的关键,但是如果心跳线的网卡发生故障,则整个集群就失去功能了,所以,心跳线网卡常常用两块网卡绑定起来,实现冗余,防止由于物理网卡故障而导致集群崩溃。

1.21 以太通道绑定的配置:

配置以太网卡绑定相当简单。

第一步是配置加载bonding内核模块,使得支持绑定功能;

# vim /etc/modprobe.conf

alias bond0 bonding

options bond0 mode=1 miimon=100 use_carrier=0

写入上面两行参数后保存退出;其中,mode=0/1,0表示提供容错和负载均衡的功能,1表示只提供容错的功能;miimon=100表示连接监控的频度,单位为毫秒;use_carrier表示如何确定连接状态;可以使用primary参数指定哪块网卡作为主要优先的。

第二步是配置网卡配置文件:

# cd /etc/sysconfig/network-scripts/

假设要将eth0和eth1绑定成bond0,则作如下修改:

# vim ifcfg-eth0

DEVICE=eth0

MASTER=bond0

SLAVE=yes

ONBOOT=yes

BOOTPROTO=static

# vim ifcfg-eth1

DEVICE=eth1

MASTER=bond0

SLAVE=yes

ONBOOT=yes

BOOTPROTO=static

# vim ifcfg-bond0

DEVICE=bond0

IPADDR=192.0.2.1

NETMASK=255.255.255.0

GATEWAY=192.0.2.254

ONBOOT=yes

BOOTPROTO=static

重启网络:

# /etc/init.d/network restart

1.22 多路径:

多路径是用于访问共享存储的,可防止单点故障导致服务不可用。

设备映射多路径允许节点通过多条路径访问存储,多路径支持FC、iSCSI、GNBD等存储架构。

1.23 安全:

集群间多有节点的通信默认都经过了加密,OpenAIS使用集群名作为密钥,但这并不是彻底安全的策略。

防火墙必须允许集群和GFS相应端口的使用。以下端口必须开放:

5404,505 cman udp

11111 ricci tcp

14567 gnbd tcp

16851 modcluster tcp

21064 dlm tcp

50006,50008 ccsd tcp

50007 ccsd udp

【RHCA翻译计划】EX436第一章:集群存储概论1

http://yeshaochen.blog.51cto.com/3155801/656592

【博客话题】技术之路上的人和事

http://yeshaochen.blog.51cto.com/3155801/659577

转载于:https://blog.51cto.com/yeshaochen/658678

【RHCA翻译计划】EX436第一章:集群存储概论2相关推荐

  1. 《Introduction to Tornado》中文翻译计划——第五章:异步Web服务

    http://www.pythoner.com/294.html 本文为<Introduction to Tornado>中文翻译,将在https://github.com/alioth3 ...

  2. 《Reids 设计与实现》第十六章 集群(下)

    <Reids 设计与实现>第十六章 集群(下) 文章目录 <Reids 设计与实现>第十六章 集群(下) 七.复制与故障转移 1.设置从节点 2.故障检测 3.故障转移 4.选 ...

  3. 《Reids 设计与实现》第十五章 集群(中)

    <Reids 设计与实现>第十五章 集群(中) 文章目录 <Reids 设计与实现>第十五章 集群(中) 四.在集群中执行命令 1.计算键属于哪个槽 2.判断槽是否由当前节点负 ...

  4. 《Reids 设计与实现》第十四章 集群(上)

    <Reids 设计与实现>第十四章 集群(上) 文章目录 <Reids 设计与实现>第十四章 集群(上) 一.简介 二.节点 1.启动节点 2.集群数据结构 3.CLUSTER ...

  5. 第一章、统计学习方法概论

    第一章.统计学习方法概论 文章目录 第一章.统计学习方法概论 1.统计学习的特点 2.统计学习的研究 3.统计学习方法的基本步骤 3.监督学习 3.1 基本概念 1)输入变量 & 输入空间 & ...

  6. 持志助中华 九州初志开创国内集群存储新时代

    信息高速增长势不可挡.据IDC的报告显示,现在全球数据量每18个月就要翻一番,每年全球产生的数据量已经高达40EB(1EB=1000PB).而这些疯狂增长的数据主要来自非结构化数据.非结构化数据是指那 ...

  7. 无惧浩瀚数据 超云XS5000集群存储为扩展而生

    伴随着信息化技术的发展,我们正在加快步入数字时代的进程.根据IDC的报告显示,全球每年数据增长幅度超过58%,预计到2020年,全球数据总量将超过40ZB(1ZB约等于1万亿GB).面对海量数据的激增 ...

  8. RDD论文翻译:基于内存的集群计算容错抽象

    该论文来自Berkeley实验室,英文标题为:Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cl ...

  9. Hazelcast IMDG参考中文版手册-第五章-集群设置

    本章介绍Hazelcast集群以及集群成员和本机客户端用于构成Hazelcast集群的方法. 5.1.发现机制 Hazelcast集群是运行Hazelcast的集群成员网络.集群成员(也称为节点)自动 ...

最新文章

  1. java 取得textfield_怎样获取java中textfield的内容
  2. 途家网获3亿美元融资,PMCAFF放送100元途家优惠券(途家内部员工专用)
  3. 电脑计算机d盘有用吗,d盘不见了,教您电脑d盘不见了怎么解决
  4. node.js打包环境部署CentOS7.4
  5. 质量故事(1)---“请三思而后行!不要轻易下结论”
  6. QT获取本机IP,本地IP
  7. 48.本地Hyper-V虚拟机的异地(Azure)容灾(下)
  8. p12解析流程_iOS证书及描述文件制作流程详解
  9. 编译android源码 太慢,记编译Android源码的经历
  10. MAC:一个数据缓冲区,作为参数传递到另外一个函数就崩溃
  11. php 编译安装gd 失败,编译安装php5 解决编译安装的php加载不了gd
  12. 【国土】国土“三调”,用这个方案就对了
  13. tornado、flask、c++zmq-req-rep记录
  14. html制作简历供人填写,求职简历制作个人定制代写
  15. chromium 下载地址
  16. PTA 7-3 愿天下有情人都是失散多年的兄妹 (25 分)
  17. C语言理论小学案例试讲,C语言试讲演示文稿.ppt
  18. 【21考研】计算机/软件等专业调剂信息集合!【完结版】
  19. Node 插件 爬取王者荣耀官网英雄信息,并生成数据库
  20. 解决项目无法读取src/main/java目录下面的配置文件问题

热门文章

  1. SpringBoot入门和配置
  2. python-leepcode-作用解析 - 5-27
  3. 可长点心吧-sort
  4. Jmeter学习系列----1 环境搭建
  5. 《Linux命令行与shell脚本编程大全 第3版》Shell脚本编程基础---43
  6. jfinal配置rails的数据表
  7. JavaScript学习笔记(十)——学习心得与经验小结
  8. vue请求在退出页面还执行吗_如何用 Cloudbase Framework 部署一个 Vue 项目
  9. 【控制】《多智能体系统一致性协同演化控制理论与技术》纪良浩老师-第12章-离散时间多智能体系统牵制一致性
  10. 5.5 SVM补充-机器学习笔记-斯坦福吴恩达教授