mogilefs部署

mogilefs实验环境:
1.需要两台tracker主机
2.一台mariadb
3.nginx_mogilefs_module模块要编译安装

在tracker主机:

1.上下载rpm包

mkdir mogilefs/

cd mogilefs

lftp 172.16.0.1

get

MogileFS-Server-2.46-2.el7.centos.noarch.rpm

MogileFS-Server-mogilefsd-2.46-2.el7.centos.noarch.rpm

MogileFS-Server-mogstored-2.46-2.el7.centos.noarch.rpm

MogileFS-Utils-2.19-1.el7.centos.noarch.rpm

perl-Danga-Socket-1.61-1.el6.rf.noarch.rpm

perl-MogileFS-Client-1.14-1.el7.centos.noarch.rpm

perl-Perlbal-1.78-1.el6.noarch.rpm

scp *.rpm 172.16.42.8:/root/mogilefs/

2.安装依赖关系,安装包

yum install perl-Net-Netmask perl-IO-stringy perl-Sys-Syslog perl-IO-AIO -y

yum install *.rpm -y

3.初始化数据库

mogdbsetup –dbhost=172.16.42.9 –dbrootuser=root –dbrootpass=mageedu –dbuser=moguser –dbpass=mageedu –dbname=mogilefs –yes

4.配置mogilefsd

vim /etc/mogilefs/mogilefsd.conf

db_dsn = DBI:mysql:mogilefs:host=172.16.42.9

db_user = moguser

db_pass = mageedu

listen = 0.0.0.0:7001

5.配置mogstored

vim /etc/mogilefs/mogstored.conf

maxconns = 10000 #最大连接数

httplisten = 0.0.0.0:7500 #http监听地址

mgmtlisten = 0.0.0.0:7501 #mgm监听地址

docroot = /mogdata #数据存放位置

6.将文件同步至另一个节点

