MogileFS是一款开源的、高性能的、分布式的文件系统,用于组建分布式文件集群。用来存取海量文件,而不用关心具体的文件存放位置、存储容量大小,以及文件损坏和丢失等问题

MogileFS有三大部分:存储节点、跟踪器、跟踪用的数据库

一、Trackers(跟踪器 ,调度器)——mogilefsd进程

  MogileFS的核心部分,mogilefsd进程就是trackers程序,做了很多工作,包括复制、删除、查询、监控等等。

  其默认的配置文件在/etc/mogilefs/mogilefsd.conf,可以自己指定

二、数据库(MySQL)部分

数据库用来存放MogileFS的元数据 (命名空间, 和文件在哪里),由Trackers来操作和管理它,可以用mogdbsetup程序来初始化数据库。

因为数据库保存了MogileFS的所有元数据,如果这儿出问题了,那么整个MogileFS将处于不可用状态,因此最好是HA结构

三、存储节点(Storage Nodes )——mogstored进程

  就是实际文件存放的地方,可通过配置来指定、加入和从集群中去掉。其默认配置文件: /etc/mogilefs/mogstored.conf

MogileFS安装步骤

1、需要先安装MySql

2、安装MySql的开发包devel 、安装MySql的share包,http://mirror.neu.edu.cn/mysql/Downloads/MySQL-5.6/

3、需要有Perl的环境,服务器已经自带了5.8.8版本的

·4、安装CPANMinus

  方法一:wget http://xrl.us/cpanm --no-check-certificate -O /sbin/cpanm  chmod +x /sbin/cpanm  

  方法二:wget -O- http://cpanmin.us --no-check-certificate | perl - --sudo --self-upgrade  这个会自动安装到/usr/bin/cpanm

5、利用cpanm来安装MogileFS的Perl模块,依次按照如下步骤安装

  • cpanm DBD::mysql
  • cpanm MogileFS::Server
  • cpanm MogileFS::Utils
  • cpanm MogileFS::Client

6、数据库配置

  6.1 在MySql数据库中创建MogileFS要使用的数据库和用户名

CREATE DATABASE MogileFS DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL ON MogileFS.* TO 'mogile'@'%' IDENTIFIED BY 'mogile';
//UPDATE mysql.user SET Password=PASSWORD('cc') where USER='mogile';
FLUSH PRIVILEGES

  6.2 配置和初始化数据库

mogdbsetup --dbhost=localhost --dbname=MogileFS --dbuser=mogile --dbpass=mogile

7、Tracker配置    

  7.1 创建配置文件的目录和Tracker配置文件

  比如在/usr/common下面 mkdir mogilefs文件夹,在下面nano mogilefsd.conf文件

# Database connection information
db_dsn = DBI:mysql:MogileFS:host=localhost
db_user = mogile
db_pass = cc
# IP:PORT to listen on for MogileFS client requests
listen = 0.0.0.0:
# Optional, if you don't define the port above.
conf_port =
# Number of query workers to start by default.
query_jobs =
# Number of delete workers to start by default.
delete_jobs =
# Number of replicate workers to start by default.
replicate_jobs =
# Number of reaper workers to start by default.
# (you don't usually need to increase this)
reaper_jobs =

由于mogilefsd不能用root用户启动,所以添加mogile用户,并使用它来启动调度器

  adduser mogile
  su mogile
  mogilefsd -c /usr/common/mogilefs/mogilefsd.conf --daemon   ps -ef |grep mogilefsd
  终止服务:pkill mogilefsd

8、存储节点配置

  8.1  storage.conf

maxconns =
httplisten = 0.0.0.0:
mgmtlisten = 0.0.0.0:
docroot=/usr/common/mogilefs/mogilefsdata/ 数据存在什么根路径是由docroot来设置的

  8.2 启动存储节点,这个可以用root用户

mogstored -c /usr/common/mogilefs/storage.conf --daemon
停止:pkill mogstored

9、添加Storeage节点到Tracker

mogadm --trackers=<tracker_ip>: host add <storage_node_name> --ip=192.168.174.104 --port= --status=alive
  
mogadm host list 如果要修改MogileFS中主机的信息,一定要加上状态--status=alive,不然不能修改
mogadm host modify storage_node_name --ip=192.168.1.106 --status=alive

10、添加存储设备到Storeage节点

mogadm device add <storage_node_name> ID

mogadm device list

mogadm device mark <storage_node_name> ID dead

11、创建域、类

创建域:mogadm domain add <domain_name>
检查“域”,显示存在的域:mogadm domain list 在"域"中建"类",并加入最小保存份数
mogadm class add <domain_name> <class_name> --mindevcount=
检查“类”:mogadm class list
检查整个系统:mogadm --trackers=192.168.174.104: check

