设为首页 收藏本站
查看: 1405|回复: 0

[经验分享] CentOS 下 FastDFS _ V4.06 安装部署

[复制链接]

尚未签到

发表于 2019-1-31 14:29:51 | 显示全部楼层 |阅读模式
  CentOS 下 FastDFS _ V4.06 安装部署
  

  CentOS系统64位x86_64 GNU/Linux
  

  软件准备
  libevent-1.4.14b-stable.tar.gz
  FastDFS_v4.06.tar.gz
nginx-1.3.9.tar.gz  
fastdfs-nginx-module_v1.15.tar.gz


安装libevent


下载并安装
#cd /usr/src
wget https://github.com/downloads/libevent/libevent/libevent-1.4.14b-stable.tar.gz
#tar zxvf libevent-1.4.14b-stable.tar.gz
# cd libevent-1.4.14b-stable
# ./configure --prefix=/usr
# make && make install



安装FastDFS
这里我们选择的FDFS新版本,这里的FASTDFS 本身没有了http server的功能。
#cd /usr/src
#wget http://fastdfs.googlecode.com/files/FastDFS_v4.06.tar.gz
#tar zxvf  FastDFS_v4.06.tar.gz
# cd FastDFS/
由于一些库文件的存放位置,和编译脚本中的不一致,需要根据系统的实际情况进行调整。
#vi make.sh
查找:
if [ -f /usr/lib/libpthread.so ] || [ -f /usr/local/lib/libpthread.so ] || [ -f /lib64/libpthread.so ] || [ -f /usr/lib64/libpthread.so ] || [ -f /usr/lib/libpthread.a ] || [ -f /usr/local/lib/libpthread.a ] || [ -
f /lib64/libpthread.a ] || [ -f /usr/lib64/libpthread.a ] ;then
保存退出

#vi /usr/src/FastDFS/client/fdfs_link_library.sh.in (64 bit 需要修改)
查找:
ln -fs $TARGET_LIB/libfastcommon.so.1 /usr/lib64/libfastcommon.so
ln -fs $TARGET_LIB/libfdfsclient.so.1 /usr/lib64/libfdfsclient.so
保存退出

./make.sh
./make.sh install
#cp  init.d/* /etc/init.d/



配置tracker server
安装完成后,在默认
cd /etc/fdfs下
#vi tracker.conf
port=22122
base_path=/www/book_tracker
保存退出
#mkdir /www/book_tracker
# /etc/init.d/fdfs_trackerd start
#启动过程中出现的错误(成功安装libevent 就不会出现这个问题)
#./fdfs_trackerd: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory
#解决办法
ln -s /usr/lib/libevent-1.4.so.2 /usr/lib64/libevent-1.4.so.2

/usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf
检查tracker server
#netstat -antpul |grep 22122
tcp    0      0 0.0.0.0:22122       0.0.0.0:*     LISTEN      23275/fdfs_trackerd



配置及启动Storage Server
mkdir -p /www/book_storage
#/www/book_storage
#vi /etc/fdfs/storage.conf
# port=23000
base_path=/www/book_storage
#base_path,指定data和log所在目录,根目录必须存在,子目录会自动创建
store_path0=/www/book_storage
#文件的存储位置,在一台Storage Server上可以指定多个存储位置
group_name=group1
tracker_server=192.168.0.22:22122  #tracker_server 的ip
保存退出
启动storage server
#/etc/init.d/fdfs_storaged  start
#netstat -antpul |grep 23000 查看进程。
可以查看相关日志排错
#tail -f /www/book_storage/logs/storaged.log
验证验证上传下载
首先配置好客户端
#mkdir /www/book_client
#base_path=/www/book_client
tracker_server=192.168.0.22:22122
保存设置

测试上传
fdfs_test /etc/fdfs/client.conf upload /etc/fstab
This is FastDFS client test program v4.06
FastDFS may be copied only under the terms of the GNU General
Public License V3, which may be found in the FastDFS source kit.
Please visit the FastDFS Home Page http://www.csource.org/
for more detail.

[2013-06-03 15:45:41] DEBUG - base_path=/www/book_client, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0

tracker_query_storage_store_list_without_group:
        server 1. group_name=, ip_addr=192.168.0.22, port=23000
group_name=group1, ip_addr=192.168.0.22, port=23000
storage_upload_by_filename
group_name=group1, remote_filename=M00/00/00/AQEBjFGsSaWAOjeUAAAD9M32Tdg9524157
source ip address: 192.168.0.22
file timestamp=2013-06-03 15:45:41
file size=1012
file crc32=3455471064
file url: http://192.168.0.22/group1/M00/00/00/AQEBjFGsSaWAOjeUAAAD9M32Tdg9524157
storage_upload_slave_by_filename
group_name=group1, remote_filename=M00/00/00/AQEBjFGsSaWAOjeUAAAD9M32Tdg9524157_big
source ip address: 192.168.0.22
file timestamp=2013-06-03 15:45:42
file size=1012
file crc32=3455471064
file url: http://192.168.0.22/group1/M00/00/00/AQEBjFGsSaWAOjeUAAAD9M32Tdg9524157_big
下载
#cd /usr/src
查看
# fdfs_file_info /etc/fdfs/client.conf group1/M00/00/00/AQEBjFGsSaWAOjeUAAAD9M32Tdg9524157_big
source storage id: 0
source ip address: 192.168.0.22
file create timestamp: 2013-06-03 15:45:42
file size: 1012
file crc32: 3455471064 (0xCDF64DD8)

# fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/AQEBjFGsSaWAOjeUAAAD9M32Tdg9524157_big
-rw-r--r-- 1 root root  1012 Jun  3 15:59 AQEBjFGsSaWAOjeUAAAD9M32Tdg9524157_big
删除
fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/AQEBjFGsSaWAOjeUAAAD9M32Tdg9524157_big
----------------------------------------------------------------------------------------
Fdfs 和 Nginx  的整合
因为FastDFS默认自带的http服务器性能不好,所以一般建议用外置的apache或者nginx来解决http下载,以应付大并发的情况.
#cd  /usr/src/
#wget http://fastdfs-nginx-module.googlecode.com/files/ fastdfs-nginx-module_v1.15.tar.gz
#wget http://nginx.org/download/nginx-1.3.9.tar.gz
#tar zxvf fastdfs-nginx-module_v1.15.tar.gz
#tar zxvf nginx-1.3.9.tar.gz
# cd nginx-1.3.9/
#./configure --prefix=/usr/local/nginx --with-http_gzip_static_module --add-module=/root/fastdfs-nginx-module/src/   

  

  安装Nginx时报错
  ./configure: error: the HTTP rewrite module requires the PCRE library.
  安装pcre-devel解决问题
  yum -y install pcre-devel
  错误提示:./configure: error: the HTTP cache module requires md5 functions
  from OpenSSL library.   You can either disable the module by using
  --without-http-cache option, or install the OpenSSL library into the system,
  or build the OpenSSL library statically from the source with nginx by using
  --with-http_ssl_module --with-openssl= options.
  解决办法:
  yum -y install openssl openssl-devel
   

#make && make install

修改相关配置文件
修改nginx扩展模块的配置文件
#cd ../root/fastdfs-nginx-module/src
#cp mod_fastdfs.conf /etc/fdfs/
#vi /etc/fdfs/mod_fastdfs.conf
base_path=/www/logs
#存放log的路径
tracker_server=192.168.0.22:22122
#指定tracker服务器及端口
url_have_group_name = true
#这个很重要,在URL中包含group名称
store_path0=/www/book_storage
#存储文件的路径
storage_server_port=23000
#与storage的配置端口保持一致
保存后退出


!!!!!查看/www/logs目录是否存在
做M00的链接
sudo ln -s /www/book_storage/data  /www/book_storage/data/M00
修改nginx的配置文件
#vim /usr/local/nginx/conf/nginx.conf
server {
        listen       8888;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;
    location / {
            root   /www/book_storage/data;
            index  index.html index.htm;
        }

     location /group1/M00 {
        root /www/book_storage/data;
            ngx_fastdfs_module;
        }
保存退出
#cp /usr/local/nginx/sbin/nginx /etc/init.d/nginx
#/etc/init.d/nginx -t
ngx_http_fastdfs_set pid=23580
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
检查配置文件语法
#/etc/init.d/nginx     ##启动nginx

检查端口

# lsof -i:8888
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   3770   root    6u  IPv4  11231      0t0  TCP *:8888 (LISTEN)
nginx   3771 nobody    6u  IPv4  11231      0t0  TCP *:8888 (LISTEN)

# netstat -antpul |grep tcp
tcp        0      0 0.0.0.0:22122           0.0.0.0:*               LISTEN      23275/fdfs_trackerd
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      22917/nginx     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2117/sshd      
tcp        0      0 0.0.0.0:23000           0.0.0.0:*               LISTEN      23325/fdfs_storaged
tcp        0      0 0.0.0.0:8888            0.0.0.0:*               LISTEN      22917/nginx     
tcp        0      0 192.168.0.22:22122         192.168.0.22:48515         ESTABLISHED 23275/fdfs_trackerd
tcp        0      0 192.168.0.22:22            1.1.1.24:1558           ESTABLISHED 16381/sshd: boo
tcp        0      0 192.168.0.22:48515         192.168.0.22:22122         ESTABLISHED 23325/fdfs_storaged
tcp6       0      0 :::22                   :::*                    LISTEN      2117/sshd
测试上传和下载

#fdfs_test /etc/fdfs/client.conf upload /etc/fstab
#cd /usr/src
#wget http://192.168.0.22:8888/group1/M00/00/00/AQEBjFGsVESARdlrAAAD9M32Tdg0763076_big
--2013-06-03 16:32:40--  http://192.168.0.22:8888/group1/M00/00/00/AQEBjFGsVESARdlrAAAD9M32Tdg0763076_big
Connecting to 192.168.0.22:8888... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1012
Saving to: `AQEBjFGsVESARdlrAAAD9M32Tdg0763076_big'

100%[======================================================================================>] 1,012       --.-K/s   in 0s


测试成功
         




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-670133-1-1.html 上篇帖子: 分布式文件系统fastDFS部署 下篇帖子: 分布式文件存储fastdfs
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表