2015年11月15日星期日

Mogilefs分布式文件系统-Keepalived+Nginx双主模型实现图片分布式存储、访问

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
Mogilefs分布式文件系统-Keepalived+Nginx双主模型实现图片分布式存储、访问  阅读原文»

用户名:bengbengtu1 文章数:27 评论数:6
访问量:1886:591:326:2 注册日期:2014-10-20

Mogilefs分布式文件系统-Keepalived+Nginx双主模型实现图片分布式存储、访问

一、分布式文件系统:

分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。计算机通过文件系统管理、存储数据,单纯通过增加硬盘个数来扩展计算机文件系统的存储容量的方式,在容量大小、容量增长速度、数据备份、数据安全等方面的表现都差强人意。

分布式文件系统可以有效解决数据的存储和管理难题:将固定于某个地点的某个文件系统,扩展到任意多个地点/多个文件系统,众多的节点组成一个文件系统网络。每个节点可以分布在不同的地点,通过网络进行节点间的通信和数据传输。人们在使用分布式文件系统时,无需关心数据是存储在哪个节点上、或者是从哪个节点从获取的,只需要像使用本地文件系统一样管理和存储文件系统中的数据。

二、常见的分布式文件系统:

GFS

(Google File System)

Google公司为了满足本公司需求而开发的基于Linux的专有分布式文件系统。

HDFS

(Hadoop Distributed File System)

Hadoop 实现的一个分布式文件系统

TFS

(Taobao File System)

是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,它构筑在普通的Linux机器 集群上,可为外部提供高可靠和高并发的存储访问,主要针对海量的非结构化数据,TFS为淘宝提供海量小文件存储,通常文件大小不超过1M,满足了淘宝对小文件存储的需求

GlusterFS

(Gluster File System)

主要应用在集群系统中,具有很好的可扩展性,通过网络互联成一个并行的网络文件系统;与Hadoop HDFS不同的是:GlusterFS使用了弹性哈希算法来定位文件存储的位置。 由于使用了弹性哈希算法,GlusterFS不需要专门的Meta-Data Server来保存元数据,因此可以避免因为元数据服务器宕机导致的整个集群不可用。也正是因为不需要元数据服务器,所以GlusterFS在多个挂载点同时进行数据读写的时候,其整体性能很突出。
ceph C++编写的代码,支持Fuse,并且没有单点故障依赖, 于是下载安装, 由于 ceph 使用 btrfs 文件系统, 而btrfs 文件系统需要 Linux 2.6.34 以上的内核才支持。
MooseFS mooseFS是一款网络分布式文件系统。它把数据分散在多台服务器上,但对于用户来讲,看到的只是一个源。
MogileFS perl语言研发的; 性能好;海量图片存储
FastDFS c语言研发

三、MogileFS介绍

第1个部分: 是server端,包括mogilefsd和mogstored两个程序。前者即是mogilefsd的tracker,它将一些全局信息保存在数据库 里,例如站点domain,class,host等,默认监听在7001端口。后者即是存储节点(store node),它其实是个HTTP Daemon,默认侦听在7500端口,接受客户端的文件备份请求。在安装完后,要运行mogadm工具将所有的store node注册到mogilefsd的数据库里,

mogilefsd会对这些节点进行管理和监控。

第2个部分:是utils(工具集),主要是MogileFS的一些管理工具,例如mogadm等。
第3个部分:是客户端API,目前只有Perl API(MogileFS.pm)、PHP,用这个模块可以编写客户端程序,实现文件的备份管理功能,提供MogileFS.pm。



wKiom1ZDe_3gJCp5AAB-Aab00DM683.png

ip地址 主机名 安装包
172.16.16.3 ① master1 keepalived+nginx
172.16.16.4 master2 keepalived+nginx
172.16.16.2 mogilefs1 mogilefs相关软件包
172.16.16.8 mogilefs2 mogilefs相关软件包
172.16.116.233 mysql mariadb-server

① mster1

  ####keepalived相关配置  [root@master1 ~]# yum install -y keepalived  [root@master1 ~]# vim /etc/keepalived/keepalived.conf  ! Configuration File for keepalived  global_defs {     notification_email {          root@localhost     }     notification_email_from keepalived@localhost     smtp_server 127.0.0.1     smtp_connect_timeout 30     router_id LVS_DEVEL  }  vrrp_instance VI_1 {      state MASTER      interface eth0      virtual_router_id 51      priority 100      advert_int 1      authentication {          auth_type PASS          aut

阅读更多内容

没有评论:

发表评论