环境升级- -Fastdfs
升级 fastdfs
简介
此次 fastdfs 升级涉及到的服务和对应版本如下:
| 服务名称 | 旧版本 | 新版本 |
|---|---|---|
| fastdfs | 3.06 | 6.07 |
| libfastcommon | 1.05 | 1.54 |
| nginx | 1.10.1 | 1.20.1 |
| fastdfs-nginx-module | 1.0.6 | 1.22 |
编译安装
- libfastcommon 源码编译安装
- fastdfs 源码编译安装
- nginx 源码编译安装
- fastdfs-nginx-module
- libfastcommon 编译安装
libfastcommon 编译安装
-
下载
1
2# 下载 libfastcommon 源码包
git clone https://github.com/happyfish100/libfastcommon.git -
编译安装
1
2
3
4export DESTDIR='${HOME}/fastdfs/'
cd libfastcommon
sh make.sh # 编译
sh make.sh install # 安装
fastdfs 编译安装
-
下载
1
2# 下载 fastdfs 源码包
git clone https://github.com/happyfish100/fastdfs.git -
编译安装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15cd fastdfs
# 修改 make.sh 脚本
vim make.sh
# 修改配置文件目录
TARGET_CONF_PATH=$DESTDIR/conf
# 修改系统启停脚本,此脚本仅针对 root 用户,非 root 用户由于没有权限操作 system ,此脚本未使用
TARGET_SYSTEMD_PATH=$TARGET_PREFIX/systemd/system
# 声明全局变量
export C_INCLUDE_PATH=${HOME}/fastdfs/usr/include
export LIBRARY_PATH=${HOME}/fastdfs/usr/lib
export LD_LIBRARY_PATH=${HOME}/fastdfs/usr/lib64
sh make.sh # 编译
sh make.sh install # 安装
nginx、fastdfs-nginx-module 编译安装
-
下载
1
2
3
4
5
6# 下载 nginx1.20.1 包
wget http://nginx.org/download/nginx-1.20.1.tar.gz
tar -zxf nginx-1.20.1.tar.gz
cd nginx-1.20.1/src
# 下载 fastdfs-nginx-module 源码包
git clone https://github.com/happyfish100/fastdfs-nginx-module.git -
编译安装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17cd nginx-1.20.1/src/fastdfs-nginx-module/src
# 修改默认 fastdfs 路径为应用对应路径,将 /etc/fdfs/ 修改为应用配置文件目录 ${HOME}/fastdfs/conf
vim config
CFLAGS="...(此处省略) -DFDFS_MOD_CONF_FILENAME='\"${HOME}/fastdfs/conf/mod_fastdfs.conf\"'"
cd nginx-1.20.1
./configure --prefix=../nginx --add-module=src/fastdfs-nginx-module/src
make -j 2 # 数值可根据自身系统 cpu 核数调整
make -j 2 install # 数值可根据自身系统 cpu 核数调整
# 复制 mod_fastdfs.conf 至 fastdfs
cp nginx-1.20.1/src/fastdfs-nginx-module/src/mod_fastdfs.conf fastdfs/conf
# 检查
cd nginx/sbin
./nginx -v # 显示版本为 1.20.1
ldd nginx # libfastdfscommon 为对应的路径
将编译完成的服务打包
1 | tar -zcf fastdfs.tar.gz nginx fastdfs |
安装升级
升级流程:
- 停止服务
- 备份迁移旧版本服务
- 下发新版本服务
- 修改配置文件
- 调整全局环境变量
- 启动服务
停止服务
1 | # 将集群中所有相关服务停止 |
备份迁移旧版本服务
1 | # 将集群中所有服务备份迁移 |
下发新版本服务
将 fastdfs.tar.gz 下发至应用用户家目录下,并解压。会生成 fastdfs nginx 两个目录
修改配置文件
所有需要调整的配置文件中 集群信息 路径 建议根据原有配置。
-
tracker.conf
1
2vim fastdfs/conf/tracker.conf
base_path = /home/yuqing/fastdfs # 根据原来的配置文件调整路径信息、tracker 集群信息 -
storage.conf
1
2
3
4
5
6vim fastdfs/conf/storage.conf
group_name = group1 # 根据原来的配置文件调整 group 信息
base_path = /home/yuqing/fastdfs # 根据原来的配置文件调整路径信息
store_path0 = /home/yuqing/fastdfs # 根据原来的配置文件调整路径信息
tracker_server = 192.168.209.121:22122 # tracker 集群信息调整
tracker_server = 192.168.209.122:22122 # tracker 集群信息调整 -
mod_fastdfs.conf
1
2
3
4vim fastdfs/conf/mod_fastdfs.conf
base_path=/tmp # 根据原来的配置文件调整路径信息,若是默认配置,*建议*调整为应用用户目录下
tracker_server=tracker:22122 # 根据原来的 tracker 集群信息调整
store_path0=/home/yuqing/fastdfs # 此路径若注释,则使用 base_path 路径信息 -
client.conf
1
2
3
4vim fastdfs/conf/client.conf
base_path = /home/yuqing/fastdfs # 根据原来的配置文件调整路径信息,若是默认配置,*建议*调整为应用用户目录下
tracker_server = 192.168.0.196:22122 # 根据原来的 tracker 集群信息调整
tracker_server = 192.168.0.197:22122 # 根据原来的 tracker 集群信息调整 -
nginx.conf
1
cp backup/nginx-old/conf/nginx.conf nginx/conf # 使用原来的 nginx.conf 文件
-
移除旧有配置文件
1
2
3
4# 查看 tracker 的数据存储路径,非 storage 存储路径
cd data
# 删除旧连接信息,服务启动后会重新生成文件
rm -f storage*conf
调整全局环境变量
1 | cat > .bash_profile << EOF |
启动服务
1 | # 启动 fastdfs |
推荐文章
-
2021-08-09
分布式文件存储系统,通常用于存储小文件、图片等。
-
2022-08-25
通过源码编译安装部署 Nginx
-
2023-07-14
-
2022-08-03
通过 LVS+keepalived 对调度服务器进行双机热备,利用高可用(HA)技术提供持续不间断的服务。
-
2021-04-02
HAProxy 是目前比较流行的一种集群调度工具。