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
下一篇 2017-08-08

相关推荐

  • sed简介及常见用法

    sed是一个文本流处理器,配合正则表达式用可以实现很多文本处理操作。 和grep一样,sed是一行一行的处理的。sed处理文本时,首先会将源文件复制一份到内存中,然后将文本一行一行拿到模式空间内进行操作,最后输出到标准输出,即屏幕上。 在模式空间中,每一行都会根据用户给的条件进行匹配,匹配到了进行编辑后输出,没有匹配到,直接输出到标准输出。sed除了模式空间…

    2018-01-04
  • 对inode的初步理解

    1.什么是inode?     inode中文译作”索引节点“,是linux操作系统中的一种数据结构,用来存储文件的元数据信息。在linux系统中每个文件都会分配一个inode,我们也可以把inode看作指针,它永远指向文件的具体存储位置。 2.inode中包含了什么信息? * inode 编号 * 用来识别文件类型,以及用于 …

    2017-07-18
  • 笔记–8.2–用户管理,权限管理

    ·硬链接,软链接区别 大小 链接数 设备,分区 类型 硬连接 一样大,显示的是本身的大小 会增加 不能跨分区 是一个文件,相同inode号,忘了位置可通过inode号找到源文件 软链接 不一样大,链接文件大小是路径的大小 不会增加 可以跨分区,跨设备 两个文件,不同inode号,像发小广告,忘了源连接,文件就找不到了 软链接格式:ln -s +绝对路径或相对…

    Linux干货 2016-08-05
  • Linux进程管理和计划任务

    进程管理篇 进程概念 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等 Process: 运行中的程序的一个副本,是被载入内存的一个指令集合     进程ID(Process ID,PID)号码被用来标记各个进程     UID、GID、和SELinux语…

    Linux干货 2016-09-17
  • Linux发行版的基础目录名称命名法则及功用规定

    [root@localhost /]# tree -L 1. <—-> 为 / 符号,所有文件的根目录;├── bin -> usr/bin <—-> 所有用户可用的基本命令程序文件;├── boot <—-> 引导加载器必须用到的各静态文件:kernel,initramfs(in…

    2018-02-28
  • 联通电信双链路内网VRRP+BFD&&PPTP+MYSQL+FreeRadius实现IDC堡垒机连接IDC机房

    一、具体需求与实现 1、多wan:两条宽带接入链路,使用VRRP+BFD技术,实现链路冗余; 2、IDC机房远程管理和登录限制:使用PPTP+freeRadius+mysql实现VPN,限制指定网段或IP进行拨号认证登录IDC机房,并编写脚本检查非法用户登录IDC机房服务器情况; 3、内网VLAN划分:利于安全管理、IP分流和带宽限制; 4、内网监控:使用N…

    Linux干货 2016-08-22