博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ubuntu 18.04.1 LTS下部署FastDFS 5.11+Nginx 1.14.0
阅读量:6207 次
发布时间:2019-06-21

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

hot3.png

参考自:

我自己的环境和安装包,亲测可用
  1. 环境 Ubuntu 18.04.1 LTS
  2. fastdfs目录: /fastdfs
  3. 安装包:FastDFS v5.11,libfastcomon V1.0.39, Ngxin 1.14.0, fastdfs-nginx-module V1.20

文章原文:

libfastcommon-master.zipfastdfs-nginx-module_v1.16.tar.gznginx-1.6.2.tar.gzfastdfs_client_java._v1.25.tar.gz源码地址: https://github.com/happyfish100/下载地址: http://sourceforge.net/projects/fastdfs/files/官方论坛: http://bbs.chinaunix.net/forum-240-1.html

一、下载安装libfastcommon

1.1、上传或下载 libfastcommon-master.zip 到/usr/local/src 目录

git clone https://github.com/happyfish100/libfastcommon.gitcd libfastcommon/./make.sh./make.sh install

1.2、解压

# cd /usr/local/src/# unzip libfastcommon-master.zip# cd libfastcommon-master

1.3、编译、安装

# ./make.sh# ./make.sh installlibfastcommon 默认安装到了/usr/lib64/libfastcommon.so/usr/lib64/libfdfsclient.so

1.4、创建软链接.

# ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so# ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so# ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so# ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

二、安装 FastDFS

2.1、上传或下载 FastDFS 源码包( FastDFS_v5.05.tar.gz) 到 /usr/local/src 目录

2.2、解压

# cd /usr/local/src/# tar -zxvf FastDFS_v5.05.tar.gz# cd FastDFS

2.3、编译、 安装(编译前要确保已经成功安装了 libfastcommon)

# ./make.sh# ./make.sh install

三、配置 FastDFS 跟踪器

3.1、复制 FastDFS 跟踪器样例配置文件,并重命名:

# cd /etc/fdfs/# cp tracker.conf.sample tracker.conf

3.2、编辑跟踪器配置文件:

# vi /etc/fdfs/tracker.conf修改的内容如下:base_path=/fastdfs/tracker

3.3、创建基础数据目录(参考基础目录 base_path 配置) :

# mkdir -p /fastdfs/tracker

3.4、启动 Tracker:

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf

四、配置 FastDFS 存储

4.1、复制 FastDFS 存储器样例配置文件,并重命名

cd /etc/fdfs/

4.2、编辑存储器样例配置文件:

# vi /etc/fdfs/storage.conf修改的内容如下:base_path=/fastdfs/storagestore_path0=/fastdfs/storagetracker_server=192.168.241.140:22122

4.3、创建基础数据目录

mkdir -p /fastdfs/storage

4.4、启动 Storage:

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf

4.5、检查进程

ps -ef |grep fdfs

五、文件上传测试

5.1、修改 Tracker 服务器中的客户端配置文件:

cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf# vi /etc/fdfs/client.confbase_path=/fastdfs/trackertracker_server=192.168.241.140:22122

5.2、执行如下文件上传命令

# /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/src/FastDFS_v5.05.tar.gz返回 ID 号: group1/M00/00/00/wKgEfVUYNYeAb7XFAAVFOL7FJU4.tar.gz(能返回以上文件 ID, 说明文件上传成功)

六、在每个存储节点上安装 nginx

6.1、fastdfs-nginx-module 作用说明

FastDFS 通过 Tracker 服务器,将文件放在 Storage 服务器存储, 但是同组存储服务器之间需要进入

文件复制, 有同步延迟的问题。假设 Tracker 服务器将文件上传到了 192.168.4.125,上传成功后文件 ID
已经返回给客户端。此时 FastDFS 存储集群机制会将这个文件同步到同组存储 192.168.4.126,在文件还
没有复制完成的情况下,客户端如果用这个文件 ID 在 192.168.4.126 上取文件,就会出现文件无法访问的
错误。而 fastdfs-nginx-module 可以重定向文件连接到源服务器取文件,避免客户端由于复制延迟导致的
文件无法访问错误。( 解压后的 fastdfs-nginx-module 在 nginx 安装时使用)

6.2、上传 fastdfs-nginx-module_v1.16.tar.gz 到/usr/local/src

6.3、解压

# cd /usr/local/src/# tar -zxvf fastdfs-nginx-module_v1.16.tar.gz

6.4.修改 fastdfs-nginx-module 的 config 配置文件

# cd fastdfs-nginx-module/src# vi configCORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"修改为:CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"( 注意: 这个路径修改是很重要的,不然在 nginx 编译的时候会报错的)

6.5、 上传当前的稳定版本 Nginx(nginx-1.13.0.tar.gz)到/usr/local/src 目录

6.6、 编译安装 Nginx(添加 fastdfs-nginx-module 模块)

