双机相关知识(原理、LVM、Raid技术)
1 双机知识
1.1 预备知识
1.1.1 基本概念
双机热备:双机热备双机管理软件可以根据心跳自动检测环境运行情况,如果发现一个节点挂掉了,会自动切换到另外一个节点上运行,前台用户根本看不出。缺点是如果在切换过程中两个节点都挂掉数据很容易丢失掉。
像邮件服务器就需要通过双机热备,来避免长时间的服务中断,保证系统长期、可靠的服务。
双机热备分为共享的存储设备方式和纯软件的方式:
共享的存储设备方式基于存储共享的双机热备是双机热备的最标准方案。对于这种方式,采用两台服务器(邮件系统同时运行在两台服务器上),使用共享的存储设备磁盘阵列(邮件系统的数据都存放在该磁盘阵列中)。两台服务器可以采用互备、主从、并行等不同的方式。在工作过程中,两台服务器将以一个虚拟的IP地址对外提供服务,依工作方式的不同,将服务请求发送给其中一台服务器承担。同时,服务器通过心跳线侦测另一台服务器的工作状况。当一台服务器出现故障时,另一台服务器根据心跳侦测的情况做出判断,并进行切换,接管服务。对于用户而言,这一过程是全自动的,在很短时间内完成,从而对业务不会造成影响。由于使用共享的存储设备,因此两台服务器使用的实际上是一样的数据,由双机或集群软件对其进行管理
优点:对于共享方式,数据库放在共享的存储设备上。当一台服务器提供服务时,直接在存储设备上进行读写。而当系统切换后,另一台服务器也同样读取该存储设备上的数据。它可以在无人值守的情况下提供快速的切换,保证不会有数据丢失现象。
缺点:增加了昂贵的存储设备(磁盘阵列)投资
纯软件的方式,通过镜像软件,将数据可以实时复制到另一台服务器上,这样同样的数据就在两台服务器上各存在一份,如果一台服务器出现故障,可以及时切换到另一台服务器。
优点:
a.避免了磁盘阵列的单点故障
b.节约投资:不需购买昂贵的磁盘阵列。
c.不受距离的限制
缺点:
a.可靠性相对较差,两服务器间的数据实时复制是一个比较脆弱的环节。
b.一旦某台服务器出现中断,恢复后还要进行比较复杂的数据同步恢复。并且,这个时段系统处于无保护状态。
c.没有事务机制,由于其复制是在文件和磁盘层进行的,复制是否成功不会影响数据库事务操作,因此有出现数据不完整变化的情况,这个存在着相当的风险。
双机冷备:双机冷备需要手动操作双机管理软件来切换节点,比起热备可靠性更高,但是每次切换时环境都会在另外一个节点停掉后再在另外一个节点上启动,故前台用户能感知环境宕机。
双机冷备核心数据都放存储上,动的数据都放存储上,不动的数据才放本机上。
PortalONE都是用的双机冷备的方式。一般是挂载一个磁盘阵列实现数据共享,并采用LVM的分区方式来灵活增缩磁盘容量。
1.1.2 双机安装流程
1.2 预备知识
1.2.1 基本概念
磁盘阵列:Raid技术(Redundant Arrays of Independent Disks,RAID)廉价磁盘冗余整列。磁盘阵列是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上
RAID就是多个硬盘,合在一起作为一个磁盘整体来用并通过raid技术提供数据冗余,通过多磁盘并行运行来提高计算机的存储IO性能,可提高数据存取速度及安全性。
磁盘阵列作为独立系统在主机外直连或通过网络与主机相连。磁盘阵列有多个端口可以被不同主机或不同端口连接。一个主机连接阵列的不同端口可提升传输速度。
RAID分类有很多种,现代RAID共有7类,常用的就4类:RAID0、RAID1、RAID5、RAID6
我们这边用RAID一是提高性能,另外可以实现双机共享。
LVM:
传统磁盘管理的问题:当磁盘空间满了或分区大小不够时无法扩展其大小,只能添加硬盘创建新的分区来扩充空间,但是新添加进来的硬盘作为独立的文件系统存在,原有的文件系统如/home目录并未得到扩充,只能让现有磁盘下线换上新的磁盘后将原始数据导入,但是在生产环境上并不是所有的环境都可以掉线的,这个时候用传统的磁盘管理就不可行了。那么LVM就可以不影响原来环境在线运行的情况下增加或缩减空间。
LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制。LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。前面谈到,LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。
也就是将底层的物理硬盘抽象封装起来,以逻辑卷的形式表现给上层系统,逻辑卷的大小可以动态调整,而且不会丢失现有数据,而传统的磁盘分区方式,所有的文件系统都是建立在磁盘或者分区上,lvm是在逻辑卷的基础上建立文件系统,格式化也是格式化逻辑卷。
通过LVM系统管理员可以轻松管理磁盘分区,如:将若干个磁盘分区连接为一个整块的卷组 (volumegroup),形成一个存储池。管理员可以在卷组上随意创建逻辑卷组(logicalvolumes),并进一步在逻辑卷组上创建文件系统并挂载目录。管理员通过LVM可以方便的调整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名、管理和分配.
通过fdisk –l命令来查看磁盘的分区情况:
详细参考:
http://baike.baidu.com/view/361916.htm
双机相关知识(原理、LVM、Raid技术)的更多相关文章
- LVM 相关知识
LVM 相关知识 一.示例图 二.概念 名词 全称 释义 PV Physical Volume 物理硬盘.硬盘分区或者RAID磁盘阵列,先要创建pv VG Volume Group 卷组建立在物理卷之 ...
- 存储系列之 RAID技术原理简介
引言:RAID技术是现代大规模存储的基础,“基础(技术)是拿来革命的”.我查raid相关资料时,查布尔运算,竟然一路查到“香农原理”,这不是有个视频中HW的任总提到的吗,多基础的东西,任总却毫不含糊, ...
- 使用RAID与LVM磁盘阵列技术。
7.2 LVM逻辑卷管理器 前面学习的硬盘设备管理技术虽然能够有效地提高硬盘设备的读写速度以及数据的安全性,但是在硬盘分好区或者部署为RAID磁盘阵列之后,再想修改硬盘分区大小就不容易了.换句话说,当 ...
- RAID与LVM磁盘阵列技术
RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列) RAID概念: RAID技术通过把多个硬盘设备组合成一个容量更大.安全性更好的磁盘阵列,并把数据 ...
- 磁盘阵列 RAID 技术原理详解
RAID一页通整理所有RAID技术.原理并配合相应RAID图解,给所有存储新人提供一个迅速学习.理解RAID技术的网上资源库,本文将持续更新,欢迎大家补充及投稿.中国存储网一如既往为广大存储界朋友提供 ...
- Golang(十)TLS 相关知识(一)基本概念原理
0. 前言 最近参与一个基于 BitTorrent 协议的 Docker 镜像分发加速插件的开发,主要参与补充 https 协议 学习了 TLS 相关知识,下面对之前的学习做一下简单总结 参考文献:T ...
- Linux 就该这么学 CH07 使用RAID和LVM磁盘阵列技术
1 RAID (独立冗余磁盘阵列) RAID 技术通过把多个硬盘设备组合成一个容量更大.安全性更好的磁盘阵列,并把数据切割成多个区段之后分别存在各个不同的物理硬盘设备上,然后利用分散读写计数来提升磁盘 ...
- RAID技术介绍
RAID技术介绍 简介 RAID是一个我们经常能见到的名词.但却因为很少能在实际环境中体验,所以很难对其原理 能有很清楚的认识和掌握.本文将对RAID技术进行介绍和总结,以期能尽量阐明其概念. RAI ...
- [转]RAID技术介绍和总结
以下内容转自伯乐在线:http://blog.jobbole.com/83808/ 原文出处: 涯余(@若东临于沧海) ---------------------------------------- ...
随机推荐
- android之LayoutInflater讲解
在实际工作中,事先写好的布局文件往往不能满足我们的需求,有时会根据情况在代码中自定义控件,这就需要用到LayoutInflater-->用来获得布局文件对象的. LayouInflater经常在 ...
- 在HTML标签<a/>中调用javascript代码
<a/>标签的“href”属性可以是一个有效的URL,表示跳转的目的地,除此之外,href还可以是一段javascript代码.当为“href”设置javascript代码时,格式如下:& ...
- ATMEL处理器自带USB CDC的Win7驱动问题
[背景] 很久以前使用ATMEL的处理器开发了一款设备,通过处理器本身的功能,借助USB在PC端虚拟一个串口出来,实现和上位机软件的通信,和基本的参数设置和数据读取功能. 这个功能就是ATMEL官网上 ...
- java 生成8位数字作为UID
java 生成8位数字作为UUID: /*** * 生成uid 8位数字 */public static String generateUID(){ Random random = new Rando ...
- python(pymysql)之mysql简单操作
一.mysql简单介绍 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库 ...
- php和js一起实现倒计时功能
里获取的php服务端的时间 纯JS是获取客服端时间! <?php //php的时间是以秒算.js的时间以毫秒算 date_default_timezone_set('PRC'); //date_ ...
- python之文件操作
python文件操作 举例:将一个文本文件转成十六进制形式后,保存到另一个文件中. f = open('mycert.cr', 'r') str = f.read() list = [] for ch ...
- MySQL物理文件组成
日志文件 错误日志:Error Log 错误日志记录了MySQL运行过程中所有较为严重的警告和错误信息,以及MySQL Server每次启动和关闭的详细信息.在默认情况下,系统记录错误日志的功能是关闭 ...
- Oracle和sqlserver关于锁和隔离级别的差异
事务属性:ACID(原子性.一致性.隔离性.持久性) 隔离级别:主要针对的是共享锁的持有时间和范围 SQL标准定义了以下四种事务隔离级别 READ UNCOMMITTED 允许脏读. 不可重 ...
- 【1】第一次电话面试---上海EMC
时间是2016//11月,投的是上海的EMC2公司的JavaWeb开发岗,第一次接到的电话面试,问的题目很基础基础,很遗憾,本人在掌握的太不好,回答的很乱,目测定挂.下面记下HR问的问题及回答. 首先 ...