FastDFS+Nginx+Module
1.安装libevent
wget https://cloud.github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
执行:
./configure --prefix=/usr
make
make install
2.安装 libfastcommon
wget https://codeload.github.com/happyfish100/libfastcommon/zip/master
执行:
unzip master.zip
./make.sh
./make.sh install
3.安装FastDFS
wget https://github.com/happyfish100/fastdfs/archive/master.zip -O fastdfs-master.zip
执行:
./make.sh
./make.sh install
修改配置文件
cd /etc/fdfs/
复制,然后配置:
cp client.conf.sample client.conf
cp tracker.conf.sample tracker.conf
cp storage.conf.sample storage.conf
配置storage.conf
注意:同一个组内的不同的storage的配置要相同(方便同步文件)
配置storage属于哪个group:
group_name=group1 (因为现在先只是配一个组,所以这里就为group1)
配置base_path:
原来 base_path=/data0/fastdfs-data 这里需要改为自己的文件路径,
如:base_path=/data0/fastdfs-data (这里的文件目录如果没有,要自己新建,
不然会报错)
配置store_path0:
这里 store_path0=/data0/fastdfs-data 也要改为自己的文件路径
如: store_path0=/data0/fastdfs-data (建议与bast_path一样)
配置tracker_server:
还有:tracker_server要改为自己的trakcer_server的ip
如:tracker_server=172.16.36.245:22122
(若有特殊要求可查看文档根据实际情况配置)
配置tracker.conf
配置base_path:
原来 base_path=/data0/fastdfs-data 这里需要改为自己的文件路径,
如:base_path=/data0/fastdfs-data (这里的文件目录如果没有,要自己新建,
不然会报错)
(若有特殊要求可查看文档根据实际情况配置)
配置client.conf
配置base_path:
原来 base_path=/data0/fastdfs-data这里需要改为自己的文件路径,
如:base_path=/data0/fastdfs-data (这里的文件目录如果没有,要自己新建,
不然会报错)
配置tracker_server:
还有:tracker_server要改为自己的trakcer_server的ip
如:tracker_server=172.16.36.245:22122
(若有特殊要求可查看文档根据实际情况配置)
启动服务程序
启动tracker server
/usr/bin/fdfs_trackerd/etc/fdfs/tracker.conf restart
(备注:停止tracker server /usr/bin/stop.sh /usr/bin/fdfs_trackerd
重启 tracker server /usr/bin/restart.sh /usr/bin/fdfs_trackered )
启动storage server
/usr/bin/fdfs_storaged/etc/fdfs/storage.conf restart
(备注:停止storage server /usr/bin/stop.sh /usr/bin/fdfs_storaged
重启storage server /usr/bin/restart.sh /usr/bin/fdfs_storaged
查看集群情况:
在任意一台storage(tracker也可以 ) /usr/bin/fdfs_monitor /etc/fdfs/storage.conf
)
启动测试程序
上传文件测试:
/usr/bin/fdfs_test /etc/fdfs/client.conf upload tff.jpeg
4.安装Nginx
需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc,需要执行的命令:yum install gcc-c++
wget http://nginx.org/download/nginx-1.12.1.tar.gz
安装openssl
安装SSL功能需要的openssl库插件
wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz
./config
make
make install
安装zlib-1.2.11.tar.xz
wget http://www.zlib.net/zlib-1.2.11.tar.gz
./configure
make
make install
安装 pcre-8.00.zip
Wget https://ftp.pcre.org/pub/pcre/pcre-8.00.tar.gz
./configure
make
make install
进入到nginx目录
./configure
make
makeinstall,
安装成功之后,默认会在/usr/local 下创建nginx 目录
安装nginx
wget http://nginx.org/download/nginx-1.12.1.tar.gz
tar zxvf nginx-1.12.1.tar.gz
Cd nginx-1.12.1
./configure
Make
Make install
验证安装: ps -ef | grep nginx
启动nginx: /usr/local/nginx/sbin/nginx
在网页中输入IP地址访问,如出现Welcome to nginx! 说明安装成功
停止nginx, /usr/local/nginx/sbin/nginx -s stop ,准备安装插件
准备插件fastdfs-nginx-module, 并配置mod_fastdfs.conf
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip -O fastdfs-nginx-module_master.zip
unzip fastdfs-nginx-module_master.zip
复制配置文件
Cp fvastdfs-nginx-module_master/src/mod_fastdfs.conf /etc/fdfs
Cp FastDFS/conf/http.conf /etc/fdfs
Cp FastDFS/conf/mime.conf /etc/fdfs
配置mod_fastdfs.conf
1.更改tracker_server的IP如:tracker_server=172.16.36.245:22122(可以配置多个)
2.更改store_path0这个要与storaged的配置一致,如: store_path0=/data0/fastdfs
安装nginx + fastdfs-nginx-module
Cd nginx-1.12.1
./configure --add-module=/data0/fastdfs-nginx-module-master/src/ --prefix=/usr/local/nginx
make
make install
配置nginx.conf文件
进入到/usr/local/nginx/conf/nginx.conf下
location /group1/M00{
root /data0/fastdfs/data;
ngx_fastdfs_module;
}
创建/M00软连接
命令:ln -s /data0/fastdfs-data/data/ /data0/fastdfs-data/data/M00
重新启动Nginx
/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx
其他命令:
lsof -i :port,使用lsof -i :port就能看见所指定端口运行的程序,同时还有当前连接。
停止fastdfs服务
/usr/bin/stop.sh /usr/bin/fdfs_trackerd
/usr/bin/stop.sh /usr/bin/fdfs_storaged
开启fastdfs服务
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
检查服务
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
ps -ef | grep fdfs? 查看nginx
ps -aux | grep fdfs
netstat -anp | grep fdfs
lsof -i :port,使用lsof -i :port就能看见所指定端口运行的程序,同时还有当前连接
停止nginx服务
/usr/local/nginx/sbin/nginx -s stop
启动nginx服务
/usr/local/nginx/sbin/nginx
上传
fdfs_test /etc/fdfs/client.conf upload ./
注意:
Storage版本不一致初步是可以集群的
结果:
168 : M00/00/00/CtP9qFl4aL6ALXdwARpsHw0AOZs960_big.mp4
169 : M00/00/00/CtP9qFl4as-AUaQhARpsHw0AOZs224_big.mp4
http://blog.csdn.net/xyang81/article/details/52928230 集群参考
端口说明
tracker.conf
# the tracker server port
port=22122
# HTTP port on this tracker server
http.server_port=8080
storage.conf
# the storage server port
port=23000
# the port of the web server on this storage server
http.server_port=8888
client.conf
#HTTP settings
http.tracker_server_port=80