Fstdfs +nginx 安装详细步骤

一:安装依赖

1,安装所需的依赖包

联网状态下:

[root@bogon ~]# yum install make cmake gcc gcc-c++

无网络:

[root@bogon yun]# rpm -ivh gcc-c++-4.4.7-18.el6.x86_64.rpm

如果提示错误:请安装下面的三个依赖包:

安装gcc-4.4.7-18时也会依赖三个包:如下:

[root@bogon yun]# rpm -ivh gcc-4.4.7-18.el6.x86_64.rpm

安装上面是三个依赖包:

[root@bogon yun]# rpm -ivh cpp-4.4.7-18.el6.x86_64.rpm 

此时并没有安装成功,而是版本冲突:需要强制安装:

[root@bogon yun]# rpm -ivh --force cpp-4.4.7-18.el6.x86_64.rpm 

安装成功。

在安装:

[root@bogon yun]# rpm -ivh --force libgcc-4.4.7-18.el6.x86_64.rpm 

[root@bogon yun]# rpm -ivh --force libgomp-4.4.7-18.el6.x86_64.rpm

 

[root@bogon yun]# rpm -ivh --force gcc-4.4.7-18.el6.x86_64.rpm

[root@bogon yun]# rpm -ivh --force libstdc++-4.4.7-18.el6.x86_64.rpm

[root@bogon yun]# rpm -ivh --force libstdc++-devel-4.4.7-18.el6.x86_64.rpm

[root@bogon yun]# rpm -ivh --force gcc-c++-4.4.7-18.el6.x86_64.rpm

到此 gcc 所需要的依赖安装完成。

2> 安装libfatscommon

1,

[root@bogon src]# tar -zxvf libfastcommon-1.0.7.tar.gz

[root@bogon src]# cd libfastcommon-1.0.7

[root@bogon libfastcommon-1.0.7]# ./make.sh

[root@bogon libfastcommon-1.0.7]# ./make.sh install

注意安装的路径:也就是说,我们的libfastcommon默认安装到了/usr/lib64/这个位置。

6.进行软链接创建。

FastDFS主程序设置的目录为/usr/local/lib/,而我们的安装目录为/usr/lib64,所以我们需要创建/
usr/lib64/下的一些核心执行程序的软连接文件。

创建目录
命令:mkdir /usr/local/lib/

[root@bogon libfastcommon-1.0.7]# ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so

[root@bogon libfastcommon-1.0.7]# ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so

[root@bogon libfastcommon-1.0.7]# ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so

[root@bogon libfastcommon-1.0.7]# ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

命令:切换到/usr/lib64 可以用命令:ls -l 查看创建的软连接。

3> 安装FastDFS

[root@bogon src]# tar -zxvf FastDFS_v5.05.tar.gz 

[root@bogon src]# cd FastDFS

[root@bogon FastDFS]# ./make.sh

[root@bogon FastDFS]# ./make.sh install

二、配置跟踪节点(192.168.118.129,192.168.1.201)

1> 复制tracker样例配置文件,并重命名

[root@bogon FastDFS]# cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf

2> 修改tracker.conf配置文件

[root@bogon FastDFS]# vim /etc/fdfs/tracker.conf

3> 创建base_path指定的目录

[root@bogon FastDFS]# mkdir -p /fastdfs/tracker

4> 防火墙中打开tracker服务器端口( 默认为 22122)

添加如下端口行:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22122 -j ACCEPT

[root@bogon FastDFS]# vi /etc/sysconfig/iptables

一定要把添加的端口放到

这两行前面,不然启动防火墙不起作用。

重启防火墙:

[root@bogon FastDFS]# service iptables restart

5> 启动tracker服务器

[root@bogon FastDFS]# /etc/init.d/fdfs_trackerd start

此时报错找不到启动文件:

因为FastDFS服务脚本设置的bin目录为/usr/local/bin/下,但是实际我们安装在了/usr/bin/下面。所以我们需要修改FastDFS配置文件中的路径,也就是需要修改配置文件:

[root@bogon FastDFS]# vim /etc/init.d/fdfs_trackerd

将里面/usr/local/bin/全部改成/usr/bin/

再次启动:

[root@bogon FastDFS]# /etc/init.d/fdfs_trackerd start

检查FastDFS Tracker Server是否启动成功:

[root@bogon FastDFS]# ps -ef | grep fdfs_trackerd

6> 停止tracker服务器

[root@bogon FastDFS]# /etc/init.d/fdfs_trackerd stop

7> 设置tracker服务开机启动

[root@bogon FastDFS]# chkconfig fdfs_trackerd on

三、配置存储节点

说明:每个节点执行相同的操作

1> 复制storage样例配置文件,并重命名

[root@bogon FastDFS]# cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf

2> 编辑配置文件

[root@bogon FastDFS]# vi /etc/fdfs/storage.conf

1
2
3
4
5
6
7
8
9
10
11
12
shell> vi /etc/fdfs/storage.conf
 
# 修改的内容如下:
disabled=false                      # 启用配置文件
port=23000                          # storage服务端口
group_name=group1                   # 组名(第一组为group1,第二组为group2,依次类推...)
base_path=/fastdfs/storage          # 数据和日志文件存储根目录
store_path0=/fastdfs/storage        # 第一个存储目录,第二个存储目录起名为:store_path1=xxx,其它存储目录名依次类推...
store_path_count=1                  # 存储路径个数,需要和store_path个数匹配
tracker_server=192.168.0.200:22122  # tracker服务器IP和端口
tracker_server=192.168.0.201:22122  # tracker服务器IP和端口
http.server_port=8888               # http访问文件的端口

其它参数保留默认配置, 具体配置解释可参考官方文档说明:http://bbs.chinaunix.net/thread-1941456-1-1.html

