moosefs mysql_CentOS 安装moosefs

安装MFS基本步骤

主机IP地址分配如下

主控服务器Master Server 192.168.88.161

主控服务器 Metalogger Server 192.168.88.162

存储块服务器 Chunk Server 192.168.88.163 AND 192.168.88.164

客户端主机 Clients 192.168.88.165

===========================================================

一、         主控服务器Master Server 安装

将mfs-1.6.26.tar.gz上传到/usr/software下。

安装所需组件

[root@MFS-Master ~]# yum install cmake make –y

[root@MFS-Master ~]# yum install gcc gcc-c++ autoconf automake zlib* -y

添加mfs组。

[root@MFS-Master ~]# groupadd mfs

新增系统用户

[root@MFS-Master ~]# useradd -g mfs mfs

切换目录

[root@MFS-Master ~]# cd /usr/software/

解压mfs-1.6.26.tar.gz文件

[root@MFS-Master software]# tar -zxvf mfs-1.6.26.tar.gz

进入安装目录

[root@MFS-Master software]# cd mfs-1.6.26

用户配置

[root@MFS-Master software]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

编译并安装

[root@MFS-Chunk1 mfs-1.6.26]# make && make install

切换目录

[root@MFS-Master /]# cd /usr/local/mfs/etc/

复制置文件

[root@MFS-Master etc]# cp mfsmaster.cfg.dist mfsmaster.cfg

[root@MFS-Master etc]# cp mfsexports.cfg.dist mfsexports.cfg

主配置文件说明

修改DATA_PATH指定的目录要权限为mfs

[root@MFS-Master etc]# chown -R mfs:mfs /usr/local/mfs/var/mfs

注意开通监听的端口(先关闭IPTABLES)

service iptables stop

配置mfsexports.cfg文件

[root@MFS-Master etc]# vi mfsexports.cfg

修改红框中的内容为

192.168.88.0/24                 /       rw,alldirs,maproot=0

该文件每一个条目分为三部分:

第一部分:客户端的ip地址

第二部分:被挂接的目录

第三部分:客户端拥有的权

地址可以指定的几种表现形式:

*                          所有的ip地址

n.n.n.n               单个ip地址

n.n.n.n/b           IP网络地址/位数掩码

n.n.n.n/m.m.m.m    IP网络地址/子网掩码

f.f.f.f-t.t.t.t                 IP段

目录部分需要注意两点:

/        标识MooseFS 根;

.       表示MFSMETA 文件系

权限部分:

ro               只读模式共享

rw              的方式共享

alldirs                 许挂载任何指定的子目录

maproot  映射为root,还是指定的用户

password 指定客户端密码

复制文件

[root@MFS-Master etc]# cp /usr/local/mfs/var/mfs/metadata.mfs.empty /usr/local/mfs/var/mfs/metadata.mfs

启动服务

[root@MFS-Master etc]# /usr/local/mfs/sbin/mfsmaster start

启动监控服务

为了监控MooseFS 当前运行状态,我们可以运行 CGI 监控服务,这样就可以用浏览器查看整个MFS的动行情况

[root@MFS-Master etc]# /usr/local/mfs/sbin/mfscgiserv

在浏览器地址栏输入 http://192.168.88.161:9425 即可查看master 的运行情况

要经常性的查看系统日志

[root@MFS-Master etc]# tail -f /var/log/messages

主控服务器Master Server安装完成

二、         备份服务器 Backup Server(metalogger)安装

将mfs-1.6.26.tar.gz上传制/usr/software下。

安装所需组件

[root@MFS-Master ~]# yum install cmake make –y

[root@MFS-Master ~]# yum install gcc gcc-c++ autoconf automake zlib* -y

添加mfs组。

[root@MFS-Master ~]# groupadd mfs

新增系统用户

[root@MFS-Master ~]# useradd -g mfs mfs

切换目录

[root@MFS-Master ~]# cd /usr/software/

解压mfs-1.6.26.tar.gz文件

[root@MFS-Master software]# tar -zxvf mfs-1.6.26.tar.gz

进入安装目录

[root@MFS-Master software]# cd mfs-1.6.26

用户配置

[root@MFS-Master software]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

编译并安装

[root@MFS-Chunk1 mfs-1.6.26]# make && make install

切换目录