安装中遇到的问题:https://blog.csdn.net/lian_xl/article/details/79666854

MogileFS安装的更多相关文章

  1. 分布式文件系统 Mogilefs 安装步骤

    我这里的环境都是 RHEL 5 的环境. MySQL 数据库 和 tracker 都放到一台服务器上, 为 192.168.2.85 storage server两台, 分别为 192.168.2.9 ...

  2. mogilefs 安装与配置

    安装步骤 配置yum 的epel源 yum install perl-Sys-Syslog perl-IO-AIO perl-Net-Netmask -y # 安装依赖的包 取得mogilefs的rp ...

  3. 分布式文件系统之MogileFS的安装使用

    一.简介 MogileFS是一个开源的分布式文件存储系统,由LiveJournal旗下的Danga Interactive公司开发:它主要由三部分组成,第一部分是server端,server端主要包括 ...

  4. 企业级分布式存储应用与实战-mogilefs实现

    Mogilefs是什么 MogileFS是一个开源的分布式文件存储系统,由LiveJournal旗下的Danga Interactive公司开发.Danga团队开发了包括 Memcached.Mogi ...

  5. MogileFS-2.44 安装与配置

    MogileFS-2.44 安装与配置 (转:https://my.oschina.net/u/1259000/blog/182277) 目录 一.MogileFS 介绍 1.1.环境 二.Mogil ...

  6. 分布式存储之MogileFS分布式文件系统简单应用

    一.分布式存储原理: 分布式存储系统,是将数据分散存储在多台独立的设备上.传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储 ...

  7. mogilefs分布式文件存储

    MogileFS是一个开源的分布式文件存储系统,由LiveJournal旗下的Danga Interactive公司开发.Danga团队开发了包括 Memcached.MogileFS.Perlbal ...

  8. MogileFS介绍

    MogileFS介绍 MogileFS 是一个开源的分布式文件存储系统,由LiveJournal旗下的Danga Interactive公司开发. Danga团队开发了包括 Memcached.Mog ...

  9. linux+nginx+tomcat负载均衡,实现session同步

    第一部分:nginx反向代理tomcat 一.软件及环境 软件 系统 角色 用途 安装的软件 ip地址 Centos6.5x86_64 nginx 反向代理用户请求 nginx 172.16.249. ...

随机推荐

  1. 虎牙在全球 DNS 秒级生效上的实践 集群内通过 raft 协议同步数据,毫秒级别完成同步。

    https://mp.weixin.qq.com/s/9bEiE4QFBpukAfNOYhmusw 虎牙在全球 DNS 秒级生效上的实践 原创: 周健&李志鹏 阿里巴巴中间件 今天

  2. Java网络编程之Netty

    一.Netty概述 Netty 是由JBOSS 提供的一个java 开源框架.Netty 提供异步的.事件驱动的网络应用程序框架和工具,用以快速开发高性能.高可靠性的网络服务器和客户端程序. 也就是说 ...

  3. 字典学习(Dictionary Learning)

    0 - 背景 0.0 - 为什么需要字典学习? 这里引用这个博客的一段话,我觉得可以很好的解释这个问题. 回答这个问题实际上就是要回答“稀疏字典学习 ”中的字典是怎么来的.做一个比喻,句子是人类社会最 ...

  4. SQL语句里合并两个select查询结果

    SQL UNION 操作符UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 ...

  5. std::wstring std::string w2m m2w

    static std::wstring m2w(std::string ch, unsigned int CodePage = CP_ACP) { if (ch.empty())return L&qu ...

  6. 阶段5 3.微服务项目【学成在线】_day07 课程管理实战_01-我的课程-需求分析与PageHelper技术

    1 我的课程 1.1需求分析 课程添加完成后可通过我的课程进入课程修改页面,此页面显示我的课程列表,如下图所示,可分页查询. 注意:由于课程图片服务器没有搭建,这里在测试时图片暂时无法显示. 上边的查 ...

  7. (四)Centos之查询目录中内容命名ls

    一.查询目录中内容命名ls 1.1 root代表当前登录用户,localhost代表主机名, ~代表当前主机目录,#代表用户权限 #表示超级用户,$表示普通用户: 1.2 查询目录中内容命令 ls   ...

  8. (十三)static关键字

    --摘自孤傲苍狼博客 一.static关键字

  9. LD_LIBRARY_PATH无效

    在os x 上设置LD_LIBRARY_PATH无效,env命令看不到这个变量,下面的文章说明了这个问题 说明:网上基本针对这个值的设置分为两面,Windows派和Linux派,Windows的不说, ...

  10. 使用一般处理程序生成 JSON

    在 .NET 3.5 之后,定义在命名空间 System.Runtime.Serialization.Json 中的 DataContractJsonSerializer 可以帮助我们直接将一个对象格 ...