FastDFS的安装与部署(普通用户)

说明:因为没有root用户权限,只能自己自定义目录安装,比默认安装改的东西要多一些

1.下载FastDFS相关包,链接:https://github.com/happyfish100nginx包链接:http://nginx.org/download

也可以下载我的,链接:https://download.csdn.net/download/weixin_41481806/11974974

FastDFS是C语言开发,编译需要gcc环境,开发环境应该都有,这里就不多说了

linux两种包的不同的解压命令:

unzip XXX.zip
tar -zxvf XXX.tar.gz

2.新建目录,将下载的文件包放到soft目录下,fastdfs为安装的目录

mkdir fastDFS/fastdfs
mkdir fastDFS/soft

3.编译安装环境变量,设置一个环境变量,软件的安装路径,make.sh文件中有这个变量,否则默认root用户编译的安装在系统根目录下,但普通用户是没有根目录的写入权限的,我的是web用户,DESTDIR,变量名别写错

export DESTDIR=/data/web/fastDFS/fastdfs

4.查看环境变量是否设置成功

env

 

5.解压安装文件libfastcommon-master,成功后的目录结构如下,会生成一个usr目录

cd /data/web/fastDFS/soft
unzip libfastcommon-master.zip
cd libfastcommon-master
./make.sh
./make.sh install

6.解压安装文件fastdfs-5.11

cd /data/web/fastDFS/soft
unzip fastdfs-5.11.zip
cd /data/web/fastDFS/fastdfs/usr/lib64
pwd

7.pwd命令后的路径复制下来,修改fastdfs-5.11下的make.sh文件,如图位置(编译完程序运行时额外读取lib文件路径)

vi /data/web/fastDFS/soft/fastdfs-5.11/make.sh

8.修改tracker、storage、client下的Makefile.in文件中的     INC_PATHLIB_PATH的值    原有和修改后对照图

vi /data/web/fastDFS/soft/fastdfs-5.11/tracker/Makefile.in

vi /data/web/fastDFS/soft/fastdfs-5.11/storage/Makefile.in

 

vi /data/web/fastDFS/soft/fastdfs-5.11/client/Makefile.in

9.fastdfs-5.11的编译和安装,会多一个etc文件目录

cd /data/web/fastDFS/soft/fastdfs-5.11
./make.sh
./make.sh install

10.解压安装文件nginx和fastdfs-nginx-module

cd /data/web/fastDFS/soft
unzip fastdfs-nginx-module-1.20.zip
tar -zxvf nginx-1.7.5.tar.gz

11.修改fastdfs-nginx-module编译配置

vi /data/web/fastDFS/soft/fastdfs-nginx-module-1.20/src/config

12.复制fastdfs-nginx-module下的src中的mod_fastdfs.conf文件复制到fastdfs存放配置文件目录

cp /data/web/fastDFS/soft/fastdfs-nginx-module-1.20/src/mod_fastdfs.conf /data/web/fastDFS/fastdfs/etc/fdfs/

13.编译安装Nginx,成功后会创建nginx-fdfs文件目录,编译和安装成功后的截图

(命令make后将DESTDIR置空,否则会创建重复目录,然后在intall安装)

cd /data/web/fastDFS/soft/nginx-1.17.5
./configure --prefix=/data/web/fastDFS/fastdfs/nginx-fdfs --add-module=/data/web/fastDFS/soft/fastdfs-nginx-module-1.20/src --with-http_ssl_module --with-ld-opt="-L /data/web/fastDFS/fastdfs/usr/lib -Wl,-rpath=/data/web/fastDFS/fastdfs/usr/lib64"
make
export DESTDIR=""
make install

 

14.将fastdfs源码参考配置文件复制到fastdfs的安装目录中