[root@MFS-Master /]# cd /usr/local/mfs/etc/

复制置文件

[root@MFS-Metalogger etc]# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg

修改配置文件

[root@MFS-Metalogger etc]# vi mfsmetalogger.cfg

在配置文件中添加一行 MASTER_HOST = 192.168.88.161(主控服务器的IP)

再将 MASTER_PORT = 9419 这行的注释打开

(注:

MASTER_HOST 不能为localhost或127.0.0.1,要使用对外IP。

MASTER_PORT必须为元数据服务器配置中MATOCS_LISTEN_PORT指定的端口,且IP必须被master允许。)

启动服务

[root@MFS-Metalogger mfs]# /usr/local/mfs/sbin/mfsmetalogger start

(注:需要将主控服务器打开)

备份服务器 Backup Server(metalogger)安装完成

三、         存储服务器 Chunk Server 安装

将mfs-1.6.26.tar.gz上传制/usr/software下。

安装所需组件

[root@MFS-Master ~]# yum install cmake make –y

[root@MFS-Master ~]# yum install gcc gcc-c++ autoconf automake zlib* -y

添加mfs组。

[root@MFS-Master ~]# groupadd mfs

新增系统用户

[root@MFS-Master ~]# useradd -g mfs mfs

切换目录

[root@MFS-Master ~]# cd /usr/software/

解压mfs-1.6.26.tar.gz文件

[root@MFS-Master software]# tar -zxvf mfs-1.6.26.tar.gz

进入安装目录

[root@MFS-Master software]# cd mfs-1.6.26

用户配置

[root@MFS-Master software]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

编译并安装

[root@MFS-Chunk1 mfs-1.6.26]# make && make install

切换目录

[root@MFS-Chunk1 mfs-1.6.26]# cd /usr/local/mfs/etc/

复制配置文件

[root@MFS-Chunk1 etc]# cp mfschunkserver.cfg.dist mfschunkserver.cfg

[root@MFS-Chunk1 etc]# cp mfshdd.cfg.dist mfshdd.cfg

修改配置文件

[root@MFS-Chunk1 etc]# vi mfschunkserver.cfg

在配置文件中添加一行 MASTER_HOST = 192.168.88.161(主控服务器的IP)

再将 MASTER_PORT = 9420 这行的注释打开

[root@MFS-Chunk1 etc]# vi mfshdd.cfg

(注:需要在根目录下创建一个data的目录 mkdir data)

修改权限

需要让mfs用户拥有写目录的权限

[root@MFS-Chunk1 etc]# cd /

[root@mysql_master /]# mkdir data

[root@MFS-Chunk1 /]# chown -R mfs:mfs /data

启动服务

[root@MFS-Chunk1 /]# /usr/local/mfs/sbin/mfschunkserver start

(注:需要将主控服务器打开)

第二个存储服务器的安装和配置相同

四、         客户端安装

将fuse-2.9.2.tar.gz上传制/usr/software下

将mfs-1.6.26.tar.gz上传制/usr/software下

FUSE安装

[root@mysql1 ~]# cd /usr/software/

解压文件

[root@mysql1 software]# tar -zxvf fuse-2.9.2.tar.gz

切换目录

[root@mysql1 software]# cd fuse-2.9.2

配置 一下

[root@mysql1 fuse-2.9.2]# ./configure

编译安装

[root@mysql1 fuse-2.9.2]#

修改环境变量

[root@mysql1 fuse-2.9.2]# echo 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' >>/etc/profile

[root@mysql1 fuse-2.9.2]# source /etc/profile

[root@mysql1 fuse-2.9.2]# modprobe fuse

MFSMount安装

添加mfs组。

[root@MFS-Master ~]# groupadd mfs

新增系统用户

[root@MFS-Master ~]# useradd -g mfs mfs

进入目录

[root@MFS-Master ~]# cd /usr/software/

解压mfs-1.6.26.tar.gz文件

[root@MFS-Master software]# tar -zxvf mfs-1.6.26.tar.gz

进入安装目录

[root@MFS-Master software]# cd mfs-1.6.26

用户配置

[root@MFS-Master software]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

编译并安装

[root@MFS-Chunk1 mfs-1.6.26]# make && make install

创建挂接点

[root@mysql1 bin]# cd /

[root@mysql1 /]# mkdir /mnt/mfs

