1. 安装centos7.9 64位 ,阿里云放行22122,23000端口。
2. 安装前置的附属包
yum install -y gcc-c++ yum install -y pcre pcre-devel yum install -y zlib zlib-devel yum install -y openssl openssl-devel
3. 安装git 和 patch
yum install -y git
yum install -y patch
4. 下载负载均衡的源码 至root目录
git clone https://gitee.com/mirrors/nginx_upstream_check_module.git
5. 拷贝文件至root目录
6. 解压,并删除原有的tar.gz 包,,给nginx打补丁。
进入nginx的目录,打补丁,负载均衡补丁
cd nginx-1.15.2
patch -p1 </root/nginx_upstream_check_module/check_1.14.0+.patch
7.编译libfastcommon-1.0.35.
进入libfastcommon-1.0.35
./make.sh
./make.sh install
8. 编译fastdfs-5.11
进入fastdfs-5.11目录
./make.sh
./make.sh install
安装完毕后,查看/etc/init.d/目录下 有fdfs_storaged 和 fdfs_trackerd,两个文件,可以用为service fdfs_trackerd start 命令
9. 准备配置文件,
进入 cd /etc/fdfs/
将配置文件中的sample的配置文件,去掉sample后缀,这个后面会逐渐讲到。
10. 创建文件夹,用于存放tracker 和storage
mkdir -p /home/root/fastdfs/tracker
mkdir -p /home/root/fastdfs/storage
11.启动tracker
修改 /etc/fdfs/tracker.conf
base_path=/home/root/fastdfs/tracker
启动
service fdfs_trackerd start
这时在/home/root/fastdfs/tracker目录下生成2个文件夹 一个data,一个log
12.启动storage
修改 /etc/fdfs/storage.conf 内容如下:
修改 base_path=/home/root/fastdfs/storage
修改 store_path0=/home/root/fastdfs/storage
修改 tracker_server=39.101.195.255:22122
启动
service fdfs_storaged start
查看目录 /home/root/fastdfs/storage/data 里面有256个目录如 00 01 AB....
13.上传文件并测试
修改 /etc/fdfs/client.conf 如下;
修改base_path=/home/root/fastdfs/storage
修改 tracker_server=39.101.195.255:22122
拷贝一张图片aaa.png至服务器root目录下
运行 /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /root/aaa.png
如有返回值如group1/M00/00/00/xxxxxxx.png 代表上传成功。
下面的这条命令也是用来测试上传的,可以产生更多的信息,如crc32
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /root/1620822720556.jpg
14.整合nginx
修改 fastdfs-nginx-module-1.20/src/config 文件
拷贝 /root/fastdfs-nginx-module/src/mod_fastdfs.conf 至 /etc/fdfs/下
并修改 /etc/fdfs/mod_fastdfs.conf
tracker_server=39.101.195.255:22122
url_have_group_name=true #url中包含group名称
store_path0=/home/root/fastdfs/storage
之后,进入/root/fastdfs-5.11/conf 拷贝http.conf mime.types 至/etc/fdfs/目录
cp /root/fastdfs-5.11/conf/http.conf /etc/fdfs/
cp /root/fastdfs-5.11/conf/mime.types /etc/fdfs/
15. 编译nginx
粘贴时,需要把换行去掉。为一行命令,才能执行。或如下段,有折行效果好的。
./configure --prefix=/usr/nginx
--with-http_ssl_module
--with-http_realip_module
--add-module=/root/nginx_upstream_check_module/
--add-module=/root/fastdfs-nginx-module-1.20/src/
./configure --prefix=/usr/nginx --with-http_ssl_module --with-http_realip_module --add-module=/root/nginx_upstream_check_module/ --add-module=/root/fastdfs-nginx-module-1.20/src/
make
make install
16. 配置nginx,进行访问测试
vim /usr/nginx/conf/nginx.conf
加入3段
#keepalive_timeout 0; keepalive_timeout 65; #gzip on; #以下为加入的代理服务器,作负载均衡用的 upstream yiwiki { server 0.0.0.0:8080; server 0.0.0.0:8090; check interval=3000 rise=2 fall=5 timeout=2000 type=http; check_http_expect_alive http_2xx http_3xx; ip_hash; } server { listen 80; server_name localhost; #charset koi8-r;
location /status { check_status; #监控用 } location ~/group([0-9]) { ngx_fastdfs_module; #fastdfs的浏览模块 }
17.访问测试
http://xxx.xx.xx.xx/status
http://xxx.xx.xx.xx/group1/M00/00/00/rBLE6WJOijGAX66ABuEUAM5Y7g786.JPG #刚才上传文件时,产出的文件名。如果可以显示,说明可以了。