首页 > 系统相关 >k8s之keepalive+nginx高可用集群部署

k8s之keepalive+nginx高可用集群部署

时间:2023-02-21 16:14:06浏览次数:33  
标签:keepalived nginx systemctl k8smaster1 k8s root keepalive

1、安装nginx、keepalived

yum install nginx keepalived -y

2、更新nginx配置文件

stream {

log_format main '$remote_addr $upstream_addr - [$time_local] $status $upstream_bytes_sent';

access_log /var/log/nginx/k8s-access.log main;

upstream k8s-apiserver {

server 192.168.0.180:6443; # Master1 APISERVER IP:PORT

server 192.168.0.181:6443; # Master2 APISERVER IP:PORT

}

 

server {

listen 16443; # 由于nginx与master节点复用,这个监听端口不能是6443,否则会冲突

proxy_pass k8s-apiserver;

}

}
2.1如果安装报错,安装插件

 yum -y install nginx-all-modules.noarch

3、安装配置keepalived

keepalive配置,主从节点只有优先级的差异

[root@k8smaster1 keepalived]# vim /etc/keepalived/keepalived.conf
global_defs {

notification_email {

[email protected]

[email protected]

[email protected]

}

notification_email_from [email protected]

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id NGINX_MASTER

}

vrrp_script check_nginx {

script "/etc/keepalived/check_nginx.sh"

}

vrrp_instance VI_1 {

state MASTER #备机需要改为BACKUP

interface ens33 # 修改为实际网卡名

virtual_router_id 51 # VRRP 路由 ID实例,每个实例是唯一的

priority 100 # 优先级,备服务器设置 90需要低于100

advert_int 1 # 指定VRRP 心跳包通告间隔时间,默认1秒

authentication {

auth_type PASS

auth_pass 1111

}

# 虚拟IP

virtual_ipaddress {

192.168.0.199/24

}

track_script {

check_nginx

}

}

4、启动服务

在两个控制节点执行以下操作

[root@k8smaster1 ]# chmod +x /etc/keepalived/check_nginx.sh

[root@k8smaster1 ]# systemctl daemon-reload

[root@k8smaster1 ]# systemctl start nginx

[root@k8smaster1 ]# systemctl start keepalived

[root@k8smaster1 ]# systemctl enable nginx keepalived

[root@k8smaster1 ]# systemctl status keepalived

标签:keepalived,nginx,systemctl,k8smaster1,k8s,root,keepalive
From: https://www.cnblogs.com/dkzou/p/17141351.html

相关文章

  • Nginx系列---【配置文件中静态资源文件禁止通过目录查看】
    配置文件中静态资源文件禁止通过目录查看1.问题nginx作为文件服务器时,默认是可以通过目录路径查看该目录下的所有文件的,这样很不安全,容易造成静态资源泄露。2.方案lo......
  • K8SPod进阶资源限制以及探针
    一、Pod进阶1、资源限制当定义Pod时可以选择性地为每个容器设定所需要的资源数量。最常见的可设定资源是CPU和内存大小,以及其他类型的资源。当为Pod中的容器指......
  • k8s服务端二进制部署-kube-controller-manager
    本文章是 k8s二进制高可用集群部署 的分支。详细步骤请参考目录。二进制下载地址参考 k8s服务端二进制部署-kube-apiserver1.......
  • nginx.conf 配置解析及常用配置
    本文为博主原创,未经允许不得转载:nginx.conf 配置文件配置解析#定义Nginx运行的用户和用户组。默认nginx的安装用户为nobodyuserwwwwww;#启动进程,通常......
  • nginx 常用命令
    本文为博主原创,未经允许不得转载:1. 查看nginx进程ps-ef|grepnginx2. 平滑启动nginx:平滑启动的意思是在不停止nginx的情况下,重启nginx,重新加载配置文件,启动新的......
  • Nginx Location 深入剖析及动静分离简易配置
    本文为博主原创,未经允许不得转载:1. location 使用分析location是Nginx配置中的一个指令,用于访问的URL匹配,而在这个location中所配置的每个指令将会启动不......
  • 12 pipeline 风格发布项目到k8s
    书接上回:https://www.cnblogs.com/huningfei/p/17140068.html,上篇介绍了如何使用自由风格发布k8s项目,这次介绍如何使用pipeline发布k8s项目。一背景说明如果要使用pipe......
  • 11 使用自由风格发布k8s项目
    一背景说明新版的jenkins由于一些k8s插件发现没了,没法使用之前的方法发布了,这次不使用任何插件,直接使用自由风格发布。jenkins是使用docker启动的,k8s环境是基于1.23版本......
  • Nginx 系列 | (转)Nginx 上传文件:client_max_body_size 、client_body_buffer_size
    ​client_max_body_sizeclient_max_body_size默认1M,表示客户端请求服务器最大允许大小,在“Content-Length”请求头中指定。如果请求的正文数据大于client_max_body_size,H......
  • Nginx系列 | [转]Nginx 上传文件:client_max_body_size 、client_body_buffer_size
    ​client_max_body_sizeclient_max_body_size默认1M,表示客户端请求服务器最大允许大小,在“Content-Length”请求头中指定。如果请求的正文数据大于client_max_body_size,H......