nginx + keepalived 高可用架构部署

  • Post author:
  • Post category:其他




1. 环境需求和说明



1.1. Nginx版本管理

Nginx隶属于开源产品,各个版本的区别主要有以下几种形式:

u Mainline version:Mainline 是 Nginx 目前主力在做的版本,可以说是开发版。

u Stable version:最新稳定版,生产环境上建议使用的版本。

u Legacy versions:遗留的老版本的稳定版。

一般选取软件的稳定版本,最新的稳定版。截止到文档更新日,稳定版1.220已经发布,发布日期为2021-11-16。



1.2. 系统安装要求

操作系统最好为linux系统。



1.3. 系统环境和软件版本

操作系统 Linux
适用nginx版本 nginx1.20.0+



1.4. 文件系统(基础要求)


裸设备

文件系统

大小

说明
/lvnginx /nginx 10G l 最少5G
/lvnginxlogs /nginx/logs 20G根据业务需要 l 裸设备可以根据需要定义l 文件系统可以挂载在其他位置。l 文件系统名称可以根据需要进行修改

在特殊系统中,日志文件可能不能挂载在/nginx/logs下,我们可以通过softlink保持目录结构的统一性。



1.5. 用户和组

Nginx服务程序默认以nobody身份运行,建议为其创建专门的用户账号(无登入权限),控制其访问权限,降低安全风险。创建一个名为nginx的用户和组。


组名

组ID

(可默认或自定义)

描述
nginx 1000 nginx组

用户规划:


用户

用户ID

(可默认或自定义)

主属组

组集

主目录

备注
nginx 1000 nginx nginx运行用户

参考命令:

groupadd -g 1000 nginxuseradd nginx -u 1000 -g  nginx -s /sbin/nologin -M



1.6. 端口设置


软件

端口

说明
nginx 80 服务端侦听端口

注意:在linux系统中端口1~1024之间为root保留端口,其他用户无权使用,若要使用http和https默认端口80和443时只能以root用户身份启动nginx服务。



2. 安装

确保当前环境中存在gcc编译环境(gcc,gcc-c++)可通过查询当前系统中gcc的版本来确认是否完整安装

#gcc -#g++ -v

若显示有版本信息则说明编译环境完整,输出结果参考如下:

在这里插入图片描述



2.1. 安装依赖包

pcre Perl库,正则表达式库
zlib 数据压缩函式库
SSL 用于nginx配置SSl证书配置,若不使用https协议可以不进行安装

通过如下命令查看当前环境是否存在相应的rpm安装包:

rpm -qa|grep -E ‘ssl|pcre|zlib’

若当前系统已挂载ios镜像或在可以连接外网的情况下可以使用yum安装,安装命令如下:

#安装pcre库yum install -y pcre pcre-devel#安装zlib压缩库yum install -y zlib zlib-devel#安装SSL证书依赖库yum install -y openssl openssl-devel



*备选离线安装方案*

如当前服务器未挂载ISO镜像也没有外网的条件下,可使用离线安装的方式补充依赖包。请按下列顺序安装;(请在官网中下



版权声明:本文为zxcsd11原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。