博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
企业级分布式存储应用-mogilefs
阅读量:4201 次
发布时间:2019-05-26

本文共 4014 字,大约阅读时间需要 13 分钟。

一、架构设计

1.架构设计

centos系统服务器5台、一台作为mysql(主)一台mysql(从),三台作为存储节点,配置好yum源、防火墙关闭、各节点时钟服务同步、各节点之间可以通过主机名互相通信

2.服务器准备

主机 IP1 作用 备注
mogilefs-mysql01 192.168.16.173 mysql+tracker tracker+数据库主节点
mogilefs-mysql02 192.168.17.173 mysql从+tracker tracker+数据库从节点
mogilefs-store01 192.168.17.174 stored stored存储
mogilefs-store02 192.168.17.175 stored stored存储
mogilefs-store03 192.168.17.176 stored stored存储

3.安装包

先安装perl需要的包

yum install perl-Net-Netmask perl-IO-String perl-Sys-Syslog perl-IO-AIO

安装mogile需要的包

链接: 密码:8twa

rzyum  install *

二、时间同步

ntpdate 172.17.0.1

三、基于MHA的mysql主从节点配置

1.mysql——主节点

配置文件

vim  /etc/my.cnf[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.socksymbolic-links=0server_id=173log_bin=/var/lib/mysql/log_binskip-name-resolve[mysqld_safe]log-error=/var/log/mariadb/mariadb.logpid-file=/var/run/mariadb/mariadb.pid!includedir /etc/my.cnf.d

开启服务

systemctl restart mariadb

授权复制权限

grant replication slave,replication client on *.* to  slave@'%' identified by 'slave';

2.mysql——从节点

不能设置为只读,要不然切换切换主从时,从不能w

配置文件

vim  /etc/my.cnf[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.socksymbolic-links=0server_id=183relay_log=/var/lib/mysql/relay_loglog_bin=/var/lib/mysql/log_binlog_slave_updates=1[mysqld_safe]log-error=/var/log/mariadb/mariadb.logpid-file=/var/run/mariadb/mariadb.pid!includedir /etc/my.cnf.d

开启服务

systemctl start mariadb

使用授权账号从主节点复制

change master to master_host='192.168.16.173', master_user='slave', master_password='slave', master_log_file='log_bin.000001',master_log_pos=245;

开启 I/O线程和sql线程

start slave;

3.配置keepalived在主从节点

让tracker节点连接mysql数据库使用

vim  /etc/keepalived/keepalived.conf! Configuration File for keepalivedglobal_defs {   notification_email {     root@localhost    }   notification_email_from root_keepalived   smtp_server 127.0.0.1   smtp_connect_timeout 30   router_id LVS_DEVEL} vrrp_script chk_haproxy {        script "killall -0  -u mysql"         interval 2         weight -50         fall 2         rise 2 }vrrp_instance VI_2 {    state BACKUP    interface eth1    virtual_router_id 15    priority 200    advert_int 1    authentication {        auth_type PASS        auth_pass 2121    }    virtual_ipaddress {        192.168.16.100    }    track_script {    chk_haproxy    } }

四、tracker节点关联mysql(VIP节点)

1.配置文件

vim  /etc/mogilefs/mogilefsd.conf     db_dsn = DBI:mysql:mogilefs:host=192.168.16.100    db_user = mogile    db_pass = mogile    #监听所有IP的7000端口,避免VIP不在本机而不能启动服务    listen = :7001

2.关联数据库

mogdbsetup --dbname=mogilefs --dbhost=192.168.16.100--dbuser=mogile --dbpass=mogile

3.启动服务

此服务很奇葩,经常明明报错,但却启动成功

systemctl restart mogilefsd

五、stored配置

1.配置文件

vim   /etc/mogilefs/mogstored.confmaxconns = 10000httplisten = 0.0.0.0:7500mgmtlisten = 0.0.0.0:7501docroot = /mogile/data

2.docroot权限

mkdir /mogile/{rpm,data} -p    chown -R   mogilefs.mogilefs  /mogile

3.启动服务

systemctl start mogstored

4.创建节点

mkdir  /mogile/data/dev41chown -R mogilefs.mogilefs  /mogile
mkdir  /mogile/data/dev51chown -R mogilefs.mogilefs  /mogile
mkdir  /mogile/data/dev61chown -R mogilefs.mogilefs  /mogile

六、添加 存储节点、设备、域、class”到 tracker 中

每个节点配置trcker节点位置

vim  /etc/mogilefs/mogilefs.conftrackers=192.168.16.100

1.在各个tracker节点加入stored节点

mogadm host add node_17_174 --ip=192.168.17.174 --port=7500 --status=alivemogadm host add node_17_175 --ip=192.168.17.175 --port=7500 --status=alivemogadm host add node_17_176 --ip=192.168.17.176 --port=7500 --status=alive

2.在各个tracker节点加入stored节点的设备

mogadm device add node_17_174  dev41mogadm device add node_17_175  dev51mogadm device add node_17_176  dev61

3.添加域

#image为domain_namemogadm admin add image

4.添加class并制定副本数

#class1为class_name#--mindevcount 4 副本4份mogadm class add image class1 --mindevcount 4

七、关于文件操作

1.上传文件

mogupload --domain=image --key=chengkun --file=./1.jpeg

2.查看文件

mogfileinfo  --domain=image --key=chengkun

3.删除文件

mogdelete --domain=image --key=chengkun

4.列出所有的文件 key

#这个可以列出指定 domain 下面的所有的 key , 也可以指定的一个前缀, 来找特定前缀的所有文件的 key.moglistkeys --domain=image --key_prefix=c

5.列出指定 fid 的文件

moglistfids --fromfid=
--count=
<数量>

转载地址:http://ywili.baihongyu.com/

你可能感兴趣的文章
LoadRunner性能脚本开发实战训练
查看>>
测试之途,前途?钱途?图何?
查看>>
测试设计与测试项目实战训练
查看>>
HP Sprinter:敏捷加速器
查看>>
单元测试培训PPT
查看>>
adb常用命令
查看>>
通过LR监控Linux服务器性能
查看>>
通过FTP服务的winsockes录制脚本
查看>>
LRwinsocket协议测试AAA服务器
查看>>
Net远程管理实验
查看>>
反病毒专家谈虚拟机技术 面临两大技术难题
查看>>
几种典型的反病毒技术:特征码技术、覆盖法技术等
查看>>
性能测试一般过程与LR性能测试过程
查看>>
Software Security Testing软件安全测试
查看>>
SQL注入漏洞全接触--进阶篇
查看>>
SQL注入漏洞全接触--高级篇
查看>>
SQL注入法攻击一日通
查看>>
菜鸟入门级:SQL注入攻击
查看>>
用vbs来写sql注入等80端口的攻击脚本
查看>>
C# 检查字符串,防SQL注入攻击
查看>>