# cd /usr/local/src/# tar -zxvf nginx-1.6.2.tar.gz# cd nginx-1.6.2# ./configure --add-module=/home/jnsl/git-repository/fastdfs-nginx-module/src --with-http_stub_status_module --with-http_ssl_module# make && make install

如果出现 fastdfs-nginx-module/src/common.c:21:25: fatal error: fdfs_define.h: 没有那个文件或目录

添加链接

ln -sv /usr/include/fastcommon /usr/local/include/fastcommon             ln -sv /usr/include/fastdfs /usr/local/include/fastdfs             ln -sv /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so

如果安装nginx时提示error: the HTTP rewrite module requires the PCRE library

需要安装pcre包。

sudo apt-get updatesudo apt-get install libpcre3 libpcre3-dev你可能还需要安装sudo apt-get install openssl libssl-dev

如果安装nginx时提示error: he HTTP gzip module requires the zlib library.

需要安装zlib包。

到http://www.zlib.net/上下载tar包解压之后,进入目录,执行 ./configure之后执行 make && make install命令进行安装

6.7、复制 fastdfs-nginx-module 源码中的配置文件到/etc/fdfs 目录, 并修改

# cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/# vi /etc/fdfs/mod_fastdfs.conf修改以下配置:tracker_server=192.168.241.230:22122url_have_group_name = truestore_path0=/fastdfs/storage

6.8、复制 FastDFS 的部分配置文件到/etc/fdfs 目录

# cd /usr/local/src/FastDFS/conf  (fastdfs的源码位置)# cp http.conf mime.types /etc/fdfs/

6.9、在/fastdfs/storage 文件存储目录下创建软连接,将其链接到实际存放数据的目录

# ln -s /fastdfs/storage/data/ /fastdfs/storage/data/M00

七、配置 Nginx

nginx配置相关目录:/usr/local/nginx/conf ,命令:vim nginx.conf

user root;worker_processes 1;events {    worker_connections 1024;}http {    include mime.types;    default_type application/octet-stream;    sendfile on;    keepalive_timeout 65;    server {            listen 8888;            server_name localhost;            location ~/group([0-9])/M00 {            #alias /fastdfs/storage/data;            ngx_fastdfs_module;        }        error_page 500 502 503 504 /50x.html;        location = /50x.html {            root html;        }    }}

启动nginx

提示:nginx: [emerg] unknown directive "ngx_fastdfs_moudle" in /usr/local/nginx/conf/nginx.conf:86
如果提示:jnsl@129-test:/usr/local/nginx/sbin$ sudo ./nginx -s reloadngx_http_fastdfs_set pid=16537则说明配置成功

nginx相关命令

nginx启动、重启、关闭一、启动  cd usr/local/nginx/sbin./nginx二、重启  更改配置重启nginx  kill -HUP 主进程号或进程号文件路径或者使用cd /usr/local/nginx/sbin./nginx -s reload    判断配置文件是否正确 nginx -t -c /usr/local/nginx/conf/nginx.conf或者cd  /usr/local/nginx/sbin./nginx -t三、关闭  查询nginx主进程号  ps -ef | grep nginx  从容停止   kill -QUIT 主进程号  快速停止   kill -TERM 主进程号  强制停止   kill -9 nginx  若nginx.conf配置了pid文件路径,如果没有,则在logs目录下  kill -信号类型 '/usr/local/nginx/logs/nginx.pid'四、升级  1、先用新程序替换旧程序文件  2、kill -USR2 旧版程序的主进程号或者进程文件名    此时旧的nginx主进程会把自己的进程文件改名为.oldbin,然后执行新版nginx,此时新旧版本同时运行  3、kill -WINCH 旧版本主进程号  4、不重载配置启动新/旧工作进程    kill -HUP 旧/新版本主进程号    从容关闭旧/新进程    kill -QUIT 旧/新进程号    快速关闭旧/新进程    kill -TERM 旧/新进程号

八、访问地址

[]

转载于:https://my.oschina.net/u/2484581/blog/1942124

你可能感兴趣的文章
CentOS安装Nagios网络监视工具
查看>>
Oracle 随机取某一列的值
查看>>
PHP中的逆波兰式应用
查看>>
Linux运维:现状、入门和未来之路
查看>>
Jenkins持续集成——用户管理
查看>>
ZooKeeper3.4.5-最基本API开发
查看>>
工作测试博客
查看>>
golang
查看>>
powershell 中的"pause"
查看>>
实用的rpm网站
查看>>
Openfire3.9.3源代码导入eclipse中开发配置指南(转载)
查看>>
安装ISO系统(原版系统)系统终极方法
查看>>
SharePoint项目中新建类库的错误处理及项目建设中遇到的问题总结
查看>>
Spring Cloud Eureka 入门 (二)服务提供者详解
查看>>
web前端面试总结
查看>>
wxPython python3.x下载地址
查看>>
教你如何在linux 下批量卸载
查看>>
GC Blocks Lost等待事件
查看>>
Apache Prefork、Worker和Event三种MPM简单分析
查看>>
Linux从入门到精通系列之PPTP
查看>>