fastdfs文件服务器的基本安装和配置

Lison , v1.0.0, 2019.06.11

fastdfs文件服务器的基本安装和配置

文章目录

  • fastdfs文件服务器的基本安装和配置
    • **准备工作**
      • 安装相关依赖
      • 下载相关软件
  • 安装
    • 安装libfastcommon-master
    • 安装fastdfs-5.11
    • 配置tracker.conf
    • 配置storage.conf
  • 启动
    • tracker跟踪服务器启动
    • storage存储节点服务启动
    • 测试
    • **安装fastdfs-nginx-module-master**
    • **配置nginx**

说明:

​ 系统:centos 7

​ nginx:nginx-1.13.9

​ fastdfs:fastdfs-5.11

准备工作

安装相关依赖

yum -y install make cmake gcc gcc-c++ bison-devel ncurses-devel autoconf automake lrzsz zip unzip netstat-nat libevent.x86_64 libevent-devel.x86_64
yum -y install zlib zlib-devel openssl openssl-devel pcre-devel

下载相关软件

下载链接

在这里插入图片描述

安装

安装libfastcommon-master

解压:unzip libfastcommon-master.zip
如果没有权限给权限:chmod -R 777 libfastcommon-master
打开解压文件目录:cd libfastcommon-master
编译:./make.sh
安装:./make.sh install

如下图所示则安装成功:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L5tw7TBR-1570609124317)(..\typora-user-images\1560240144492.png)]

设置软连接,即快捷方式

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-5.11

解压:tar zxvf fastdfs-5.11.tar.gz
打开文件夹:cd fastdfs-5.11
编译:./make.sh
安装:./make install

如下图所示则安装成功:

fastdfs文件服务器的基本安装和配置_第1张图片

打开配置文件夹:cd /etc/fdfs 发现不是我们需要的,cp一下就好了

cp client.conf.sample client.conf 
cp storage.conf.sample storage.conf 
cp tracker.conf.sample tracker.conf

创建相关目录

mkdir -p /home/fastdft/fastdfs_tracker_log #tracker日志目录
mkdir –p /home/fastdft/fastdfs_storage_log #storage日志目录
mkdir –p /home/fastdft/fastdfs_storage_1_log #storage1日志目录
mkdir -p /home/fastdft/resource #文件目录
mkdir -p /home/fastdft/images #文件目录
chmod -R 777 /home/fastdft/

配置tracker.conf

打开目录:cd /etc/fdfs/
编辑tracker.conf:vi tracker.conf
disabled=false  #当前配置是否可用 false:可用 true:不可用
bind_addr=  #是否绑定IP,不设置为不绑定
port=22122  #默认的端口 不冲突的话不要修改
connect_timeout=30  #针对socket套接字函数connect的连接超时时间设置  
network_timeout=60  #设置网络超时,单位秒,发送或接收数据时,如果在超时时间之后依然不能进行,则本次网络通讯失败  
base_path= /home/fastdft/fastdfs_tracker_log  #日志文件 可根据需要修改
max_connections=256  #服务器支持的最大连接数
accept_threads=1  #工作线程数,通常设置为CPU数量
store_lookup=2  #上传组(卷)的方式:0轮询,1:指定,2:负载平衡(剩余空间最大选择)
store_group=group1#组名称很重要 如果上一参数选择1方式,即制定组名,当前参数用来设置指定的组,如果选择其他方式,当前参数无效  
store_server=192.168.1.34:22122 #服务器IP:端口 ,IP根据本机IP来填写
store_path=0 
http.server_port=9090 #http端口,使用Nginx来访问则不需要这个

注意复制的时候不要复制注释

配置storage.conf

group_name=group1 #组名称很重要,如果tracker.conf配置为指定组名的话要和tracker.conf配置的相同
base_path= /home/fastdft/fastdfs_storage_log  #storaged服务日志目录
store_path0= /home/fastdft/resource #文件数据存放目录
tracker_server=192.168.1.34:22122 #服务器IP:端口 ,IP根据本机IP来填写
http.server_port=9091 #http端口,使用Nginx来访问则不需要这个

启动

tracker跟踪服务器启动

方式一:

启动:/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start

方式二:

创建软连接:ln -s /usr/bin/ fdfs_trackerd /usr/local/bin
启动:service fdfs_trackerd start

storage存储节点服务启动

方式一:

启动:/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start

方式二:

创建软连接:n -s /usr/bin/fdfs_storaged /usr/local/bin
启动服务:service fdfs_storaged start

第一次启动的时候最好先用方式一启动这样可以看到启动是否出错,也可以查看日志

查看是否启动成功:netstat -unltp | grep fdfs

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ub3xDqTf-1570609124333)(..\typora-user-images\1560240527450.png)]

如上图所示说明启动成功

然后打开文件数据的存放目录,就是在storage.conf配置文件中的配置的store_path0的路径

fastdfs文件服务器的基本安装和配置_第2张图片

查看tracker上是否有相应的存储节点,即 tracker和storage是否连接起来了

/usr/bin/fdfs_monitor /etc/fdfs/storage.conf

fastdfs文件服务器的基本安装和配置_第3张图片

看到图中的字样便成功了,这个时候安装任务可以说就算完成了

测试

编辑client.conf:vim /etc/fdfs/client.conf
base_path=/home/fastdft/fastdfs_client_log #tracker服务器文件路径 
tracker_server=192.168.1.34:22122#tracker服务器IP地址和端口号 
http.tracker_server_port=9090# tracker 服务器的 http 端口号,必须和tracker的设置对应

使用以下命令,进行测试,其中login.dat文件是在服务器的另一个地方

/usr/bin/fdfs_upload_file  /etc/fdfs/client.conf  /home/fastdft/test.txt 192.168.1.34:23000

如下图所示,返回了文件的路径
在这里插入图片描述
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qUsNih03-1570609124342)(..\Typora\typora-user-images\1560241001772.png)]

画红框的为上传之后的文件

删除命令:/usr/bin/fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/7D/rBAXIlz_Y1WAAGxDAAAABXu8q1M798.txt

这个时候就可以使用java api进行上传、同步和下载,但是想要通过http方式进行下载,还需要配置nginx

安装fastdfs-nginx-module-master

解压:unzip fastdfs-nginx-module-master
打开:cd fastdfs-nginx-module-master/src
编辑:vim mod_fastdfs.conf
		tracker_server=192.168.1.34:22122
		group_name=group1
		url_have_group_name = true
		store_path0=/home/fastdft/resource

将相关配置拷贝到etc/fdfs下

cp mod_fastdfs.conf /etc/fdfs
cd fastdfs-5.11/conf/
cp anti-steal.jpg http.conf mime.types /etc/fdfs/

创建软连接

ln -s /home/fastdft/resource /home/fastdft/resource/data/M00

配置nginx

配置前应注意,安装nginx

注意:如果已经安装过nginx需要重新编译安装,不然会报:unknown directive "ngx_fastdfs_module"的错误
检查:./configure --prefix=/usr/local/nginx --add-module=/home/download/fastdfs/fastdfs-nginx-module-master/src
编译和安装:make&makeinstall

最后在nginx的配置文件中添加一下配置即可

server {
        listen       80;
        server_name  域名;
 
        location / {
            root   html;
            index  index.html index.htm;
        }
        location /group1/M00 {
                alias /home/fastdft/resource/;
                ngx_fastdfs_module;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

这时候在浏览器中输入 就会下载

http://域名/group1/M00/00/7D/rBAXIlz_Y1WAAGxDAAAABXu8q1M798.txt

你可能感兴趣的:(技术文档)