Nginx 简介

Nginx 是一款轻量级的 Web 服务器、反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。而 Nginx 的访问日志不管是做用户行为分析还是安全分析都是非常重要的数据源之一。如何有效便捷的采集 Nginx 的日志进行有效的分析成为大家关注的问题(下一节分享 Filebeat 进行日志采集)。

Nginx 互联网架构

高可用

Nginx 作为请求入口,很重要,如果出现单点问题,显然是不可接受的。可以通过 Keepalived Nginx 实现高可用。

Keepalived 是一个高可用解决方案,主要是用来防止服务器单点发生故障,可以通过和 Nginx 配合来实现 Web 服务的高可用。

实现高可用的思路:

nginx配置详细教程(1分钟系列-Nginx安装)(1)

Nginx 安装

yum 安装 Nginx

# 使用 yum 安装是在线安装,直接使用命令 yum -y install nginx 安装即可 yum -y install nginx

启动 Nginx 服务

service nginx start Starting nginx: [ OK ]

停止 Nginx 服务

service nginx stop Stopping nginx: [ OK ]

重启 Nginx 服务

service nginx restart Stopping nginx: [ OK ] Starting nginx: [ OK ]

源码包安装 Nginx

首先安装缺少的依赖包

# 下载路径为 /usr/local/src/ cd /usr/local/src/ wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz tar -zxvf ngx_cache_purge-2.3.tar.gz wget https://www.openssl.org/source/openssl-1.0.2h.tar.gz tar -zxvf openssl-1.0.2h.tar.gz wget https://ftp.pcre.org/pub/pcre/pcre-8.38.tar.gz tar -zxvf pcre-8.38.tar.gz # https://github.com/yaoweibin/nginx_upstream_check_module wget https://github.com/yaoweibin/nginx_upstream_check_module/archive/master.zip unzip master.zip -d /usr/local/src

下载并解压 Nginx

wget http://nginx.org/download/nginx-1.10.1.tar.gz tar -zxvf nginx-1.10.1.tar.gz

解压缩后,可以看到 nginx-1.10.1 目录,然后进入这个目录

# 进入这个目录 cd nginx-1.10.1/ # 执行配置 ./configure --user=www-data --group=www-data --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --add-module=/usr/local/src/nginx_upstream_check_module-master --add-module=/usr/local/src/ngx_cache_purge-2.3 --with-http_v2_module --with-openssl=/usr/local/src/openssl-1.0.2h # make 命令 make && make install

常用编译选项说明
启动、停止 Nginx

groupadd -f www-data useradd -g www-data www-data # 启动 nginx 服务 /usr/local/nginx/sbin/nginx # 查看进程 ps -ef | grep nginx root 37755 1 0 12:16 ? 00:00:00 nginx: master process sbin/nginx www-data 37756 37755 0 12:16 ? 00:00:00 nginx: worker process root 37758 30529 0 12:16 pts/1 00:00:00 grep --color=auto nginx # 停止 nginx 服务 /usr/local/nginx/sbin/nginx -s stop

Nginx 验证

nginx配置详细教程(1分钟系列-Nginx安装)(2)

cd /usr/local/nginx/logs ls -al total 12 drwxr-xr-x 2 root root 58 May 9 12:16 . drwxr-xr-x 11 root root 151 May 9 12:16 .. -rw-r--r-- 1 root root 435 May 9 12:18 access.log -rw-r--r-- 1 root root 329 May 9 12:18 error.log -rw-r--r-- 1 root root 6 May 9 12:16 nginx.pid tail -20f access.log 192.168.111.31 - - [09/May/2020:12:18:17 -0400] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36" 192.168.111.31 - - [09/May/2020:12:18:18 -0400] "GET /favicon.ico HTTP/1.1" 404 571 "http://192.168.111.238/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36" 192.168.111.31 - - [09/May/2020:12:19:54 -0400] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36"

下一步计划

Beats 采集数据

,