IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> Istio - ingressgateway同时代理转发HTTP和TCP -> 正文阅读

[网络协议]Istio - ingressgateway同时代理转发HTTP和TCP

规则

同一个ingressgateway实例(Pod)的同一个端口只能代理一种协议,并且是针对所有名称空间的,以先创建的gateway资源为准。

场景

在一个集群中提供业务访问的HTTP服务,还有要连接到数据库等TCP服务。

istio版本说明

client version: 1.9.5
control plane version: 1.9.5
data plane version: 1.9.5 (17 proxies)

实施方案

1.?ingressgateway主进程增加新的监听端口,目前暂未找到方法。

2.?增加一个ingressgateway,http和tcp通过选择不同label分别绑定到不同的ingressgateway。

开始,使用方案2,配置IstioOperator资源清单:

vim file.yaml

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
? profile: default
? components:
? ? ingressGateways:

? ? ? #?修改原ingressgateway的配置(可选)
? ? ? - name: istio-ingressgateway
? ? ? ? k8s:
? ? ? ? ? nodeSelector:
? ? ? ? ? ? kubernetes.io/hostname:?node01
? ? ? ? ? tolerations:
? ? ? ? ? - key: fun
? ? ? ? ? ? value: special
? ? ? ? ? ? effect: NoExecute
? ? ? ? ? service:
? ? ? ? ? ? type: ClusterIP
? ? ? ? ? ? externalIPs:
? ? ? ? ? ? - 192.168.1.10

? ? ??#?创建一个新的ingressgateway
? ? ? - name: istio-ingressgateway-tcp
? ? ? ? label:
? ? ? ? ? istio: ingressgateway-tcp

? ? ? ? k8s:
? ? ? ? ? nodeSelector:
? ? ? ? ? ? kubernetes.io/hostname:?node02
? ? ? ? ? tolerations:
? ? ? ? ? - key: fun
? ? ? ? ? ? value: special
? ? ? ? ? ? effect: NoExecute
? ? ? ? ? service:
? ? ? ? ? ? type: ClusterIP
? ? ? ? ? ? externalIPs:
? ? ? ? ? ? - 192.168.1.11

?? ? ? ?enabled: true

部署集群:

istioctl install -f?file.yaml

注意事项:

1.?注意spec.profile指定你希望使用的基础配置?,可使用“istioctl profile list”指令查看当前支持的配置,如不显式指定默认为default。

2.?两个ingressgateway的name必须不一样,且自定义的那个需要使用label重新定义一个标签,用于供gateway资源对象选择。

3.?使用spec.components.ingressGateways.k8s做些个性化设置,如以上配置,指定了pod运行节点,如果节点设置了污点,还要tolerations设置容忍度;service使用externalIPs在指定的node节点上暴露对外访问端口。

4.?自定义的那个ingressgateway一定要配置“enabled: true”,否则不会创建。

分别创建两个gateway资源对象,通过spec.selector选择不同的ingressgateway实例:

参考官方手册

https://istio.io/latest/zh/docs/reference/config/istio.operator.v1alpha1/#GatewaySpec

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-07-13 17:51:11  更:2021-07-13 17:51:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 17:20:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码