目录
1.1 准备
操作环境CentOS 6.4
将所有的下载文件到放到package包下,统一管理
1.2 下载安装 libfastcommon
1.下载libfastcommon
# wget https://github.com/happyfish100/libfastcommon/archive/V1.0.38.tar.gz
2.解压文件
# tar -zxvf V1.0.38.tar.gz
# cd libfastcommon-1.0.38
3.编译安装
# ./make.sh
# ./make.sh install
4.编译通过后,libfastcommon.so安装到了/usr/lib64下,在32位中会安装在/usr/lib/中,在64位会在/usr/lib64/
5.创建软链接,因为FastDFS主程序设置的lib目录是/usr/local/lib,所以需要我们创建软链接
# 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
1.3 下载安装FastDFS
1 下载FastDFS
# wget https://github.com/happyfish100/fastdfs/archive/V5.11.tar.gz
2 解压
# tar -zxvf V5.11.tar.gz
# cd fastdfs-5.11
3 编译安装
# ./make.sh
# ./make.sh install
4 默认安装目录
服务脚本:cd /etc/init.d目录
/etc/init.d/fdfs_storaged
/etc/init.d/fdfs_tracker
配置文件: cd /etc/fdfs,有四个.sample后缀的文件(自动生成的fdfs模板配置文件)
/etc/fdfs/client.conf.sample
/etc/fdfs/storage.conf.sample
/etc/fdfs/storage_ids.conf.sample
/etc/fdfs/tracker.conf.sample
命令脚本:
fdfs_appender_test
fdfs_appender_test1
fdfs_append_file
fdfs_crc32
fdfs_delete_file
fdfs_download_file
fdfs_file_info
fdfs_monitor
fdfs_storaged
fdfs_test
fdfs_test1
fdfs_trackerd
fdfs_upload_appender
fdfs_upload_file
stop.sh
restart.sh
也可以查看可执行命令:ls -la /usr/bin/fdfs*
-rwxr-xr-x. 1 root root 317480 10月 9 09:48 /usr/bin/fdfs_appender_test
-rwxr-xr-x. 1 root root 317256 10月 9 09:48 /usr/bin/fdfs_appender_test1
-rwxr-xr-x. 1 root root 304104 10月 9 09:48 /usr/bin/fdfs_append_file
-rwxr-xr-x. 1 root root 303808 10月 9 09:48 /usr/bin/fdfs_crc32
-rwxr-xr-x. 1 root root 304144 10月 9 09:48 /usr/bin/fdfs_delete_file
-rwxr-xr-x. 1 root root 304904 10月 9 09:48 /usr/bin/fdfs_download_file
-rwxr-xr-x. 1 root root 304496 10月 9 09:48 /usr/bin/fdfs_file_info
-rwxr-xr-x. 1 root root 322400 10月 9 09:48 /usr/bin/fdfs_monitor
-rwxr-xr-x. 1 root root 1111520 10月 9 09:48 /usr/bin/fdfs_storaged
-rwxr-xr-x. 1 root root 327384 10月 9 09:48 /usr/bin/fdfs_test
-rwxr-xr-x. 1 root root 326592 10月 9 09:48 /usr/bin/fdfs_test1
-rwxr-xr-x. 1 root root 453848 10月 9 09:48 /usr/bin/fdfs_trackerd
-rwxr-xr-x. 1 root root 305096 10月 9 09:48 /usr/bin/fdfs_upload_appender
-rwxr-xr-x. 1 root root 306120 10月 9 09:48 /usr/bin/fdfs_upload_file
5 设置脚本软链接
FastDFS 服务脚本设置的 bin 目录是 /usr/local/bin, 但实际命令安装在 /usr/bin/ 下
可以通过建立 /usr/bin 到 /usr/local/bin 的软链接
# ln -s /usr/bin/fdfs_trackerd /usr/local/bin
# ln -s /usr/bin/fdfs_storaged /usr/local/bin
# ln -s /usr/bin/stop.sh /usr/local/bin
# ln -s /usr/bin/restart.sh /usr/local/bin
1.4 配置Tracker服务
1、进入/etc/fdfs目录,通过cp命令复制tracker.conf.sample,重命名为:tracker.con(删除.sample后缀),作为正式文件
# cd /etc/fdfs/
# cp tracker.conf.sample tracker.conf
# vi tracker.conf
2、编辑tracker.conf:vi tracker.conf,修改相关参数(只需要修改: base_path 和 http.server_port 即可)
# 提供服务的端口,默认:22122
port=22122
# Tracker 存储data和log的根路径,根目录必须存在,子目录会自动创建
base_path=/home/lyy/fastdfs
# http端口,需要和nginx相同
http.server_port=80
3、创建tracker基础数据目录,即base_path对应的目录
mkdir -p /home/lyy/fastdfs
4、开放 22122 端口
# vi /etc/sysconfig/iptables
添加如下端口行:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22122 -j ACCEPT
重启防火墙:
# service iptables restart
5、启动tracker(支持start|stop|restart):
可以用这种方式启动
# /etc/init.d/fdfs_trackerd start
也可以用这种方式启动,前提是上面创建了软链接
# service fdfs_trackerd start
成功启动后,会在 /home/lyy/fastdfs(配置的base_path)下创建 data、logs 两个目录。
6 、查看启动日志
进入刚刚指定的base_path(/home/lyy/fastdfs)中有个logs目录,查看tracker.log文件
7、查看端口情况
netstat -apn|grep fdfs
如果22122端口正在被监听,则Tracker服务安装成功,如下图所示:
Tracker 关闭命令:service fdfs_trackerd stop
8、设置Tracker开机启动
# chkconfig fdfs_trackerd on
或者:
# vi /etc/rc.d/rc.local
加入配置:
/etc/init.d/fdfs_trackerd start
1.5 配置Storage服务
1、进入/etc/fdfs目录,有cp命令拷贝storage.conf.sample,重命名为 storage.conf(删除.sample)后缀作为正式文件
# cd /etc/fdfs/
# cp storage.conf.sample storage.conf
# vi storage.conf
2、编辑storage.conf,修改相关参数(base_path、store_path0、tracker_server、http.server_port)
# 配置文件是否不生效,false 为生效
disabled=false
# 指定此 storage server 所在 组(卷)
group_name=group1
# storage server 服务端口,storge默认23000
port=23000
# 心跳间隔时间,单位为秒 (这里是指主动向 tracker server 发送心跳)
heart_beat_interval=30
# 存储路径个数,需要和store_path个数匹配
store_path_count=1
# storage存储data和log的跟路径,必须提前创建好
base_path=/home/lyy/storage/fastdfs
# 如果为空,则使用base_path
store_path0=/home/lyy/storage/file
#如果本参数只为 N(如: 256),那么 storage server 在初次运行时,会在 store_path 下自动创建 N * N 个存放文件的子目录
subdir_count_per_path=256
# 配置该storage监听的tracker的ip和port
#有多个 tracker server 时,每个 tracker server 写一行
tracker_server=192.168.50.198:22122
# 允许系统同步的时间段 (默认是全天) 。一般用于避免高峰同步产生一些问题而设定。
sync_start_time=00:00
sync_end_time=23:59
#访问端口
http.server_port=80
3、创建Storage基础数据目录,对应base_path目录
# mkdir -p /home/lyy/storage/fastdfs
# 这是配置的store_path0路径
# mkdir -p /home/lyy/storage/file
4、启动 Storage
可以用这种方式启动
# /etc/init.d/fdfs_storaged start
也可以用这种方式,我这里用的是这种
# service fdfs_storaged start
5、查看Storage启动日志
查看storage启动日志:进入刚刚指定的base_path(/home/lyy/storage/fastdfs)中有个logs目录,查看storage.log文件
6、查看端口情况:netstat -apn|grep fdfs
关闭Storage命令:service fdfs_storaged stop
重新启动Storage命令:service fdfs_storaged restart
7、通过monitor来查看storage是否成功绑定,查看storage和Tracker是否通信成功
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
8、设置 Storage 开机启动
# chkconfig fdfs_storaged on
或者:
# vi /etc/rc.d/rc.local
加入配置:
/etc/init.d/fdfs_storaged start
9、Storage 目录
在 Tracker和Storage 启动成功后,在base_path(/home/lyy/storage/file) 下创建了data、logs目录,记录 Storage Server 的信息。
在 store_path0 目录下,创建了N*N个子目录: