最近项目涉及到图片相关的业务,因为是分布式系统,所以很自然地联想到FastDFS文件系统。不得不说,这是我见过的最恶心的,最麻烦的配置了,没有之一。当然FastDFS还是有诸多优点的,要不然也不会这么流行。。
接下来,上正菜,首先准备两个机器节点,一个安装tracker服务,另外一个安装strorage服务。当然还可以多准备一个节点,用来安装client服务。
-
libfastcommon的安装
1.在linux上安装gcc(如果你安装的linux有图形界面,可以跳过此步骤)
yum install make cmake gcc gcc-c++
2.解压libfastcommon-master.zip到/usr/local/fast目录下
unzip libfastcommon-master.zip -d /usr/local/fast/
3.进入libfastcommon的安装目录可以看到make.sh脚本文件,执行编译安装
./make.sh
./make.sh install
4.查看安装过程的日志
可以看到默认安装到了/usr/lib64/ 这个目录下了
5.创建相关软连接
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 -
FastDFS的安装
解压FastDFS_v5.05.tar.gz到/usr/local/fast/目录下
tar -zxvf FastDFS_v5.05.tar.gz -C /usr/local/fast/
进入FastDFS的安装目录
编译: ./make.sh
安装: ./make.sh install
观察一下它安装过程的日志
可以看到FastDFS的命令都放在了/usr/bin/目录下,有关的配置文件都放到/etc/fdfs/目录下
FastDFS服务脚本的位置:/etc/init.d/
骚年,如果你连简单的shell都不能看懂的话,再修炼修炼吧。
最后:正如我们看到的有关FastDFS的命令是放在了/usr/bin/目录下面,而服务脚本中设置的目录位/usr/local/bin/目录,所以我们需要把它替换成/usr/bin/
命令:vim /etc/init.d/fdfs_storaged
进行全局替换:%s+/usr/local/bin+/usr/bin
命令:vim /etc/init.d/fdfs_trackerd
进行全局替换:%s+/usr/local/bin+/usr/bin
以上步骤既要在trakcer节点进行,也要在storage节点进行
tracker节点的配置
进入/etc/fdfs/目录下可以看到若干个配置文件,复制tracker的配置文件
cp tracker.conf.sample tracker.conf
修改tracker.conf的base_path的值改为自己的目录(前提这个目录必须存在)
然后就能启动tracker节点的服务了。
启动命令:/etc/init.d/fdfs_trackerd start
停止命令:/etc/init.d/fdfs_trackerd stop
骚年,去看一下它的服务启动脚本怎么写的吧,当然你要会Linux下shell编程。storage节点的配置
进入/etc/fdfs/目录下可以看到若干个配置文件,复制storage的配置文件
cp storage.conf.sample storage.conf
修改storage.conf的base_path、store_path、tracker_server、http.server_port的值
然后就能启动storage节点的服务了。
启动命令:/etc/init.d/fdfs_storaged start
停止命令:/etc/init.d/fdfs_storaged stop