nginx 编译1.15.2 ,带fastdfs访问模块和负载均衡监控模块

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   #刚才上传文件时,产出的文件名。如果可以显示,说明可以了。

  



posted @ 2022-04-07 15:31  琴声清幽  阅读(178)  评论(0编辑  收藏  举报