Nginx代理服务器生产环境操作实例

一:场景需求:

由于ORACLE数据库在生产环境内网,需要外网服务访问数据库,即使用Nginx完成TCP/UTP三层的负载实现

二:部署前环境准备

1:检查服务器操作系统版本,确定Nginx部署版本及依赖服务、关闭防火墙

#临时关闭防火墙

systemctl stop firewalld.service

#永久关闭防火墙

systemctl disable firewalld.service

一台前置机服务器既可以访问内网数据库,又可以通过外网进行访问到这台前置机

2:确定Nginx中间件版本

3:确定Nginx服务器的IP地址

4:确定Oracle数据库对外使用的IP与port

三:实施部署

1:安装依赖包

使用yum命令安装所需的依赖包,包括gcc、pcre-devel、zlib-devel、openssl和openssl-devel。这些依赖包是编译和运行Nginx所必需的

yum -y install gcc make pcre pcre-devel zlib zlib-devel openssl-devel

2:离线版:下载依赖包并上传至服务器,解压依赖包 tar -zxvf xxxx.tar

安装所有依赖包:rpm -Uvh *.rpm

检查安装nginx的依赖性,nginx的模块需要第三方库的支持,检查是否安装下列库:

zlib、zlib-devel、openssl、openssl-devel、prce、prce-devel

root@mgmserver \~# rpm -qa |grep zlib
zlib-devel-1.2.3-3
zlib-1.2.3-3
root@mgmserver tar_packet# rpm -qa |grep openssl
openssl-0.9.8e-12.el5
openssl-devel-0.9.8e-12.el5
root@mgmserver tar_packet# rpm -qa |grep pcre
pcre-6.6-2.el5_1.7
pcre-devel-6.6-2.el5_1.7
root@mgmserver tar_packet# rpm -qa |grep gcc
compat-libgcc-296-2.96-138
compat-gcc-34-g77-3.4.6-4
gcc-c++-4.1.2-46.el5
libgcc-4.1.2-46.el5
compat-gcc-34-3.4.6-4
compat-gcc-34-c++-3.4.6-4
gcc-java-4.1.2-46.el5
gcc-4.1.2-46.el5
gccp-gfortran-4.1.2-46.el5
root@mgmserver tar_packet# rpm -qa |grep autoconf
autoconf-2.59-12
root@mgmserver tar_packet# rpm -qa |grep automake
automake-1.9.6-2.1
automake16-1.6.3-8
automake15-1.5-16
automake17-1.7.9-7
automake14-1.4p6-13

2:下载nginx安装包并进行解压

Tar -zxvf xxxx.tar

3:进入解压目录执行(增加https模块)

./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --pid-path=/usr/local/nginx/conf/nginx.pid --lock-path=/usr/local/nginx/lock/nginx.lock --with-http_ssl_module

4:对nginx进行编译和安装

make & make install

5:设置开机启动

启动nginx
root@mgmserver nginx# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

vim /etc/rc.local

文本底部追加

/usr/local/nginx/sbin/nginx

6:配置文件配置与http同级

stream {

upstream oraclerac {

server 192.168.26.201:1521 weight=1 max_fails=2 fail_timeout=30s; #原oracle地址

server 192.168.26.203:1521 weight=2 max_fails=2 fail_timeout=30s;

}

server {

listen 1522 so_keepalive=on; #so_keepalive,会话保持,防止查询飘走

proxy_pass oraclerac;

}

}

相关推荐
阳光九叶草LXGZXJ3 分钟前
达梦数据库-学习-69-DM9主备集群部署
linux·运维·服务器·数据库·sql·学习
jnrjian3 分钟前
Connect Microsoft Tools to Oracle Databases powerbi 之类的oracle 客户端
数据库·microsoft·oracle
北京恒星科通刘军13 分钟前
灾害监测预警系统中,应急疏散广播的“应急叫应”实际送达率与有效性研究
网络·数据库·人工智能
ShineWinsu19 分钟前
对于Redis:List类型的解析
数据库·c++·redis·链表·缓存·面试·list
问商十三载34 分钟前
AI引擎生成式优化服务商怎么选?技术核验清单(附脚本)
数据库·人工智能·机器学习
TDengine (老段)35 分钟前
集群从“能用“到“高可用“:副本、选主与故障切换到底怎么配
大数据·网络·数据库·物联网·oracle·时序数据库·tdengine
ly768936 分钟前
ISR 收缩与 HW 推进:副本同步的边界条件与 UnderReplicated 排障
数据库·kafka·c#·linq·isr·hw·副本同步
Evand J1 小时前
【MATLAB例程】三维A*路径规划与TOA-AOA-TDOA融合定位算法。附下载链接
数据库·算法·matlab
Dxy12393102161 小时前
MySQL 条件注释语法
数据库·mysql
小小龙学IT1 小时前
Go 语言 database/sql 标准库深度解析:从连接池到驱动抽象
数据库·sql·golang