正文
07 部署fastDFS文件数据库
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
安装fastDFS前必须准备好两个版本匹配的文件:
libfastcommon_V1.0.7.tar.gz:基础库文件
FastDFS_V5.05.tar.gz:文件数据库文件
注:这两个文件版本要匹配,不然,安装要报错!
1 安装
1.1 安装libfastcommon
把libfastcommon拷贝到服务器/srv目录下:
$ tar -xzvf libfastcommon_V1.0.7.tar.gz $ cd libfastcommon-1.0.7 $ ./make.sh $ ./make.sh install
1.2 安装fastDFS
把fastDFS拷贝到服务器/srv目录下
$ cd /srv $ tar -xzvf FastDFS_V5.05.tar.gz $ cd fastdfs-5.05 $ sudo ./make.sh $ sudo ./make.sh install
2 目录设置
创建四个目录,分别用于存储跟踪服务器,存储服务器,客户端服务器,HTTP服务器。
$ mkdir -p /opt/fdfs/tracker $ mkdir -p /opt/fdfs/storage $ mkdir -p /opt/fdfs/client $ mkdir -p /opt/fdfs/httppic
3 配置跟踪服务器
$ cd /etc/fdfs $ cp tracker.conf.sample tracker.conf $ vi tracker.conf
修改base_path=/opt/fdfs/tracker
4 配置存储服务器
$ cp storage.conf.sample storage.conf $ vi storage.conf
4.1 修改存储路服务器基础径.
base_path=/opt/fdfs/storage
4.2 修改存储路径
store_path0=/opt/fdfs/storage
4.3 修改跟踪服务器IP
如果要实现远程访问,跟踪服务器IP必须设置为公网IP
由于fastDFS默认支持32位ubuntu,而实际上我们使用的却是64位ubuntu.因此,要设置一个环境变量,不然,找不到fastDFS需要的文件。
$ export LD_LIBRARY_PATH=/usr/lib64/ $ /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf $ /usr/bin/fdfs_storaged /etc/fdfs/storage.conf $ netstat -unltp|grep fdfs
5 配置客户端服务器
$ cp client.conf.sample client.conf $ vi client.conf
5.1 修改客户端存储路径
base_path=/opt/fdfs/client
5.2 修改跟踪服务器路径
如果要实现外网访问,跟踪服务器的IP必须设置为公网IP
5.3 修改http.conf头文件
前面有两个#,去掉其中一个。
6 配置HTTP服务器
$ cp /srv/fastdfs-5.05/conf/http.conf /etc/fdfs/http.conf $ vi http.conf
修改图片路径:/opt/fdfs/httppic
7 设置环境变量和软链接
在32位ubuntu中,libfastcommon会安装在/usr/lib 中,64位系统则安装在 /usr/lib64 中。依次执行以下命令:(根据自己的操作系统选择路径)
$ export LD_LIBRARY_PATH=/usr/lib64/ $ ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
8 启动fastDFS
$ ps -aux | grep fdfs # 如果没启动,则执行: $ export LD_LIBRARY_PATH=/usr/lib64/ $ /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf $ /usr/bin/fdfs_storaged /etc/fdfs/storage.conf $ netstat -unltp|grep fdfs
测试Tracker和Storage服务通信
$ /usr/bin/fdfs_monitor /etc/fdfs/storage.conf
上传文件
$ cd /srv $ fdfs_test /etc/fdfs/client.conf upload /srv/1.jpg
在服务器上用浏览器访问以上IP,可以看到上传的文件内容。但此时不能远程访问。如果要远程访问,需要安装nginx web服务器。