centos安装FastDFS+Nginx

一、在安装FastDFS之前必须先安装libevent,安装libevent步骤如下:

1.下载libevent:

wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
2.解压libevent:

tar -zxvpf libevent-2.0.21-stable.tar.gz

3.进入解压目录:

cd libevent-2.0.21-stable

4.指定安装目录:

./configure --prefix=/usr/local/libevent-2.0.21

5.安装libevent:

make

make install

二、安装FastDFS步骤如下:

1.下载FastDFS:

wget http://fastdfs.googlecode.com/files/FastDFS_v4.06.tar.gz

2.解压FastDFS:

tar xvf FastDFS_v4.06.tar.gz

3.进入解压目录:

cd FastDFS
4.修改FastDFS的安装文件:

vi make.sh

TARGET_PREFIX=/usr/local/FastDFS  ---安装路径  

TARGET_CONF_PATH=/etc/fdfs  ---配置文件路径  

WITH_LINUX_SERVICE=1   ---是否为linux服务  

5.指定libevent的lib目录:

./make.sh C_INCLUDE_PATH=/usr/local/libevent-2.0.21/include LIBRARY_PATH=/usr/local/libevent-2.0.21/lib
6.安装FastDFS:

./make.sh install

7.设置软连接(否则编译nginx时会出错)
ln -sv /usr/local/FastDFS/include/fastcommon /usr/local/include/fastcommon
ln -sv /usr/local/FastDFS/include/fastdfs /usr/local/include/fastdfs
ln -sv /usr/local/FastDFS/lib/libfastcommon.so /usr/local/lib/libfastcommon.so
ln -sv /usr/local/FastDFS/lib/libfastcommon.so.1 /usr/local/lib/libfastcommon.so.1
ln -sv /usr/local/FastDFS/lib/libfdfsclient.so /usr/local/lib/libfdfsclient.so
ln -sv /usr/local/FastDFS/lib/libfdfsclient.so.1 /usr/local/lib/libfdfsclient.so.1

三、在安装Nginx之前,需要安装gcc、 openssl-devel、 pcre-devel和zlib-devel软件库,具体如下:

yum install gcc-c++

yum install openssl-devel

yum install pcre-devel

yum install zlib-devel

四、安装Nginx和fastdfs-nginx-module

wget http://nginx.org/download/nginx-1.6.0.tar.gz

wget http://fastdfs.googlecode.com/files/fastdfs-nginx-module_v1.15.tar.gz

将安装包文件上传到/usr/local中执行以下操作:

1.进入文件目录:

cd /usr/local

2.解压安装包:

tar -zxv -f nginx-1.6.0.tar.gz

tar -xvf fastdfs-nginx-module_v1.15.tar.gz

3.修改安装包目录名称:

mv nginx-1.6.0 nginx

4.进入安装包目录:

cd /usr/local/nginx

5.配置安装目录:

./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.conf  --add-module=/usr/local/fastdfs-nginx-module/src
6.安装Nginx:

make
make install

7.修改防火墙:

vi + /etc/sysconfig/iptables

8.添加配置项
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

9.重启防火墙:

service iptables restart

 10.将libfastcommon.so、libfastcommon.so.1、libfdfsclient.so、libfdfsclient.so.1复制到/usr/lib,

否则nginx启动会报错。

Nginx的操作:

启动:

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
或者

cd /usr/local/nginx/sbin
./nginx

停止服务:

#查询nginx主进程号
ps -ef | grep nginx
#停止进程
kill -QUIT 主进程号
#快速停止
kill -TERM 主进程号
#强制停止
pkill -9 nginx

重启:

/usr/local/nginx/sbin/nginx -s reload

五、配置tracker server:

1. vi /etc/fdfs/tracker.conf
bind_addr=192.168.227.128
base_path=/home/tracker/fastdfs

2.配置防火墙:

iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 22122 -j

3.保存配置:

/etc/init.d/iptables save
4. 启动 tracker
/usr/local/FastDFS/bin/fdfs_trackerd /etc/fdfs/tracker.conf

在启动时报错:

/usr/local/bin/fdfs_trackerd: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory

执行下面的命令即可正常启动:

echo '/usr/local/libevent-2.0.21/include/' >> /etc/ld.so.conf
echo '/usr/local/libevent-2.0.21/lib/' >> /etc/ld.so.conf
 ldconfig
5. 查看监听程序:

netstat -ntpl | grep fdfs

6. 查看日志文件:

cat /home/tracker/fastdfs/logs/trackerd.log
7.添加开机启动命令行:

vim /etc/rc.d/rc.local
/usr/local/FastDFS/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

六、配置storage server
1. vi /etc/fdfs/storage.conf
group_name=group1
bind_addr=192.168.227.130
base_path=/home/storage/fastdfs
store_path0=/home/storage/fastdfs
tracker_server=192.168.227.130:22122
http.server.port=80

2. cp /usr/local/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

3. vi /etc/fdfs/mod_fastdfs.conf
base_path=/home/storage1/fastdfs
group_name=group1

store_path0=/home/stroage1/fastdfs

tracker_server=192.168.227.128:22122

url_have_group_name = true
group_count = 0

4. vi /usr/local/nginx/conf/nginx.conf
   location /group1/M00 {
            root /home/storage1/fastdfs/data;
            ngx_fastdfs_module;
}

5.配置防火墙:

iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 23000 -j ACCEPT

6.保存配置:

/etc/init.d/iptables save

7.启动 storage  
/usr/local/FastDFS/bin/fdfs_storaged /etc/fdfs/storage.conf

8. 查看监听程序:

netstat -ntpl | grep fdfs

9. 查看日志文件:

cat /home/storage/fastdfs/logs/storaged.log

七、测试:

 /usr/local/FastDFS/bin/fdfs_test /etc/fdfs/client.conf upload /etc/passwd
结果如下:

This is FastDFS client test program v4.06

Copyright (C) 2008, Happy Fish / YuQing

FastDFS may be copied only under the terms of the GNU General
Public License V3, which may be found in the FastDFS source kit.
Please visit the FastDFS Home Page http://www.csource.org/
for more detail.

[2014-06-03 20:26:21] DEBUG - base_path=/home/client/fastdfs, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0

tracker_query_storage_store_list_without_group:
 server 1. group_name=, ip_addr=192.168.227.130, port=23000

group_name=group1, ip_addr=192.168.227.130, port=23000
storage_upload_by_filename
group_name=group1, remote_filename=M00/00/00/wKjjglOOkd2AdZiiAAAFng0Nczs9728851
source ip address: 192.168.227.130
file timestamp=2014-06-03 20:26:21
file size=1438
file crc32=218985275
file url: http://192.168.227.130/group1/M00/00/00/wKjjglOOkd2AdZiiAAAFng0Nczs9728851
storage_upload_slave_by_filename
group_name=group1, remote_filename=M00/00/00/wKjjglOOkd2AdZiiAAAFng0Nczs9728851_big
source ip address: 192.168.227.130
file timestamp=2014-06-03 20:26:21
file size=1438
file crc32=218985275
file url: http://192.168.227.130/group1/M00/00/00/wKjjglOOkd2AdZiiAAAFng0Nczs9728851_big
 

在浏览器上打开http://192.168.227.130/group1/M00/00/00/wKjjglOOkd2AdZiiAAAFng0Nczs9728851_big

测试成功!!!

参考:http://www.cnblogs.com/zhoulf/archive/2013/02/09/2909653.html

            http://blog.csdn.net/yl_wh/article/details/8784569

猜你喜欢

转载自blog.csdn.net/gaofuqi/article/details/27052155
今日推荐