DDR爱好者之家 Design By 杰米

1、安装libfastcommon-1.0.43,安装包可以在大佬的https://github.com/happyfish100/libfastcommon/releases下载

[root@localhost Downloads]# tar -zxvf libfastcommon-1.0.43.tar.gz

# 解压后进入目录进行编译并安装
[root@localhost libfastcommon-1.0.43]#cd libfastcommon-1.0.43
[root@localhost libfastcommon-1.0.43]#make
[root@localhost libfastcommon-1.0.43]#make install

注意:libfastcommon安装好后会在/usr/lib64 目录下生成 libfastcommon.so 库文件;由于FastDFS程序引用usr/lib目录所以需要将/usr/lib64下的库文件拷贝至/usr/lib下

cp /usr/lib64/libfastcommon.so /usr/lib

2、安装fastdfs,安装包可以在大佬的https://github.com/happyfish100/fastdfs/releases下载

#解压到当前目录
tar -zxvf fastdfs-6.06.tar.gz

# 进入到目录进行编译与安装
make.sh
make.sh install

安装成功后,将/conf下的文件复制到/etc/fdfs中

[root@localhost conf]# ll
total 92
-rw-rw-r--. 1 root root 23981 Dec 31 07:36 anti-steal.jpg
-rw-rw-r--. 1 root root 1909 Dec 31 07:36 client.conf
-rw-rw-r--. 1 root root 965 Dec 31 07:36 http.conf
-rw-rw-r--. 1 root root 31172 Dec 31 07:36 mime.types
-rw-rw-r--. 1 root root 10246 Dec 31 07:36 storage.conf
-rw-rw-r--. 1 root root 620 Dec 31 07:36 storage_ids.conf
-rw-rw-r--. 1 root root 9138 Dec 31 07:36 tracker.conf
[root@localhost conf]# cd ..
[root@localhost fastdfs-6.06]# cp /conf/* /etc/fdfs
[root@localhost fastdfs-6.06]# ll /etc/fdfs
total 128
-rw-r--r--. 1 root root 23981 Jun 21 02:16 anti-steal.jpg
-rw-r--r--. 1 root root 1904 Jun 21 02:24 client.conf
-rw-r--r--. 1 root root 1909 Jun 21 02:15 client.conf.sample
-rw-r--r--. 1 root root 965 Jun 21 02:54 http.conf
-rw-r--r--. 1 root root 31172 Jun 21 02:54 mime.types
-rw-r--r--. 1 root root 3738 Jun 21 02:41 mod_fastdfs.conf
-rw-r--r--. 1 root root 10238 Jun 21 02:23 storage.conf
-rw-r--r--. 1 root root 10246 Jun 21 02:15 storage.conf.sample
-rw-r--r--. 1 root root 620 Jun 21 02:16 storage_ids.conf
-rw-r--r--. 1 root root 620 Jun 21 02:15 storage_ids.conf.sample
-rw-r--r--. 1 root root 9129 Jun 21 02:18 tracker.conf
-rw-r--r--. 1 root root 9138 Jun 21 02:15 tracker.conf.sample
[root@localhost fastdfs-6.06]#

3、配置和启动tracker

# 进入/etc/fdfs目录中
cd /etc/fdfs

# 拷贝一份新的tracker配置文件
cp tracker.conf.sample tracker.conf

#修改tracker.conf ; vim tracker.conf
# /home/fastdfs用于存放tracker的data和log
base_path=/home/yuqing/fastdfs 改为: base_path=/home/fastdfs
http.server_port 改为: 80

# 启动tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

4、配置和启动storage

# 进入/etc/fdfs目录中
cd /etc/fdfs

# 拷贝一份新的tracker配置文件
cp storage.conf.sample storage.conf

# 修改storage.conf ; vim storage.conf
group_name=group1 #配置组名
base_path=/home/yuqing/fastdfs 改为: base_path=/home/fastdfs

#store存放文件的位置(store_path)
store_path0=/home/yuqing/fastdfs 改为: store_path0=/home/fdfs_storage 
#如果有多个挂载磁盘则定义多个store_path,如下
#store_path1=.....
#store_path2=......

#配置tracker服务器:IP
tracker_server=192.168.172.20:22122
#如果有多个则配置多个tracker
#tracker_server=192.168.101.4:22122

#配置http端口,使用默认端口
http.server_port=8888

#启动storage, 运行命令如下:
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

#启动完成后进入 /home/fdfs_storage/data 目录下,显示目录如下
[root@localhost home]# cd fdfs_storage/
[root@localhost fdfs_storage]# ls
data
[root@localhost fdfs_storage]# cd data/
[root@localhost data]# ls
00 0A 14 1E 28 32 3C 46 50 5A 64 6E 78 82 8C 96 A0 AA B4 BE C8 D2 DC E6 F0 FA
01 0B 15 1F 29 33 3D 47 51 5B 65 6F 79 83 8D 97 A1 AB B5 BF C9 D3 DD E7 F1 FB
02 0C 16 20 2A 34 3E 48 52 5C 66 70 7A 84 8E 98 A2 AC B6 C0 CA D4 DE E8 F2 FC
03 0D 17 21 2B 35 3F 49 53 5D 67 71 7B 85 8F 99 A3 AD B7 C1 CB D5 DF E9 F3 FD
04 0E 18 22 2C 36 40 4A 54 5E 68 72 7C 86 90 9A A4 AE B8 C2 CC D6 E0 EA F4 FE
05 0F 19 23 2D 37 41 4B 55 5F 69 73 7D 87 91 9B A5 AF B9 C3 CD D7 E1 EB F5 FF
06 10 1A 24 2E 38 42 4C 56 60 6A 74 7E 88 92 9C A6 B0 BA C4 CE D8 E2 EC F6
07 11 1B 25 2F 39 43 4D 57 61 6B 75 7F 89 93 9D A7 B1 BB C5 CF D9 E3 ED F7
08 12 1C 26 30 3A 44 4E 58 62 6C 76 80 8A 94 9E A8 B2 BC C6 D0 DA E4 EE F8
09 13 1D 27 31 3B 45 4F 59 63 6D 77 81 8B 95 9F A9 B3 BD C7 D1 DB E5 EF F9
[root@localhost data]#

