当前位置:首页 » Mysql技术教程

实验:企业级分布式存储应用与实战-mogilefs实现

2017-12-04 20:20 本站整理 浏览(12)

实验:企业级分布式存储应用与实战-mogilefs实现 (1)安装mogilefs 1.创建一个存放安装mogilefs所需的软件包的目录 cd /app/

mkdir mogilefs

cd mogilefs

2.用lftp下载安装mogilefs所需的软件包 lftp 172.17.0.1 lftp 172.17.0.1:/pub/Sources/7.x86_64/mogilefs> mget *

3.安装mogilefs yum localinstall * -y yum install perl-Net-Netmask perl-IO-String perl-Sys-Syslog perl-IO-AIO -y

(2)初始化数据库,授权即可,其他默认 1.授权 mysql

grant all privileges on mogilefs.* to 'mogile'@'172.17.0.1' identified by 'mogile' with grant option;

2.初始化数据库,只需指定密码,其他默认 mogdbsetup --dbpass=mogile (3)配置tracker 1.修改配置文件

vim /etc/mogilefs/mogilefsd.conf

配置客户端请求的地址和连接数据库所需的用户名和密码

2.启动tracker /etc/init.d/mogilefsd start

ss -ntl 查看是否有7001端口

ps -ef |grep mogilefs 查看进程

3.查看配置的tracker mogadm --tracker=ip:port check

mogadm --tracker=192.168.10.190:7001 check

(4)配置storage节点 1.修改配置文件 vim /etc/mogilefs/mogstored.conf 配置存放真实数据的路径

2.创建配置的工作路径路径 mkdir /data/mogdata -p

修改工作路径的属主

chown mogilefs.mogilefs /data/mogdata -R

3.启动strage /etc/init.d/mogstoraged start ss -ntl 查看7500端口

(4)关联tracker调度器和storage节点服务器 在tracker上去配置(也可在storage节点上去配置,只不过要制定tracker是谁)

1.添加节点1 mogadm --tracker=192.168.10.190:7001 host add node3 --ip=192.168.10.187 --port=7500 --status=alive 2.查看tracker mogadm --tracker=192.168.10.190:7001 check

3.添加节点2 mogadm --tracker=192.168.10.190:7001 host add node5 --ip=192.168.10.160 --port=7500 --status=alive 4.查看tracker mogadm --tracker=192.168.10.190:7001 check

(5)添加设备 创建设备目录,目录名字是有要求dev+id 1.在storage节点上node1 cd /data/mogdata

mkdir dev1

修改属主

chown mogilefs.mogilefs dev1 -R

2.在storage节点上node2 cd /data/mogdata mkdir dev2

修改属主

chown mogilefs.mogilefs dev2 -R

(6)将设备加载到mogilefs的集群中 mogadm --tracker=192.168.10.190:7001 device add node3 1 mogadm --tracker=192.168.10.190:7001 device add node5 2

(7)查看tracker 在客户端配置文件加一个tracker,指定tracker在哪 vim /etc/mogile/mogilefs.conf

trackers=192.168.10.190:7001

然后就可以直接去查看tracker

mogadm check (不用指定tracker)

(8)添加域和class mogadm domain add img 添加一个img域,只存放图片

mogadm class add img m26 --mindevcount=3 在img域中添加一个m26class,数据保存3份

mogadm domain list 查看域

(9)测试 1.上传文件(在tracker上)

mogupload --domain=img --key=test --file=magedu.png

2.在storage节点查看上传文件 key是文件的映射,可以在数据库中查看

(10)查询上传文件 mogfileinfo --domain=img --key=test

(11)在浏览器上访问该文件

(12)修复bug,实现后端storage node 同步存储 分析:因为这个版本有bug,所以需降版本 1.下载包 wget http://search.cpan.org/CPAN/authors/id/B/BR/BRADFITZ/Sys-Syscall-0.23.tar.gz

也可以http://search.cpan.org/CPAN/authors/id/B/BR/BRADFITZ/Sys-Syscall-0.23.tar.gz 去网站直接下载

2.上传,解压缩 rz,tar xvf Sys-Syscall-0.23.tar.gz -C /tmp 3.编译安装 ① 因为是perl 语言编写的,所以需要安装perl 编译安装的环境

yum -y install make gcc unzip perl-DBD-MySQL perl perl-CPAN perl-YAML perl-Time-HiRes

② 编译安装

cd /tmp/Sys-Syscall-0.23/

perl Makefile.PL 准备环境

make & make install

4.重启服务 ① 在tracker 服务器是,有时候开启服务显示失败,其实已经成功 /etc/init.d/mogilefsd stop

/etc/init.d/mogilefsd start

② 在storage node 服务器上,有时候开启服务显示失败,其实已经成功

/etc/init.d/mogstored stop

/etc/init.d/mogstored star

5.测试 ① 再上传一张图片 mogupload --domain=img --key=test1 --file=along.jpg

② 在两个storage node 服务器上,存储已经实现同步