分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

社交网站部署——MFS分布式文件系统

发布时间:2023-09-06 02:06责任编辑:傅花花关键词:暂无标签
案例概述

某公司的社交网站采用PHP语言开发,为了管理PHP程序员开发的代码,上级领导要求搭建SVN服务器进行版本控制。社交网站的第一个版本部署在LNMP平台之上,前端为Nginx服务器,通过fastcgi协议访问后端的PHP服务器。为了保证数据安全,要求搭建MySQL数据库主从集群。

社交网站项目包含用户的相册功能,允许用户上传照片,上传照片需要使用共享存储来存放。针对共享存储可用的开源方案有很多,如MFS、FastDFS 等。公司决定使用MFS分布式文件系统来实现,并将MFS挂载在PHP服务器的相关目录下。

案例实施

根据公司的需求,实施过程大致分为以下步骤。

  • 部署SVN服务器,为PHP程序员创建repo目录的访问账户,通知程序员可以导入代码。
  • 部署MySQL主从服务器,根据PHP程序员的要求创建数据库与表。
  • 部署Nginx服务器。部署PHP服务器。
  • 部署MFS,将MFS文件系统挂载在前端PHP服务器的相关目录下。
  • 通知上线部署人员可以发布上线。

MFS部署并挂载

搭建 Master Server
1、安装MFS
yum install -y zlib-devel gcc gcc-c++ ?????//安装依赖包环境包useradd mfs -s /sbin/nologin -M ???????????//创建管理用户tar xzvf mfs-1.6.27-5.tar.gz -C /opt/cd /opt/mfs-1.6.27/./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmountmake && make install 
2、复制文件
cd /usr/local/mfs/etc/mfs/cp mfsmaster.cfg.dist mfsmaster.cfg ?????????# 主配置文件cp mfsexports.cfg.dist mfsexports.cfg ??????????# 挂载权限cp mfstopology.cfg.dist mfstopology.cfg ??????????# top架构感知cd /usr/local/mfs/var/mfs/ cp metadata.mfs.empty metadata.mfs ???????#防断裂
3、启动 Master Server
/usr/local/mfs/sbin/mfsmaster start ??????//开启/usr/local/mfs/sbin/mfsmaster -s ???????//停止netstat -antp | grep mfssystemctl stop firewalld.service setenforce 0 ????????//关闭防火墙和安全功能

搭建 Metalogger Server

1、安装MFS
yum install -y zlib-devel gcc gcc-c++ ??????//安装依赖包环境包useradd mfs -s /sbin/nologin -M ?????????//创建管理用户tar xzvf mfs-1.6.27-5.tar.gz -C /opt/cd /opt/mfs-1.6.27/./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmountmake && make install
2、复制文件
cd /usr/local/mfs/etc/mfs/cp mfsmaster.cfg.dist mfsmaster.cfg cp mfsexports.cfg.dist mfsexports.cfg cp mfsmetalogger.cfg.dist mfsmetalogger.cfgvim mfsmetalogger.cfg......MASTER_HOST = 192.168.43.118 ????????//IP指向master
3、启动 Metalogger Server
/usr/local/mfs/sbin/mfsmetalogger start ??//开启/usr/local/mfs/sbin/mfsmetalogger -s ???//停止netstat -antp | grep mfssystemctl stop firewalld.service setenforce 0 ????????//关闭防火墙和安全功能

搭建 Chunk Server

1、安装MFS
yum install -y zlib-devel gcc gcc-c++ ???????//安装依赖包环境包useradd mfs -s /sbin/nologin -M ?????????//创建管理用户tar xzvf mfs-1.6.27-5.tar.gz -C /opt/cd /opt/mfs-1.6.27/./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster --disable-mfsmountmake && make install 
2、复制文件
cd /usr/local/mfs/etc/mfs/ cp mfschunkserver.cfg.dist mfschunkserver.cfgcp mfshdd.cfg.dist mfshdd.cfgvim mfschunkserver.cfg......MASTER_HOST = 192.168.43.118 ????????//IP指向mastervim mfshdd.cfg....../data ???????????//添加一行/data,在这里/data是一个给MFS的分区,生产环境最好使用独立的分区或磁盘挂载到此目录mkdir /data ???????//创建文件夹chown -R mfs:mfs /data ???????//属主属组都改为mfs
3、启动Chunk Server
/usr/local/mfs/sbin/mfschunkserver start ??//开启/usr/local/mfs/sbin/mfschunkserver start -s ???//停止netstat -antp | grep mfssystemctl stop firewalld.service setenforce 0 ????????//关闭防火墙和安全功能

客户端配置

此处PHP服务器是客户端角色,在PHP服务器上搭建

1、安装fuse
yum install -y zlib-devel gcc gcc-c++ ????//安装依赖包环境包tar xzvf fuse-2.9.2.tar.gz -C /opt ???????//mfs客户端依赖于fusecd /opt/fuse-2.9.2./configuremake && make install
2、设置环境变量
vim /etc/profile#在末尾处插入export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATHsource /etc/profile ????????//加载立即生效
3、安装MFS客户端
useradd mfs -s /sbin/nologin -M ???????//创建管理用户tar xzvf mfs-1.6.27-5.tar.gz -C /opt/cd /opt/mfs-1.6.27/./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --enable-mfsmount ??????//注意此处开启客户端make && make install
4、挂载MFS文件系统

将MFS文件系统挂载在前端PHP服务器的/var/www/html/webphp/uploads/photos目录下

mkdir -p /var/www/html/webphp/uploads/photos ????????//创建挂载点modprobe fuse ????????????????????//加载fuse模块到内核/usr/local/mfs/bin/mfsmount /var/www/html/webphp/uploads/photos -H 192.168.43.118 ???????//挂载MFS

社交网站部署——MFS分布式文件系统

原文地址:http://blog.51cto.com/13641879/2151786

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved