环境: Centos x86_64 0.209 和 0.210 都为tracker 和 storage
192.168.0.209 storage tracker
192.168.0.210 storage tracker
0.209 和 0.210 安装配置类似, 下面以一台为例
一、 安装依赖包,添加fastDFS运行用户
yum install -y zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel perl unzip
mkdir -p /PPP/fastdfs/{storage,tracker}
[root@localhost fastdfs]# ll
total 8
drwxr-xr-x. 2 root root 4096 Dec 28 17:33 storage
drwxr-xr-x. 2 root root 4096 Dec 28 17:33 tracker
[root@localhost fastdfs]#
三、下载安装libfastcommon
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz
tar -zxvf V1.0.7.tar.gz
cd libfastcommon-1.0.7
./make.sh
./make.sh install
四、下载安装FastDFS
wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
tar-zxvf V5.05.tar.gz
cd fastdfs-5.05
./make.sh
./make.sh install
五、配置Tracker服务
cp tracker.conf.sample tracker.conf
vim tracker.conf
打开tracker.conf文件,只需要找到你只需要该这两个参数就可以了。
# the base path to store data and log files
base_path=/PPP/fastdfs/tracker
# HTTP port on this tracker server
http.server_port=80
当然前提是你要有或先创建了/data/fastdfs目录。port=22122这个端口参数不建议修改,除非你已经占用它了。
ln-s/usr/bin/fdfs_trackerd/usr/local/bin
ln-s/usr/bin/stop.sh/usr/local/bin
ln-s/usr/bin/restart.sh/usr/local/bin
这时候我们就可以使用service fdfs_trackerd start来启动 Tracker服务了。你也可以启动过服务看一下端口是否在监听,命令:
启动服务:service fdfs_trackerd start
查看监听:netstat-unltp|grep fdfs
看到22122端口正常被监听后,这时候就算 Tracker服务安装成功啦!
六、配置 Storage 服务开始配置,依然是进入/etc/fdfs的目录操作,首先进入它。会看到三个.sample后缀的文件,我们需要把其中的storage.conf.sample文件改为storage.conf配置文件并修改它。还看命令:
cp storage.conf.sample storage.conf
vim storage.conf
打开storage.conf文件后,找到这两个参数进行修改:
# the base path to store data and log files
base_path=/PPP/fastdfs/storage
# store_path#, based 0, if store_path0 not exists, it's value is base_path
# the paths must be exist
store_path0=/PPP/fastdfs/storage
#store_path1=/home/yuqing/fastdfs2
# tracker_server can ocur more than once, and tracker_server format is
# "host:port", host can be hostname or ip address
tracker_server=192.168.0.209:22122
tracker_server=192.168.0.210:22122
当然你的/data/fastdfs目录下要有storage文件夹,没有就创建一个,不然会报错的,日志以及文件都会在这个下面,启动时候会自动生成许多文件夹。stroage的port=23000这个端口参数也不建议修改,默认就好,除非你已经占用它了。
ln -s /usr/bin/fdfs_storaged /usr/local/bin
执行命令启动服务:
service fdfs_storaged start
注意:如果相对应的路径没有建立,此处会报错
netstat -unltp|grep fdfs
如果看到22122 和 23000端口都在监听了,这个时候你去/PPP/fastdfs/storage文件夹下看的话,会出现一大堆文件夹,而且进去还有一大堆,
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
看到我红线处ACTIVE这样就 ok 啦!
但还要配置client客户端,否则上传会不好用
cd /etc/fdfs
cp client.conf.sample client.conf
vim client.conf
修改配置
tracker_server=192.168.0.209:22122
tracker_server=192.168.0.210:22122
wget -c https://nginx.org/download/nginx-1.10.1.tar.gz
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip
unzip master.zip
tar -zxvf nginx-1.10.1.tar.gz
配置 nginx 安装,加入fastdfs-nginx-module模块。这是和普通 Nginx 安装不一样的地方,因为加载了模块。
./configure --add-module=../fastdfs-nginx-module-master/src/
注意:如果此处你没有安装gcc、 PCRE pcre-devel、 zlib、 OpenSSL这些,此处会报错make 编译 (make的过程是把各种语言写的源码文件,变成可执行文件和各种库文件)
make install 安装 (make install是把这些编译出来的可执行文件和库文件复制到合适的地方)
/usr/local/nginx/sbin/nginx -V
八、配置 fastdfs-nginx-module 和 Nginx
cd /software/fastdfs-nginx-module-master/src/
vim mod_fastdfs.conf
cp mod_fastdfs.conf /etc/fdfs
修改mod-fastdfs.conf配置只需要修改我标注的这三个地方就行了,其他不需要也不建议改变。
# FastDFS tracker_server can ocur more than once, and tracker_server format is
# "host:port", host can be hostname or ip address
# valid only when load_fdfs_parameters_from_tracker is true
tracker_server=192.168.0.209:22122
tracker_server=192.168.0.210:22122
# if the url / uri including the group name
# set to false when uri like /M00/00/00/xxx
# set to true when uri like ${group_name}/M00/00/00/xxx, such as group1/M00/xxx
# default value is false
url_have_group_name = true
# store_path#, based 0, if store_path0 not exists, it's value is base_path
# the paths must be exist
# must same as storage.conf
store_path0=/data/fastdfs/storage
#store_path1=/home/yuqing/fastdfs1
接着我们需要把fastdfs-5.05下面的配置中还没有存在/etc/fdfs中的拷贝进去
cd /software/fastdfs-5.05/conf
cp anti-steal.jpg http.conf mime.types /etc/fdfs/
2.配置 Nginx。编辑nginx.conf文件:
cd /usr/local/nginx/conf
vi nginx.conf
在配置文件中加入:
location /group1/M00 {
root /data/fastdfs/storage/;
ngx_fastdfs_module;
}
由于我们配置了group1/M00的访问,我们需要建立一个group1文件夹,并建立M00到data的软链接。
mkdir /PPP/fastdfs/storage/data/group1
ln -s /PPP/fastdfs/storage/data /PPP/fastdfs/storage/data/group1/M00
启动 Nginx ,会打印出fastdfs模块的pid,看看日志是否报错,正常不会报错的
/usr/local/nginx/sbin/nginx
注意:防火墙有没有开放端口号,如没有用如下命令:
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
重启防火墙,使设置生效:
service iptables restart
安装完成了。
210 的配置一样, nginx对应的ip为210, 启动nginx和fastdfs
cd /usr/bin
vim test.txt
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /usr/bin/test.txt
成功啦!!! 返回文件信息及上传后的文件 HTTP 地址,你打开浏览器访问一下试试
这样就算简单的搭建和使用完成!
参考地址:
http://blog.mayongfa.cn/192.html
https://my.oschina.net/harlanblog/blog/466487