cp /data/web/fastDFS/soft/fastdfs-5.11/conf/* /data/web/fastDFS/fastdfs/etc/fdsf/

15.准备启动脚本,编辑脚本文件

vi /data/web/fastDFS/fastdfs/ect/init.d/fdfs_storage
vi /data/web/fastDFS/fastdfs/ect/init.d/fdfs_trackerd
#fdfs_storage修改部分
PRG=/data/web/fastDFS/fastdfs/usr/bin/fdfs_storaged
CONF=/data/web/fastDFS/fastdfs/etc/fdfs/storage.conf
#fdfs_trackerd修改部分
PRG=/data/web/fastDFS/fastdfs/usr/bin/fdfs_trackerd
CONF=/data/web/fastDFS/fastdfs/etc/fdfs/tracker.conf

16.可以自己创建启动目录,将默认启动目录的脚本拷贝到自己定义的目录中(次步可以省略)

mkdir /data/web/fastDFS/fastdfs/bin
cp /data/web/fastDFS/fastdfs/etc/init.d/* /data/web/fastDFS/fastdfs/bin/

17.配置tracker,新建一个tracker工作目录 ,配置完后启动tracker(启动命令在19步骤)

mkdir /data/web/fastDFS/fastdfs/tracker
vi /data/web/fastDFS/fastdfs/etc/fdfs/tracker.conf
disabled=false #默认开启 
port=22122 #默认端口号 
base_path=/data/web/fastDFS/fastdfs/tracker #刚刚创建的目录 
http.server_port=6666 #默认端口是8080

18.配置storage,新建storage工作目录和storage_data数据存储目录,配置完后启动storage(启动命令在19步骤)

mkdir /data/web/fastDFS/fastdfs/storage
mkdir /data/web/fastDFS/fastdfs/storage_data
vi /data/web/fastDFS/fastdfs/etc/fdfs/storage.conf
disabled=false #默认
group_name=group1 #组名,根据实际情况修改 
port=23000  #设置storage的端口号,默认是23000,同一个组的storage端口号必须一致 
base_path=/data/web/fastDFS/fastdfs/storage  #设置storage数据文件和日志目录 
store_path_count=2 #存储路径个数,需要和store_path个数匹配 
store_path0=/data/web/fastDFS/fastdfs/storage_data/db1 #实际文件存储路径 
store_path1=/data/web/fastDFS/fastdfs/storage_data/db2 #实际文件存储路径
tracker_server=20.200.54.230:22122 #我的ip地址1 
tracker_server=20.200.54.231:22122 #我的ip地址2
#多节点另一台服务器在重启配置一遍,只不过两台的storage.conf中要加入两个server的地址

mod_fastdfs.conf中的配置要和storage.conf的对应 

vi /data/web/fastDFS/fastdfs/etc/fdfs/mod_fastdfs.conf
base_path=/data/web/fastDFS/fastdfs/storage
tracker_server=20.200.54.230:22122
tracker_server=20.200.54.231:22122
url_have_group_name=true
group_count=1

[group1]
group_name=group1
store_path_count=2
storage_server_port=23000
store_path0=data/web/fastDFS/fastdfs/storage_data/db1
store_path1=data/web/fastDFS/fastdfs/storage_data/db2

 19.启动、停止命令

./data/web/fastDFS/fastdfs/bin/fdfs_trackerd start|stop|restart|status
./data/web/fastDFS/fastdfs/bin/fdfs_storaged start|stop|restart|status

20.查看是否成功启动,并确认storage是否注册到tracker中去

netstat -unltp|grep fdfs

/data/web/fastDFS/fastdfs/usr/bin/fdfs_monitor /data/web/fastDFS/fastdfs/etc/fdfs/storage.conf

21.配置客户端

vi /data/web/fastDFS/fastdfs/etc/fdfs/client.conf
base_path=/data/web/fastDFS/fastdfs/tracker #tracker服务器文件路径
tracker_server=20.200.54.230:22122 #tracker服务器IP地址和端口号
http.tracker_server_port=6666 # tracker 服务器的 http端口号,必须和tracker的设置对应起来

22.上传图片测试,成功后会返回一个图片的路径

/data/web/fastDFS/fastdfs/usr/bin/fdfs_upload_file /data/web/fastDFS/fastdfs/etc/fdfs/client.conf /data/web/fastDFS/upload_test/1.bmp

#根据返回的路径,进入下面路径可以看到图片
cd /data/web/fastDFS/fastdfs/storage_data/data/00/00

23.想要http地址直接访问,需要配置nginx

24.启动nginx服务,然后查看错误日志,没有报错说明成功启动了

./data/web/fastDFS/fastdfs/nginx-fdfs/sbin/nginx
tail -f /data/web/fastDFS/fastdfs/nginx-fdfs/logs/error.log

25.打开浏览器请求http://20.200.54.230:9999,可以请求到nginx的首页,说明nginx配置没有问题,然后请求http://20.200.54.230:9999/group1/M00/00/00/FMg2513LpyqABuICAAi75Asm2lQ034.bmp就可以成功下载图片了

多节点存储的话另一台服务器按步骤在配置一遍,只不过两台的storage.conf中要加入两个server的地址,上传图片时会自动同步,两台都会有对应的文件,文件名称路径也是一样的

26.下篇java中的应用

https://blog.csdn.net/weixin_41481806/article/details/103070808

 

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值