redhat5.8+mfs(提供软件包文档)

简介:

                               Mfs

192.168.0.123  pankuo1              master server  

192.168.0.118  pankuo2              metalogger server

192.168.0.119  pankuo3              chunk server       chunk server可以开2个看自己机子情况都要2块硬盘

192.168.0.120  pankuo4              chunk server

192.168.0.106  pankuo5             chunk server

192.168.0.110  pankuo6      mfsclient


master server


# useradd mfs -s /sbin/nologin

# cd /tmp/

# tar xf mfs-1.6.20-2.tar.gz

# cd mfs-1.6.20-2

# ./configure --prefix=/usr/local/mfs--with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver--disable-mfsmount

# make

# make install

# cd /usr/local/mfs/etc/

主配置文件

[root@node1 etc]# cp mfsmaster.cfg.distmfsmaster.cfg    被挂接目录及权限配置

[root@node1 etc]# cp mfsexports.cfg.distmfsexports.cfg

[root@node1etc]#cp/usr/local/mfs/var/mfs/metadata.mfs.empty/usr/local/mfs/var/mfs/metadata.mfs

[root@node1 etc]#/usr/local/mfs/sbin/mfsmaster start

working directory: /usr/local/mfs/var/mfs

lockfile created and locked

initializing mfsmaster modules ...

loading sessions ... ok

sessions file has been loaded

exports file has been loaded

loading metadata ...

create new empty filesystemmetadata filehas been loaded

no charts data file - initializing emptycharts

master <-> metaloggers module: listenon *:9419

master <-> chunkservers module:listen on *:9420

main master server module: listen on *:9421

mfsmaster daemon initialized properly


启动WEB监控服务

[root@node1 etc]#/usr/local/mfs/sbin/mfscgiserv

starting simple cgi server (host: any ,port: 9425 , rootpath: /usr/local/mfs/share/mfscgi)


# firefox http://192.168.0.123:9425

wKioL1NGbDjBboTjAAT7kM5M93Q190.jpg


chunk server    3个配置都一样


# useradd mfs -s /sbin/nologin

# cd /tmp/

# tar xf mfs-1.6.20-2.tar.gz

# cd mfs-1.6.20-2


# ./configure --prefix=/usr/local/mfs--with-default-user=mfs --with-default-group=mfs --disable-mfsmaster--disable-mfsmount


# make

# make install

# cd /usr/local/mfs/etc/

[root@node3 etc]# cpmfschunkserver.cfg.dist mfschunkserver.cfg

mfs使用空间配置

[root@node3 etc]# cp mfshdd.cfg.distmfshdd.cfg


[root@node3 etc]# vim/usr/local/mfs/etc/mfschunkserver.cfg

MASTER_HOST = 192.168.0.123

[root@node3 etc]# mkdir /data

[root@node3 etc]# mount /dev/hda1 /data

[root@node3 etc]# chown -R mfs:mfs /data

[root@node3 etc]# vim mfshdd.cfg

/data

[root@node3 etc]#/usr/local/mfs/sbin/mfschunkserver start

working directory: /usr/local/mfs/var/mfs

lockfile created and locked

initializing mfschunkserver modules ...

hdd space manager: scanning folder /data/...

hdd space manager: scanning complete

hdd space manager: /data/: 0 chunks found

hdd space manager: scanning complete

main server module: listen on *:9422

no charts data file - initializing emptycharts

mfschunkserver daemon initialized properly



metalogger server


# useradd mfs -s /sbin/nologin

# cd /tmp/

# tar xf mfs-1.6.20-2.tar.gz

# cd mfs-1.6.20-2

# ./configure --prefix=/usr/local/mfs--with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver--disable-mfsmount

# make

# make install

# cd /usr/local/mfs/etc/

[root@node2 etc]# cp mfsmetalogger.cfg.distmfsmetalogger.cfg

[root@node2 etc]# vim mfsmetalogger.cfg

MASTER_HOST = 192.168.0.123


[root@node2 etc]#/usr/local/mfs/sbin/mfsmetalogger start

working directory: /usr/local/mfs/var/mfs

lockfile created and locked

initializing mfsmetalogger modules ...

mfsmetalogger daemon initialized properly

wKiom1NGbHmx_3aQAASzQIvso8s856.jpg



mfs client


# yum install fuse fuse-libs fuse-devel


# useradd mfs -s /sbin/nologin

# cd /tmp/

# tar xf mfs-1.6.20-2.tar.gz

# cd mfs-1.6.20-2


# ./configure --prefix=/usr/local/mfs--with-default-user=mfs --with-default-group=mfs --disable-mfsmaster--disable-mfschunkserver

# make

# make install


# /usr/local/mfs/bin/mfsmount /mnt/mfs -H192.168.0.123

mfsmaster accepted connection withparameters: read-write,restricted_ip ; root mapped to root:root

# /usr/local/mfs/bin/mfsmount -m/mnt/mfsmeta -H 192.168.0.123

mfsmaster accepted connection withparameters: read-write,restricted_ip

# df –h

wKioL1NGbGSiSewTAANvGGlYljE756.jpg


wKiom1NGbJmwsytdAAQQDkOM1Pg958.jpg





MFS的高级特性


1.冗余goal设置

目标(goal),是指文件被拷贝的份数,设定了拷贝的份数后是可以通过mfsgetgoal命令来证实的,也可以通过mfsrsetgoal来改变设定。


/usr/local/mfs/bin/mfssetgoal 3/mnt/mfs/test1

/usr/local/mfs/bin/mfsgetgoal/mnt/mfs/test1

      /mnt/mfs/test1:3


mfsgetgoal mfssetgoal 同样的操作可以对整个树形目录递归操作,其等效于mfsrsetgoal命令。实际的拷贝份数可以通过mfscheckfile mfsfile info 命令来证实。


注意以下几种特殊情况:

一个不包含数据的零长度的文件,尽管没有设置为非零的目标(thenon-zero “goal”,但用mfscheckfile 命令查询将返回一个空的结果;将文件填充内容后,其会根据设置的goal创建副本;这时再将文件清空,其副本依然作为空文件存在。

假如改变一个已经存在的文件的拷贝个数,那么文件的拷贝份数将会被扩大或者被删除,这个过程会有延时。可以通过mfscheckfile 命令来证实。

对一个目录设定“目标”,此目录下的新创建文件和子目录均会继承此目录的设定,但不会改变已经存在的文件及目录的拷贝份数。

可以通过mfsdirinfo来查看整个目录树的信息摘要。


2.垃圾回收站


一个删除文件能够存放在一个“垃圾箱”的时间就是一个隔离时间,这个时间可以用mfsgettrashtime 命令来验证,也可以用mfssettrashtime 命令来设置。如:

/usr/local/mfs/bin/mfssettrashtime 64800/mnt/mfs/test1

/usr/local/mfs/bin/mfsgettrashtime/mnt/mfs/test1

      /mnt/mfs/test1:64800


时间的单位是秒(有用的值有:1 小时是3600 ,24  86400 ,1 604800 )。就像文件被存储的份数一样,为一个目录设定存放时间是要被新创建的文件和目录所继承的。数字意味着一个文件被删除后将立即被彻底删除,在想回收是不可能的。


删除文件可以通过一个单独安装MFSMETA文件系统。特别是它包含目录/trash (包含任然可以被还原的被删除文件的信息)/ trash/undel(用于获取文件)。只有管理员有权限访问MFSMETA(用户的uid 0,通常是root)


/usr/local/mfs/bin/mfsmount -m /mnt/mfsmeta-H 192.168.0.1


被删文件的文件名在“垃圾箱”目录里还可见,文件名由一个八位十六进制的数i-node和被删文件的文件名组成,在文件名和i-node 之间不是用“/,而是用了“|”替代。如果一个文件名的长度超过操作系统的限制(通常是255 个字符),那么部分将被删除。通过从挂载点起全路径的文件名被删除的文件任然可以被读写。


移动这个文件到trash/undel子目录下,将会使原始的文件恢复到正确的MooseFS 文件系统上路径下(如果路径没有改变)。如果在同一路径下有个新的同名文件,那么恢复不会成功。


从“垃圾箱”中删除文件结果是释放之前被它站用的空间(删除有延迟,数据被异步删除)


MFSMETA中还有另一个目录reserved,该目录内的是被删除但依然打开的文件。在用户关闭了这些被打开的文件后,reserved目录中的文件将被删除,文件的数据也将被立即删除。在reserved 目录中文件的命名方法同trash 目录中的一样,但是不能有其他功能的操作。


3.快照snapshot


MooseFS 系统的另一个特征是利用mfsmakesnapshot 工具给文件或者是目录树做快照。

/usr/local/mfs/bin/mfsmakesnapshot source... destination


Mfsmakesnapshot 是在一次执行中整合了一个或是一组文件的拷贝,而且任何修改这些文件的源文件都不会影响到源文件的快照,就是说任何对源文件的操作,例如写入源文件,将不会修改副本(或反之亦然)


也可以使用mfsappendchunks

/usr/local/mfs/bin/mfsappendchunksdestination-file source-file ...


当有多个源文件时,它们的快照被加入到同一个目标文件中(每个chunk 的最大量是chunk)。



软件包 请到最之前的 博文上  在最下面提供百度云盘账号 及文档  自行下载



      本文转自潘阔 51CTO博客,原文链接:http://blog.51cto.com/pankuo/1393555,如需转载请自行联系原作者





相关文章
|
Linux 开发工具
RedHat系列软件管理(第二版) --二进制软件包管理
RedHat系列软件管理 --二进制软件包管理 Linux学习思想-Linux相对与Windows来非常透明,因此,无论是系统,还是软件,都会有本身自带,或者是Man给提供的非常详细的说...
1021 0
|
Linux Windows
RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”
转自http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/10/08/2203153.html 备忘 rpm 执行安装包 二进制包(Binary)以及源代码包(Source)两种。
848 0
|
6月前
|
安全 Linux 网络安全
如何在 VM 虚拟机中安装 Red Hat Enterprise Linux 9.3 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Red Hat Enterprise Linux 9.3 操作系统保姆级教程(附链接)
|
存储 关系型数据库 MySQL
Red Hat 安装MySQL 8.0与 Navicat
Red Hat 安装 MySQL 8.0 1、更新软件包列表 在添加 MySQL 存储库后,运行以下命令以更新软件包列表: sudo yum update 2、安装MySQL服务器和客户端 执行以下命令安装MySQL 8.0服务器和客户端软件包: sudo yum install -y mysql-server 3、启动MySQL服务 安装完成后,MySQL 服务器应该已经自动启动。如果没有启动,您可以运行以下命令手动启动服务: sudo systemctl start mysqld 启用 MySQL 服务的开机启动,可以运行以下命令: sudo systemctl enable mysqld
261 1
|
18天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
45 2
|
19天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
28 3
|
6月前
|
Linux Docker 容器
Red Hat系列Docker安装与移除
Docker 安装 添加 Docker 官方 YUM 源 sudo yum-config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo 安装 Docker Engine sudo yum install -y docker-ce docker-ce-cli containerd.io 启动 Docker 服务并设置开机自启 sudo systemctl start docker sudo systemctl enable docker 验证 Docker 安装 docker --versio
201 0