[root@mysql1 /]# cd /usr/local/mfs/bin/

[root@mysql1 bin]# /usr/local/mfs/bin/mfsmount /mnt/mfs -H 192.168.88.161

(注:所有的MFS都是挂接同一个元数据服务器master,而不是其他数据存储服务器chunkserver)

挂接垃圾箱

[root@mysql1 bin]# cd /

[root@mysql1 /]# mkdir /mnt/mfsmeta

[root@mysql1 /]# cd /usr/local/mfs/bin/

[root@mysql1 bin]# /usr/local/mfs/bin/mfsmount -m /mnt/mfsmeta -H 192.168.88.161

设置文件副本数量

[root@mysql1 bin]# /usr/local/mfs/bin/mfssetgoal 2 /mnt/mfs

(注:设置该数值时,不要超过ChunkServer的数量)

相关命令

启动master服务

/usr/local/mfs/sbin/mfsmaster start

停止master服务

/usr/local/mfs/sbin/mfsmaster stop

(注:一定要安全停止master server是非常必要的,最好不要用kill。利用mfsmaster –s来安全停止master serve)

启动和停止web gui

启动: /usr/local/mfs/sbin/mfscgiserv

停止: kill /usr/local/mfs/sbin/mfscgiserv

启动chunkvserver服务

/usr/local/mfs/sbin/mfschunkserver start

停止chunksever服务

/usr/local/mfs/sbin/mfschunkserver stop

启动metalogger服务

/usr/local/mfs/sbin/mfsmetalogger start

停止metalogger服务

/usr/local/mfs/sbin/mfsmetalogger stop

设置副本 的份数,推荐3份

/usr/local/mfs/bin/mfssetgoal -r 3 /mnt/mfs

(注:如果之前设置为副本为2,用 –r 修改副本数为3,会将之前副本为2的文件再增加一个副本)

查看挂载的目录有设置了几个副 本

[root@Client /]# /usr/local/mfs/bin/mfsgetgoal /mnt/mfs/

查看一个文件有几个CHUNK,有几个COPY

[root@mysql1 mfs]# /usr/local/mfs/bin/mfsfileinfo test10.rar

查看目录下所有信息

[root@mysql1 mfs]# /usr/local/mfs/bin/mfsdirinfo /mnt/mfs

设置垃圾箱删除文件时间

[root@mysql1 mfs]# /usr/local/mfs/bin/mfssettrashtime 3600 /mnt/mfs/

挂接垃圾箱

[root@mysql1 bin]# /usr/local/mfs/bin/mfsmount -m /mnt/mfsmeta -H 192.168.88.161

[root@mysql1 bin]# ls /mnt/ mfsmeta /trash

恢复被删除的文件

被删除的文件名由一个八位十六进制数和被删文件的文件名组成

[root@mysql1 trash]# cd /mnt/ mfsmeta /trash/

只要将要恢复的文件移动到undel文件夹中,文件就恢复了

[root@mysql1 trash]# mv '0000002B|test3.rar' undel

恢复数据

第一种方式:通过备份Master的/usr/local/mfs/var/mfs文件夹下的文件进行恢复

1、          先备份Master Server的/usr/local/mfs/var/mfs文件夹下的文件(可以通过crontab来完成)

2、          将好使的Master Server的/usr/local/mfs/var/mfs下的文件删除

3、          将备份的文件重新拷贝到/usr/local/mfs/var/mfs文件夹下

4、          将metadata.mfs.back文件改为metadata.mfs

5、          [root@Master etc]# chown -R mfs:mfs /usr/local/mfs/var/mfs

6、          [root@Master etc]# reboot

7、          重启后启动服务/usr/local/mfs/sbin/mfsmaster start,恢复成功。

第二种方式:通过Backup Server进行恢复

1、          重新安装一个Master Server

2、          到Backup Server的/usr/local/mfs/var/mfs/目录下找到metadata_ml.mfs.back文件和最后一个日志文件,我最后一个日志文件是changelog_ml.21.mfs

3、          将这两个文件复制到Master Server的/usr/local/mfs/etc/目录下

4、          执行/usr/local/mfs/sbin/mfsmetarestore -m metadata_ml.mfs.back -o /usr/local/mfs/var/mfs/metadata.mfs changelog_ml.21.mfs

重启后启动服务,恢复成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值