K8S多节点情况下使用nginx负载ingress或者是istio域名服务的处理
K8S多节点情况下使用nginx负载ingress或者是istio域名服务的处理
背景
- 公司内部有一个自建的K8S测试集群.同事这边使用istio或者是ingress发布了一个域名服务.
- 公司这边的DNS管理比较严格,比较难以添加DNS记录,所以处理起来需要手动处理.
- 为了进行性能压测,希望域名能够平均的负载到K8S的3个worker节点中.
- 并且能够尽可能的减少客户端hosts文件的修改.
处理方式
- 最简单的处理是在nginx所在服务器,将istio后者是ingress 对应的worker节点添加到hosts中
vi /etc/hosts
添加 ip 虚拟域名
- 但是做了一个实现,发现/etc/hosts 并不能很好的实现 域名IP地址的轮询.
- 感觉还是需要用bind 添加一个域名关系来处理.
- 为了简单先用 hosts .至少 hsots 能够实现一定意义的高可用
原理说明
- 备注: 此处是根据自己的理解
ingress 在使用时 本质是利用 nginx的 virtual hosts的路由分发机制.
根据http 过来的是 server_name 进行区分.
如果是 serverA 那么走A服务, 如果是serverB 那么走B服务
其实就跟VPS实现同一个ip地址可以挂载多个域名是完全一样的技术路线.
nginx的处理
- 注意安装的时候需要 添加 with-stream 的方式来处理
- 对不修改 hosts 文件
vi /etc/hosts
添加
10.24.19.204 b2b.xxxx.com
10.24.19.205 b2b.xxxx.com
10.24.19.207 b2b.xxxx.com
nginx的模板为
worker_processes auto;
events {
multi_accept on;
use epoll;
worker_connections 1024;
}
stream {
upstream node_ingress {
least_conn;
server b2b.xxxx.com:8080 ;
}
server {
listen 0.0.0.0:80;
proxy_pass node_ingress;
proxy_timeout 10m;
proxy_connect_timeout 1s;
}
}
修改客户端机器的hosts
- 注意这里不能与k8s节点一致
c:\windows\system32\drivers\etc\hosts
添加内容
10.24.19.208 b2b.xxxx.com
- 浏览器打开即可
备注说明
- 注意理论上可以使用在正向代理来实现
- 注意可以使用bind9 搭建一个自建的dns实现路由的负载均衡.
- 注意nginx其实需要注意的地方挺多的. 需要逐步学习
K8S多节点情况下使用nginx负载ingress或者是istio域名服务的处理的更多相关文章
- Mac下配置Nginx负载均衡
1.首先在Mac下安装Nginx(可参考我的另一篇随笔http://www.cnblogs.com/malcolmfeng/p/6896703.html). 2.安装Tomcat,下载后,解压,bin ...
- windows下搭建nginx负载均衡
学习笔记,第一次记录避免忘记 首先介绍一下本地环境是windows2008 R2-64位. 1. 到nginx官网上下载最新稳定版的安装包,http://nginx.org/en/download. ...
- linux下配置nginx负载均衡例子
准备2台虚拟机: 分别在两个虚拟机上安装tomcat,并在服务器A安装nginx,其中nginx端口设置为了 70. 服务器A的tomcat安装目录: 服务器B的tomcat安装目录: 服务器A的ng ...
- windows 下设置nginx负载均衡
#user nobody; worker_processes ; #error_log logs/error.log; #error_log logs/error.log notice; #error ...
- 不停服务情况下升级nginx
第三方支付平台因安全问题对nginx做了升级操作,为了不影响业务,整个操作过程都不能停服务,因此对升级方法做出了要求.以下为我整理的生产环境实际操作方法,已在第三方支付平台上成功应用,希望对即将或者可 ...
- 在没有任何投票节点情况下将从节点转换为Primary节点脚本
cfg={ "_id": "rs01", "version": 2, "protocolVersion": Number ...
- Nginx负载均衡中后端节点服务器健康检查的操作梳理
正常情况下,nginx做反向代理,如果后端节点服务器宕掉的话,nginx默认是不能把这台realserver踢出upstream负载集群的,所以还会有请求转发到后端的这台realserver上面,这样 ...
- Nginx负载均衡深入浅出
nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态.静态页面的分离,可以按照轮询.ip哈希.URL哈希.权重等多种方式对后端服务器做负载均 ...
- Nginx负载均衡介绍
Nginx真心牛逼 nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态.静态页面的分离,可以按照轮询.ip哈希.URL哈希.权重等多种方式 ...
- nginx 负载均衡相关知识
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev ...
随机推荐
- 手把手教你使用ModelArts的自动学习识别毒蘑菇分类
摘要:本文介绍了ModelArts如何通过自动学习进行毒蘑菇的识别. 想当年,白雪公主吃了毒蘑菇,换来了白马王子的一吻.如果白雪公主没有吃毒蘑菇,还会遇到白马王子吗?张小白觉得不见得--说不定她会遇到 ...
- 华为云PB级数据库GaussDB(for Redis)介绍第四期:高斯 Geo的介绍与应用
摘要:高斯Redis的大规模地理位置信息存储的解决方案. 1.背景 LBS(Location Based Service,基于位置的服务)有非常广泛的应用场景,最常见的应用就是POI(Point of ...
- 火山引擎 DataTester 智能发布平台:智能化 A/B 实验,助力产品快速迭代
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在互联网竞争炙热的红海时代,精益开发高效迭代越来越成为成为产品竞争的利器.产品迭代过程中,如何保障高效的功能迭代安 ...
- 还在用 Excel 和 SQL?火山引擎 VeDI 这款产品帮你更快处理数据
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,并进入官方交流群 对大多数职场打工人来说,看数据.用数据一直是项有"门槛"的工作. 特别是在企业业务快速发展的背景下,为 ...
- Axure 获取验证码
拖两个矩形框,一个用来做文档输入,一个做获取验证码的按钮 设置全局变量OnLoadVariable的初如值为60 1.用例中的条件:当OnLoadVariable的值不等于0 2.用例中的步骤 禁用& ...
- Pycharts在测试工作中的应用
Pycharts在测试工作中的应用 pycharts是一个基于Python的数据可视化库,支持多种折线图.柱状图.饼图等.Pycharts底层依赖于Echarts pip install pyecha ...
- C# RSA 非对称加密
代码: RSAHelper.cs(RSA加密工具类): using System; using System.Security.Cryptography; using System.Text; nam ...
- 骨牌摆放问题 POJ 2411(状态压缩DP)
题目: 给你\(n*m(1<=n,m<=11)\)的方格矩阵,要求用1*2的多米诺骨牌去填充,问有多少种填充方法. 比如下图是对于如下2x6的方格矩阵,可能的填充方案之一. 该如何使用动态 ...
- 无需修改代码,用 fcapp.run 运行你的 REST 应用
作者 | 阿里云 Serverless 技术研发 落语 背景 阿里云函数计算产品在较早的时候支持了HTTP触发器能力,支持用户使用 HTTP 协议进行函数调用.函数计算后端通过一个共享的 APISer ...
- SpringBoot发布https服务
一.生成SSL证书 1.进入本地jdk的路径 cd D:\Program\jdk1.8.0_77\jre\lib\security cmd窗口生成证书HSoftTiger.keystore到D盘 ke ...