5、使用fastdfs自带工具测试上传文件

# 切换目录到 /etc/fdfs/ 目录下
cd /etc/fdfs

# 拷贝一份新的client配置文件
cp client.conf.sample client.conf

# 修改client.conf ; vim client.conf
base_path = /home/fastdfs
tracker_server = 192.168.52.133:22122
#tracker_server = 192.168.0.197:22122

#进行上传文件的测试,运行如下:
/usr/bin/fdfs_test /etc/fdfs/client.conf upload wyc01.jpg

#结果:
[youth@localhost Pictures]$ /usr/bin/fdfs_test /etc/fdfs/client.conf upload wyc01.jpg 
This is FastDFS client test program v6.06

Copyright (C) 2008, Happy Fish / YuQing

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.fastken.com/ 
for more detail.

[2020-06-21 03:54:35] DEBUG - base_path=/home/fastdfs, connect_timeout=5, 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.52.133, port=23000

group_name=group1, ip_addr=192.168.52.133, port=23000
storage_upload_by_filename
group_name=group1, remote_filename=M00/00/00/wKg0hV7uaXyALZfuAABDP6pWIGE814.jpg
source ip address: 192.168.52.133
file timestamp=2020-06-21 03:54:36
file size=17215
file crc32=2857771105
example file url: http://192.168.52.133/group1/M00/00/00/wKg0hV7uaXyALZfuAABDP6pWIGE814.jpg
storage_upload_slave_by_filename
group_name=group1, remote_filename=M00/00/00/wKg0hV7uaXyALZfuAABDP6pWIGE814_big.jpg
source ip address: 192.168.52.133
file timestamp=2020-06-21 03:54:36
file size=17215
file crc32=2857771105
example file url: http://192.168.52.133/group1/M00/00/00/wKg0hV7uaXyALZfuAABDP6pWIGE814_big.jpg
[youth@localhost Pictures]$

注意:http://192.168.52.133/group1/M00/00/00/wKg0hV7uaXyALZfuAABDP6pWIGE814.jpg就是刚才上传图片的链接,但是现在没有整合nginx,所以无法通过http访问

6、fastdfs和nginx整合

①安装fastdfs-nginx-module,安装包可以在大佬的https://github.com/happyfish100/fastdfs-nginx-module/releases下载

#解压
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz

# 进入到目录里修改conf配置
cd /usr/local/fastdfs-nginx-module/src/

vim conf

 HTTP_MODULES="$HTTP_MODULES ngx_http_fastdfs_module"
 NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_fastdfs_module.c"
 # 只修改这里,把local删除
 CORE_INCS="$CORE_INCS /usr/include"
 CORE_LIBS="$CORE_LIBS -lfastcommon -lfdfsclient"
 CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"

②将fastdfs-nginx-module/src下的mod_fastdfs.conf拷贝至/etc/fdfs/下

  cp mod_fastdfs.conf /etc/fdfs/

 ③并修改 /etc/fdfs/mod_fastdfs.conf 的内容;vi /etc/fdfs/mod_fastdfs.conf

base_path=/home/fastdfs
tracker_server=192.168.172.20:22122
#tracker_server=192.168.172.20:22122 #(多个tracker配置多行)
url_have_group_name=true #url中包含group名称
store_path0=/home/fdfs_storage #指定文件存储路径(上面配置的store路径)

7、安装nginx

# nginx官网上有安装包,可以直接下载
# 解压
tar -zxvf nginx-1.8.0.tar.gz

# 进入目录,配置命令
# --prefix是nginx的安装路径
# --add-module是fastdfs-nginx-module解压后的文件路径
./configure --prefix=/usr/local/nginx --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_gzip_static_module --http-client-body-temp-path=/var/temp/nginx/client --http-proxy-temp-path=/var/temp/nginx/proxy --http-fastcgi-temp-path=/var/temp/nginx/fastcgi --http-uwsgi-temp-path=/var/temp/nginx/uwsgi --http-scgi-temp-path=/var/temp/nginx/scgi --add-module=/usr/local/fastdfs-nginx-module/src# 编译并安装
make && make install# 复制nginx-1.19.0/conf配置文件夹(解压后的nginx)里面的两个文件到/etc/fdfs
cp http.conf mime.types /etc/fdfs/

注意:上边将临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录;我指定了pid-path,所以也要在/var/run文件夹下创建一个nginx,然后在nginx文件夹下创建一个nginx.pid,否则启动nginx时会报错nginx: [emerg] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory),还是建议不指定了,这个坑太深了

8、修改nginx配置文件

server {
  listen  80;
  #server_name localhost;
  server_name 192.168.52.133;

  #charset koi8-r;

  #access_log logs/host.access.log main;
 
  location ~/group([1~9])/M00/{
   root /home/fdsf_storage/data;
   ngx_fastdfs_module;
  }

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

9、启动nginx,因为nginx默认是80端口,确保80端口没有被占用,如果占用就kill掉;确保防火墙firewall允许外部设备访问服务器

/use/local/nginx/sbin/nginx

[root@localhost fdfs]# ps -ef | grep nginx
root 7466 1 0 03:12 "text-align: center">Centos7配置fastdfs和nginx分布式文件存储系统实现过程解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?