k8s(九)ingress
k8s
- Ingress介绍
- Http代理
- Https代理
Ingress介绍
我们已经知道,Service对集群之外暴露服务的主要方式有两种:NodePort和LoadBalancer,但是这两种方式,都有一定的缺点:
- NodePort方式的缺点是会占用很多集群机器的端口,那么当集群服务变多的时候,这个缺点就愈发明显。
- LoadBalancer的缺点是每个Service都需要一个LB,浪费,麻烦,并且需要kubernetes之外的设备的支持。
基于这种现状,kubernetes提供了Ingress资源对象,Ingress只需要一个NodePort或者一个LB就可以满足暴露多个Service的需求,工作机制大致如下图所示:
ingress生成的nginx 只有一个端口 外界通过访问不通的域名 解析到内部的不通端口上
实际上,Ingress相当于一个七层的负载均衡器,是kubernetes对反向代理的一个抽象,它的工作原理类似于Nginx,可以理解为Ingress里面建立了诸多映射规则,Ingress Controller通过监听这些配置规则并转化为Nginx的反向代理配置,然后对外提供服务。
• Ingress:kubernetes中的一个对象,作用是定义请求如何转发到Service的规则。
• Ingress Controller:具体实现反向代理及负载均衡的程序,对Ingress定义的规则进行解析,根据配置的规则来实现请求转发,实现的方式有很多,比如Nginx,Contour,Haproxy等。
Ingress(以Nginx)的工作原理如下:
- 用户编写Ingress规则,说明那个域名对应kubernetes集群中的那个Service。
- Ingress控制器动态感知Ingress服务规则的变化,然后生成一段对应的Nginx的反向代理配置。
- Ingress控制器会将生成的Nginx配置写入到一个运行着的Nginx服务中,并动态更新。
- 到此为止,其实真正在工作的就是一个Nginx了,内部配置了用户定义的请求规则。
Ingress使用
环境准备
搭建Ingress环境
• 创建文件夹,并进入到此文件夹中:
mkdir ingress-controller
cd ingress-controller
• 获取ingress-nginx,本次使用的是0.30版本,网络不行,可以下载本人提供的
k8s(九)ingress相关推荐
- k8s!Ingress服务
文章目录 一 ingress 1.1ingress 介绍 1.2 ingress 的优势 1.3 Ingress-nginx工作原理 二.实验 2.1 创建ns 2.2 创建deploy.servic ...
- 企业入门实战--k8s之Ingress加密、认证以及地址重写
企业入门实战--k8s之Ingress加密.认证以及地址重写 一.Ingress 加密 二.Ingress 认证 三.Ingress 地址重定向 一.Ingress 加密 加密访问80默认重定向443 ...
- k8s部署ingress:使用heptio-contour部署ingress controller(通过sealos安装,非nginx-ingress类型)
详解 代码 概览 [root@m-1 ingress]# tree . ├── deploy-svc.sh ├── deploy.yaml ├── example-ingress.yaml ├── i ...
- k8s的ingress使用
ingress 可以配置一个入口来提供k8s上service从外部来访问的url.负载平衡流量.终止SSL和提供基于名称的虚拟主机. 配置ingress的yaml: 要求域名解析无误 要求servic ...
- k8s 安装ingress nginx controller 并部署.net core ingress服务
192.168.28.132 k8smaster 192.168.28.133 k8snode1 192.168.28.134 k8snode2 192.168.28.135 k8snode3 192 ...
- k8s之ingress
1.前期准备 1.1mandatory.yaml准备 使用mandatory.yaml安装.mandatory.yaml是ingress所有资源yml文件的集合,其中包configmap.yaml.n ...
- k8s 配置 ingress
目录 报错 部署 测试 备份 报错 如果 K8S 集群没有部署 ingress,那么创建 ingress 时会报错 Default backend: default-http-backend:80 ( ...
- k8s nginx ingress原理解读
阅读本文需要以下知识为前提 了解k8s基本架构,k8s基本资源清单 用自己的k8s实验环境 首先了解ingress解决了什么问题 k8s内部项目暴露外部访问,只用一个固定端口,暴露多个服务.相对于:L ...
- k8s的ingress treafik部署使用
简介 Kubernetes集群搭建完后需要一个外部边缘网关,也就是ingress,因为不可能所有的服务都提过service的nodepod暴露,如果服务多了,后面集群的端口可能会不够用,而且也没有像n ...
最新文章
- Conda安装Glossary词汇表
- cstring只获取到第一个数_一文讲透 Dubbo 负载均衡之最小活跃数算法
- 数据类型的sizeof
- TensorFlow学习笔记(二):快速理解Tutorial第一个例子-MNIST机器学习入门 标签: 机器学习SoftmaxTensorFlow教程 2016-08-02 22:12 3729人阅
- 代理模式中的静态代理
- 索引的概念和创建索引例子
- 使用dynDNS+openSSH+putty突破公司防火墙
- druid 非对称加密_springboot配置文件中mysql的密码进行加密
- Python 反爬篇之 ID 混淆
- linux centos history 查看命令历史 显示时间戳
- .Net Core WebApi集成JWT实现身份认证
- 基于大数据挖掘----浅谈大数据与大数据挖掘
- c语言中double占多少字节,double占几个字节?
- 【从零开始学架构-李运华】04|复杂度来源:高性能
- SQL Server实现列转行
- 配置文件(properties类)
- UE4 创建地形失败:Unreal Engine 4 Crash Reporter
- 学习退款数据分析思路
- 打电话降噪蓝牙耳机推荐,适合通勤使用的降噪蓝牙耳机分享
- 企业招聘普遍年龄35岁以下,那全国人过40岁都干什么去了?
热门文章