FastDFS分布式文件系统的安装与使用

本文详细介绍了如何在192.168.43.101和192.168.43.102上安装配置FastDFS分布式文件系统。包括安装依赖包,部署libfastcommon,安装FastDFS,启动tracker和storage服务器,以及在storage服务器上安装Nginx,并进行了文件上传测试。
摘要由CSDN通过智能技术生成

FastDFS分布式文件系统的安装与使用

跟踪服务器:192.168.43.101(tracker)

存储服务器:192.168.43.102 (storage)

安装依赖包 (所有机器)

yum -y install libevent  libevent-devel perl  make gcc zlib  zlib-devel pcre pcre-devel  gcc-c++  openssl-devel

安装libfastcommon(所有机器)

tar -zxvf libfastcommon-1.0.39.tar.gz
mv libfastcommon-1.0.39 /usr/local/bin/
cd /usr/local/bin/libfastcommon-1.0.39/
//开始构建
./make.sh
./make.sh install

可以看到libfastcommon.so默认安装到了/usr/lib64/libfastcommon.so
但是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

安装fastDFS (所有机器)

tar -zxvf fastdfs.tar.gz
mv fastdfs-5.11 /usr/local/bin/

// 进入fastdfs主文件路径下
cd /usr/local/bin/fastdfs-5.11/
./make.sh
./make.sh install

// 进入fdfs配置文件路径上
cd /etc/fdfs/
// 复制三个配置信息
cp client.conf.sample client.conf
cp storage.conf.sample storage.conf
cp tracker.conf.sample tracker.conf

启动fastDFS tracker (192.168.43.101)

//创建目录,用于记录 tracker日志、storage server等信息。
mkdir -m 755 -p /opt/fastdfs

// 先修改服务配置
vim /etc/fdfs/tracker.conf
//打开后重点关注下面4个配置: 
disabled=false #默认开启 
port=22122 #默认端口号 
base_path=/opt/fastdfs #我刚刚创建的目录 
http.server_port=8080 #默认端口是8080

//设置开机启动
systemctl enable fdfs_trackerd

//启动
systemctl start fdfs_trackerd

// 查看监听:
netstat -unltp|grep fdfs

//开启端口
firewall-cmd --zone=public --add-port=22122/tcp --permanent  
firewall-cmd --zone=public --add-port=8080/tcp --permanent
//重启防火墙 
firewall-cmd --reload 

启动fastDFS storage (192.168.43.102)

//创建目录,用于存储文件。
mkdir -m 777 -p /opt/fastdfs
mkdir -m 777 -p /opt/fastdfs1

//修改storage.conf
vim /etc/fdfs/storage.conf

disabled=false 
group_name=group1 #组名,根据实际情况修改 
port=23000 #设置storage的端口号,默认是23000,同一个组的storage端口号必须一致 
base_path=/opt/fastdfs #设置storage数据文件和日志目录 
store_path_count=1 #存储路径个数,需要和store_path个数匹配 
store_path0=/opt/fastdfs1 #实际文件存储路径 
tracker_server=192.168.43.101 #tracker的ip地址 
http.server_port=8888 #设置 http 端口号

// 设置开机启动
systemctl enable fdfs_storaged
// 开启fdfs storage文件
systemctl start fdfs_storaged

// 查看监听:
netstat -unltp|grep fdfs

// 查看storage运行情况
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf

//开启端口
firewall-cmd --zone=public --add-port=23000/tcp --permanent 
firewall-cmd --zone=public --add-port=8888/tcp --permanent
//重启防火墙 
firewall-cmd --reload 

在storage上安装nginx

tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
tar -zxvf nginx-1.10.1.tar.gz
mv fastdfs-nginx-module /usr/local/bin/
mv nginx-1.10.1 /usr/local/bin/
// 修改模块信息
vim /usr/local/bin/fastdfs-nginx-module/src/config

//覆盖上去
ngx_addon_name=ngx_http_fastdfs_module
HTTP_MODULES="$HTTP_MODULES ngx_http_fastdfs_module"
NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_fastdfs_module.c"
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
CORE_LIBS="$CORE_LIBS -L/usr/lib -lfastcommon -lfdfsclient"
CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"

//创建配置信息
./configure --prefix=/usr/local/nginx --add-module=/usr/local/bin/fastdfs-nginx-module/src

// 复制配置信息
cp -rf /usr/include/fast* /usr/local/include/
//构建
make
make install

// 复制fdfs文件到/etc/fdfs文件夹下
cp /usr/local/bin/fastdfs-5.11/conf/http.conf /etc/fdfs/
cp /usr/local/bin/fastdfs-5.11/conf/mime.types /etc/fdfs/
cp /usr/local/bin/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

//配置mod_fastdfs文件
vim /etc/fdfs/mod_fastdfs.conf
//修改当中的配置信息
base_path=/opt/fastdfs
tracker_server=192.168.43.101:22122 
url_have_group_name=true        #url中包含group名称
store_path0=/home/fastdfs1  #指定文件存储路径(上面配置的store路径)


修改nginx配置信息
vim /usr/local/nginx/conf/nginx.conf

//删除原来的server
//改为以下配置信息
server {
        listen       8888;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }


        location ~ /group[0-9]/M00 {
                ngx_fastdfs_module;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
    
// 创建nginx开机启动
vim /lib/systemd/system/nginx.service
加入以下内容
[Unit]
Description=nginx - high performance web server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop

[Install]
WantedBy=multi-user.target

//保存,重新加载 systemd
systemctl daemon-reload
//开机启动nginx
systemctl enable nginx.service
systemctl start nginx

文件上传测试 (tracker 192.168.43.101)

// 设置客户端
vim /etc/fdfs/client.conf

base_path=/opt/fastdfs #tracker服务器文件路径
tracker_server=192.168.43.101:22122 #tracker服务器IP地址和端口号
http.tracker_server_port=8080 # tracker 服务器的 http端口号,必须和tracker的设置对应起来

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /tmp/test.png 
返回id号:group1/M00/00/00/wKgrZlxBoh6AQxslAAdWJE-w88g505.png
(能返回以上文件ID,说明文件上传成功)

访问:
http://192.168.43.102:8888/group1/M00/00/00/wKgrZlxBoh6AQxslAAdWJE-w88g505.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值