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)
z longz long
上一篇 2017-08-08 14:41
下一篇 2017-08-08 14:52

相关推荐

  • bash 循环语句for、while、until

    循环执行 循环执行     定义:将某段代码有次数或无次数循环执行多次。     构成要素:退出条件和进入条件     循环的三种语句:for、while、until for循环:      &nbs…

    Linux干货 2016-08-21
  • 管理systemd

    管理systemd 一、systemd介绍 回顾一下centos的启动流程  POST –> Boot Sequence –> Bootloader –> kernel + initramfs(initrd) –> rootfs –> /sbin/init 在…

    Linux干货 2016-09-22
  • 链接分析算法之:主题敏感PageRank

      前面的讨论提到。PageRank忽略了主题相关性,导致结果的相关性和主题性降低,对于不同的用户,甚至有很大的差别。例如,当搜索“苹果”时,一个数码爱好者可能是想要看 iphone 的信息,一个果农可能是想看苹果的价格走势和种植技巧,而一个小朋友可能在找苹果的简笔画。理想情况下,应该为每个用户维护一套专用向量,但面对海量用户这种方法显然不可行。所…

    Linux干货 2016-02-17
  • Linux系统启动流程、内核及模块管理、linux启动故障排除和自制linux

    Linux系统启动流程、内核及模块管理 Linux系统的组成部分组成:内核+根文件系统(kernel+rootfs)内核(kernel): 进程管理(创建、调度、销毁等)、内存管理、网络管理(网络协议栈)、驱动程序、文件系统、安全功能IPC:Inter Process Communication机制本地进程间通信机制:消息队列、semerphor、shm(共…

    2016-09-29
  • 8.1-用户和组(作业篇)

     1、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中。 [root@localhost ~]# tr a-z A-Z </etc/issue > /tmp/issue.out [root@localhost ~]#&n…

    Linux干货 2016-08-04
  • 第八周:网络基础知识和shell脚本练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别; 网桥:是连接两个局域网的基于MAC地址数据存储转发设备,工作于数据链路层 集线器:所有端口处于同一个广播域和冲突域中,带宽共享,工作于物理层 二层交换机:多端口网桥,一个端口一个冲突域,默认所有端口位于同一个广播域中,可以划分vlan,隔离广播域,带宽独享 三层交换机:具有路由功…

    Linux干货 2016-11-21