keepalived高可用+nginx证书代理

安装nginx

yum -y install gcc pcre-devel openssl-devel        #安装依赖包

wget   http://nginx.org/download/nginx-1.12.2.tar.gz     (也可配置阿里源用yum安装)

tar -xf nginx-1.12.2.tar.gz

./configure  \

--prefix=/usr/local/nginx \                #指定安装路径

--user=nginx \                            #指定用户

--group=nginx \                            #指定组

--with-http_ssl_module                    #开启SSL加密功能

make && make install     #编译并安装  (如果没有安装make请自行安装)

nginx命令的用法

cat /etc/nginx/conf.d/default.conf        (此路径为正式环境156的路径)  conf.d/的意思为附加文件同源文件效果一样

  • server {
  • listen 80;                          这个是80端口的
  • server_name www.chengshizhichuang.com cszc.top;      (域名)
  • client_max_body_size 100M;
  • location / {
  • proxy_pass http://192.168.1.134/;                  访问www.chengshizhichuang.com cszc.top转到此ip
  • }
  • proxy_set_header Host $host;
  • proxy_set_header X-Real-IP $remote_addr;
  • proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  • location /pay/ {
  • proxy_pass http://192.168.1.212:21612/pay/;             访问www.chengshizhichuang.com cszc.top/pay   转到此ip
  • }
  • location /publicgood/ {
  • proxy_pass http://192.168.1.212:21612/publicgood/;       同上
  • }
  • location /shared/ {
  • proxy_pass http://192.168.1.212:21612/shared/;          同上
  • }
  • location /zhyl/ {
  • proxy_pass http://192.168.1.121:12102/zhyl/;            同上
  • }
  • # location /pay/static/ {
  • # proxy_pass http://192.168.1.212:21612/pay/static/;        同上
  • # }
  • }
  • server {
  • listen 443;                                 443端口做了证书认证加密  但是直接访问域名时是不会自动跳到https上的  要手动加https 之前做的转发因为有的80端口转发不过来所以就没做了 
  • server_name www.chengshizhichuang.com cszc.top;
  • client_max_body_size 100M;
  • ssl on;
  • ssl_certificate /etc/nginx/ssl/www.chengshizhichuang.com.crt;
  • ssl_certificate_key /etc/nginx/ssl/www.chengshizhichuang.com.rsa;
  • ssl_session_timeout 5m;
  • ssl_protocols SSLv2 SSLv3 TLSv1;
  • ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
  • ssl_prefer_server_ciphers on;
  • location / {
  • proxy_pass http://192.168.1.134/;
  • }
  • location /pay/ {
  • proxy_pass http://192.168.1.212:21612/pay/;
  • }
  • location /zhyl/ {
  • proxy_pass http://192.168.1.121:12102/zhyl/;
  • }
  • location /shared/ {
  • proxy_pass http://192.168.1.212:21612/shared/;
  • }
  • }

Keepalived的安装及配置yum  -y  install keepliaved vim /etc/keepliaved/keepliaved.conf
  • global_defs {
  • notification_email {
  • [email protected].loc
  • }
  • notification_email_from Alexandre.[email protected].loc
  • smtp_server 192.168.200.1
  • smtp_connect_timeout 30
  • router_id 112
  • vrrp_skip_check_adv_addr
  • vrrp_strict
  • vrrp_garp_interval 0
  • vrrp_gna_interval 0
  • }
  • vrrp_script chk_http_port {
  • script "/opt/chk_nginx.sh"        设定一个监控nginx脚本链接nginx
  • interval 2
  • weight -5
  • fall 2
  • rise 1
  • }
  • vrrp_instance VI_1 {
  • state MASTER              从服务改为BACKUP
  • interface eth0              用ip  a    查看自己的网卡名
  • virtual_router_id 51
  • priority 100              优先值 从服务不能高于主
  • advert_int 1
  • authentication {
  • auth_type PASS
  • auth_pass 1111
  • }
  • virtual_ipaddress {
  • 192.168.1.157/24             # 虚拟vip
  • }
  • track_script {
  • chk_http_port
  • }
  • }
@@@分别在主备服务器/etc/keepalived目录下创建nginx_check.sh脚本,并为其添加执行权限chmod +x /opt/chk_nginx.sh。用于keepalived定时检测nginx的服务状态,如果nginx停止了,会尝试重新启动nginx,如果启动失败,会将keepalived进程杀死,将vip漂移到备份机器上。
vim /opt/chk_nginx.sh#!/bin/bashcounter=$(ps -C nginx --no-heading|wc -l)if [ "${counter}" = "0" ]; then    /usr/sbin/nginx                                        #尝试重新启动nginx    sleep 2                                                #睡眠2秒    counter=$(ps -C nginx --no-heading|wc -l)    if [ "${counter}" = "0" ]; then    killall keepalived                                      #启动失败,将keepalived服务杀死。将vip漂移到其它备份节点    fifi