3> 创建基础数据目录

[root@bogon FastDFS]# mkdir -p /fastdfs/storage

4> 防火墙中打开storage服务器端口( 默认为 23000)

[root@bogon FastDFS]# vi /etc/sysconfig/iptables

添加如下端口行:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 23000 -j ACCEPT

重启防火墙:

[root@bogon FastDFS]# service iptables restart

5> 启动storage服务器

[root@bogon FastDFS]# /etc/init.d/fdfs_storaged start

 

[root@bogon FastDFS]# vim /etc/init.d/fdfs_storaged

检查FastDFS Tracker Server是否启动成功:

[root@bogon FastDFS]# ps -ef | grep fdfs_storage

各节点启动后,使用tail -f /fastdfs/storage/logs/storaged.log命令监听存储节点的日志,可以看到存储节点链接到跟踪服务器,并提示哪一个为leader跟踪服务器,同时也能看到同一组中其它节点加入进来的日志信息。

所有存储节点都启动之后,可以在任一存储节点上使用如下命令查看集群的状态信息:

命令:/usr/bin/fdfs_monitor /etc/fdfs/storage.conf

6> 停止storage服务器

[root@bogon FastDFS]# /etc/init.d/fdfs_storaged stop

7> 设置storage服务开机启动

[root@bogon FastDFS]# chkconfig fdfs_storaged on

四、文件上传测试

1> 修改tracker服务器client.conf配置文件

[root@bogon FastDFS]# cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
[root@bogon FastDFS]# vi /etc/fdfs/client.conf

[root@bogon FastDFS]# /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/src/FastDFS_v5.05.tar.gz

此时报错了,检查了好久发现是需要从其linux服务器。

上传成功返回值:

group1/M00/00/00/wKh2gVoW4OaAaPcZAAVFOL7FJU4.tar.gz

(从返回的ID号中也可以看出,同一个文件分别存储在两个组内group1和group2,但也有可能在同一组中,具体策略是由FastDFS根据服务器的存储情况来分配的)

本次实例只安装了一个group

五、存储节点安装Nginx和fastdfs-nginx-module模块

安装Nginx

需要安装三个依赖:

下载模块依赖性Nginx需要依赖下面3个包
1.gzip 模块需要 zlib 库 ( 下载: http://www.zlib.net/ )
2.rewrite 模块需要 pcre 库 ( 下载: http://www.pcre.org/ )
3.ssl 功能需要 openssl 库 ( 下载: http://www.openssl.org/ )

依赖包安装顺序依次为:openssl、zlib、pcre, 然后安装Nginx包

openssl :

[root@bogon src]# tar zxvf openssl-fips-2.0.16.tar.gz

[root@bogon src]# cd openssl-fips-2.0.16

[root@bogon src]# ./config && make && make install

pcre:

[root@localhost] tar zxvf pcre-8.36.tar.gz

[root@localhost] cd pcre-8.36

[root@localhost]  ./configure && make && make install

zlib:

[root@localhost]tar zxvf zlib-1.2.8.tar.gz

[root@localhost] cd zlib-1.2.8

[root@localhost]  ./configure && make && make install

最后安装nginx

[root@localhost]tar zxvf nginx-1.8.0.tar.gz

[root@bogon src]# tar zxvf fastdfs-nginx-module_v1.16.tar.gz

[root@localhost] cd nginx-1.8.0

[root@bogon nginx-1.8.1]# ./configure --prefix=/usr/local/nginx --add-module=/usr/local/src/fastdfs-nginx-module/src

[root@bogon nginx-1.8.1]# make && install

此时报错需要添加软连接:

cd fastdfs-nginx-module/src

vi config

去掉/local  
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"

软连接
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 

ln -s /lib64/libpcre.so.0.0.1 /lib64/libpcre.so.1

[root@bogon nginx-1.8.1]# ./configure --prefix=/usr/local/nginx --add-module=/usr/local/src/fastdfs-nginx-module/src

[root@bogon nginx-1.8.1]# make && install

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

[root@bogon nginx-1.8.1]# cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
[root@bogon nginx-1.8.1]# vi /etc/fdfs/mod_fastdfs.conf

4> 复制FastDFS源文件目录中HTTP相关的配置文件到/etc/fdfs目录

[root@bogon nginx-1.8.1]# cd /usr/local/src/FastDFS/conf
[root@bogon conf]# cp http.conf mime.types /etc/fdfs/

5> 创建数据存放目录的软链接

[root@bogon conf]# ln -s /fastdfs/storage/data/ /fastdfs/storage/data/M00

6> 配置fastdfs-nginx-module(Nginx简洁版样例)

[root@bogon conf]# vi /usr/local/nginx/conf/nginx.conf

注意:
A、8888 端口值要与/etc/fdfs/storage.conf 中的 http.server_port=8888 相对应,因为 http.server_port 默认为 8888,如果想改成 80,则要对应修改过来。
B、Storage 对应有多个 group 的情况下,访问路径带 group 名,如:http://xxxx/group1/M00/00/00/xxx, 对应的 Nginx 配置为:

7> 防火墙中打开Nginx的 8888 端口

[root@bogon conf]# vi /etc/sysconfig/iptables

[root@bogon conf]# service iptables restart

8> 启动Nginx

[root@bogon conf]# /usr/local/nginx/sbin/nginx

启动成功

重启 Nginx 的命令为:/usr/local/nginx/sbin/nginx -s reload

设置Nginx开机启动:

[root@bogon conf]# vi /etc/rc.local

[root@bogon conf]# chmod +x /etc/rc.local

http://192.168.1.202:8888/group1/M00/00/00/wKgBh1Xtr9-AeTfWAAVFOL7FJU4.tar.gz

原文地址:https://www.cnblogs.com/lkzp123456/p/7884069.html