scp /etc/mogilefs/* 172.16.42.8:/etc/mogilefs/

7.创建挂载点,并将磁盘挂载至此目录

mkdir /mogdata/dev1 -pv

chown -R mogilefs.mogilefs /mogdata/

8.启动服务

systemctl start mogilefsd

systemctl start mogilefsd

9.添加节点

mogadm –trackers=172.16.42.2:7001 host add 172.16.42.2 –ip=172.16.42.2 –status=alive

mogadm –trackers=172.16.42.2:7001 host add 172.16.42.8 –ip=172.16.42.8 –status=alive

10.添加设备

mogadm device add 172.16.42.2 1

mogadm device add 172.16.42.8 2

11.创建domain

mogadm –trackers=172.16.10.123:7001 domain add files

mogadm –trackers=172.16.10.123:7001 domain add html

mogadm –trackers=172.16.10.123:7001 domain add images

12.上传测试

mogupload –trackers=172.16.42.2:7001 –domain=html –key=’fstab.html’ –file=’/etc/fstab’

mogupload –trackers=172.16.42.2:7001 –domain=images –key=’test.jpg’ –file=’/root/test.jpg’

13.获取数据

mogfileinfo –trackers=172.16.42.2 –domain=files –key=’/fstab.txt’

在另个tracker主机:

mkdir /mogdata/dev2 -pv

chown -R mogilefs.mogilefs /mogdata/

mariadb主机上:

yum install mariadb-server -y

1.编辑配置文件

vim /etc/my.cnf.d/server.cnf

[mysqld]

skip_name_resolve=1

innodb_file_per_table = 1

systemctl start mariadb

2.授权

mysql

GRANT ALL ON *.* TO ‘root’@’172.16.42.%’ IDENTIFIED BY ‘mageedu’;

GRANT ALL ON mogilefs.* TO ‘moguser’@’172.16.42.%’ IDENTIFIED BY ‘mageedu’;

CREATE DATABASE mogilefs;

FLUSH PRIVILEGES;

quit

nginx模块编译安装:

1.下载nginx模块

wget http://www.grid.net.ru/nginx/download/nginx_mogilefs_module-1.0.4.tar.gz

tar xvf nginx_mogilefs_module-1.0.4.tar.gz

2.安装开发环境

yum groupinstall “Development Tools” “Server Platform Development” -y

yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

useradd -r nginx

tar xvf nginx-1.10.3.tar.gz

cd nginx-1.10.3

3.编译安装nginx

./configure \

> –prefix=/usr/local/nginx \

> –sbin-path=/usr/sbin/nginx \

> –conf-path=/etc/nginx/nginx.conf \

> –error-log-path=/var/log/nginx/error.log \

> –http-log-path=/var/log/nginx/access.log \

> –pid-path=/var/run/nginx/nginx.pid \

> –lock-path=/var/lock/nginx.lock \

> –user=nginx \

> –group=nginx \

> –with-http_ssl_module \

> –with-http_flv_module \

> –with-http_stub_status_module \

> –with-http_gzip_static_module \

> –http-client-body-temp-path=/usr/local/nginx/client/ \

> –http-proxy-temp-path=/usr/local/nginx/proxy/ \

> –http-fastcgi-temp-path=/usr/local/nginx/fcgi/ \

> –http-uwsgi-temp-path=/usr/local/nginx/uwsgi \

> –http-scgi-temp-path=/usr/local/nginx/scgi \

> –with-pcre \

> –with-debug \

> –add-module=../nginx_mogilefs_module-1.0.4

vim objs/Makefile

#把-Werror删除掉

make && make install

4.修改nginx配置文件

cd /usr/local/nginx/conf/

vi nginx.conf

upstream trackers {

server 172.16.42.2:7001 weight=1;

server 172.16.42.8:7001 weight=1;

check interval=1000 rise=2 fall=5 timeout=1000;

}

location /images/ {

mogilefs_tracker trackers;

mogilefs_domain images;

mogilefs_methods GET;

mogilefs_noverify on;

mogilefs_pass {

proxy_pass $mogilefs_path;

proxy_hide_header Content-type;

proxy_buffering off;

}

}

nginx

重读磁盘:echo ‘- – -‘ >/sys/class/scsi_host/host2/scan

原创文章,作者:z long,如若转载,请注明出处:http://www.178linux.com/84256

(0)
上一篇 2017-08-08 14:41
下一篇 2017-08-08 14:52

相关推荐

  • 跟我一起学man page、history的使用,剖析FHS(文件系统目录标准)

    跟我一起学man page、history的使用,剖析FHS(文件系统目录标准) 描述 从Linux小白鼠成长为高(lao)高(hei)手(shu)的过程中,无论如何都要学会自个儿施法解决问题,法力的高深体现了解决问题的能力,这里的法力指的是在没有互联网的环境下如何使用man page或相关文档找到命令的使用方法和配置文件的修改方法。本文第一部分总结了在Li…

    Linux干货 2016-07-29
  • shell编写的linux命令练习工具

    linux常用命令加选项,有成百上个,仅仅靠背诵忘记得太快,所以写了此脚本,便于对linux命令的练习,希望能帮助到大家。 运行脚本效果如下: 上边两图一个是运行脚本时的截图,另一个为题库的格式(@做分隔符,所以如果题目中有@一定要替换掉) 下面附上源码 #!/bin/bash#版本号:1.0 #作者:Mr.L #WX:504498722FILE=/root…

    2017-03-19
  • 源码安装http

    http://xxlii.blog.51cto.com/10277731/1841570     哈哈!

    Linux干货 2016-08-24
  • 计算机操作系统简史 以及 终端类型

    计算机及操作系统发展史 1.计算机的主要部件 :ENIARC         Cpu:运算器  控制器(控制内存,IO总线)      存储器是寄存器(锁存数据)  缓存(加速功能)    内存:ram (random access mem…

    Linux干货 2016-10-19
  • 实现CenOS7网卡名传统方式

    网卡命令:理念 CentOS 6之前,网络接口使用连续号码命名:eth0、eth1等,当 增加或删除网卡时,名称可能会发生变化 CentOS 7使用基于硬件,设备拓扑和设置类型命名: (1) 网卡命名机制 systemd对网络设备的命名方式 (a) 如果Firmware或BIOS为主板上集成的设备提供的索引信 息可用,且可预测则根据此索引进行命名, 例如en…

    Linux干货 2017-12-19
  • linux系统自动化安装和selinux

    系统自动化安装: Anaconda 安装系统分成三个阶段:  安装前配置阶段安装过程使用的语言键盘类型安装目标存储设备Basic Storage :本地磁盘特殊设备:iSCSI设定主机名配置网络接口时区管理员密码x设定分区方式及MBR 的安装位置创建一个普通用户选定要安装的程序包 创建引导光盘:#cp /media/cdrom/isoli…

    Linux干货 2017-04-06