chmod +x /opt/chk_nginx.sh

systemctl start  keepalived.service   启动keepalived ip  a  查看vip有没有和本地ip绑定如下

如果把keepalived关掉 vip就会调到另一个服务上


 

原文地址:https://www.cnblogs.com/xiaolei123/p/12172866.html

时间: 2024-09-30 07:03:38

keepalived高可用+nginx证书代理的相关文章

实践:在CentOS7.3部署 keepalived 高可用nginx(负载均衡)

背景: 既然有了Lvs+keepalived这样高性能的组合,那为何还要有Nginx+keepalived呢,keepalived的初衷就是为了Lvs而设计的,我们都知道Lvs是一个四层的负载均衡设备,虽然有着高性能的优势,但同时它却没有后端服务器的健康检查机制,keepalived为lvs设计了一系列的健康检查机制TCP_CHECK,UDP_CHECK,HTTP_GET等.同时lvs也可以自己写健康检查脚脚本.或者结合ldirectory来实现后端检测.但是固LVS始终无法摆脱它是一个四层设备

keepalived实现高可用nginx反向代理的简单案例

写在前面:如果此文有幸被某位朋友看见并发现有错的地方,希望批评指正.如有不明白的地方,愿可一起探讨. 案例拓扑图 安装keepalived和nginx 安装keepalived # yum -y install keepalived 创建nginx用户组及nginx用户 # groupadd -r nginx # useradd -g nginx -r nginx 编译安装nginx-1.4.7 # tar xf nginx-1.4.7.tar.gz  # cd nginx-1.4.7 # ./

4、keepalived高可用nginx负载均衡

keepalived: HTTP_GET        //使用keepalived获取后端real server健康状态检测 SSL_GET(https)  //这里以为这后端使用的是http协议 TCP_CHECK 下面演示基于TCP_CHECK做检测 # man keepalived    //查看TCP_CHECK配置段 # TCP healthchecker TCP_CHECK { # ======== generic connection options # Optional IP

Keepalived实现高可用Nginx反向代理和基于NAT的LVS及分析

1. 前言 keepalived是一个C语言开发的,能够基于Linux基础架构提供一个HA实现的软件.HA是基于VRRP协议实现,可以为LVS.Nginx.HAProxy等实现的LB提供高可用. 下图是keepalived的软件架构图 主要核心模块: Checkers:负责对Real Server进行健康检查. VRRP栈:实现了VRRP协议,实现了vrrp_sync_group扩展,不依赖于LVS可以独立的使用.例如下面第一个实验keepalived+nginx反代. IPVS Wrapper

Keepalived实现高可用Nginx反向代理

由于好久没有接触过负载相关的调试了复习一下 实验系统: (1)CentOS 6.5_x86_64: (2)共有二台主机,本实验以ip地址来命名主机,即10主机.11主机. 实验前提:防火墙和selinux都关闭,主机之间时间同步 实验软件:nginx-1.10.2-1.el6.x86_64.keepalived-1.2.13-5.el6_6.x86_64.httpd-2.2.15-59.el6.centos.x86_64为了方便实验只起了2台虚机方便测试,每台虚机上都安装nginx.keepal

keepalived高可用nginx

实验拓扑: 1.在两台realserver上配置web服务 2.keepalived配置 master的配置 global_defs {    notification_email {        [email protected]    }    notification_email_from [email protected]    smtp_server 127.0.0.1    smtp_connect_timeout 30    router_id node1 } vrrp_scri

Nginx反向代理、负载均衡, keepalived高可用

Nginx反向代理.负载均衡,  keepalived高可用 Nginx反向代理.负载均衡,  keepalived高可用 一.Nginx反向代理.负载均衡 1.什么是反向代理.负载均衡 严格的说,Nginx仅仅是作为Nginx Proxv反向代理使用的,因为这个反向代理功能表现的效果是负载均衡集群的效果,所以本文称之为Nginx负载均衡.那么,反向代理和负载均衡有什么区别呢? 普通负载均衡软件,例如大名鼎鼎的LVS,其实现的功能只是对请求数据包的转发(也可能会改写数据包).传递,其中DR模式明

Keepalived 高可用ipvs和nginx服务

Keepalived 高可用ipvs和nginx服务 ============================================================================ 概述: ============================================================================ 回顾: Virtual Server(虚拟服务器):  1.配置参数: ★虚拟服务器的配置格式: virtual_server I

配置Keepalived双实例高可用Nginx

我们知道Keepalived原生设计目的是为了高可用LVS集群的,但Keepalived除了可以高可用LVS服务之外,还可以基于vrrp_script和track_script高可用其它服务,如Nginx等.本篇主要演示如何使用Keepalived高可用Nginx服务(双实例),关于vrrp_script.track_script的更多介绍可以见上一篇博客<Keepalived学习总结>. 实验要求 ==> 实现Keepalived基于vrrp_script.track_script高可