istio介绍补充以及使用篇

前言

前篇istio介绍了引入istio前以及k8s的关系,下文主要做出补充以及对它的使用

介绍istio各个组件

pilot:负责服务发现与路由规则(平面数据规则),pilot只提供服务注册接口,真正注册的工作还是会对接真正的注册中心nacos这些;
数据平面下发规则:
在这里插入图片描述
Mixer:该组件不是必须的,主要有两个功能,在调用服务时决定是否满足调用权限;收集上游和下游服务envoy日志;(这两个功能分别由mixer里的两个组件,policy和另一个组件来完成)
在这里插入图片描述
catedel:该组件也不是在架构中必须的。虽然mixer可以决定是否可以调用下游服务,但调用的安全是由catedel组件来保证;
在这里插入图片描述
gallery:该组件也不是必须的,不直接与数据平面提供业务能力,而是位于控制平面,给Mixer和pilot组件提供配置管理,它用到了MCP分发协议
在这里插入图片描述
side car-injector组件:是用于在创建pod时注入side car,有两种注入方式;
envoy组件:里面分为两个组件,负责服务发现(是指从pilot中服务发现);
在这里插入图片描述

创建istio的方式

分为手动注入和自动注入:

手动注入

指定deployment和service资源
在这里插入图片描述
然后用istio命令创建:
在这里插入图片描述
pod中有两个容器:
在这里插入图片描述
可以查看pod的创建流程:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

自动注入side car

在这里插入图片描述
先删除之前手动注入的istio
在这里插入图片描述
无论自动注入还是手动注入,原理都是在yaml文件追加代理容器side car,当然推荐使用自动注入;

使用istio做流量灰度

在这里插入图片描述
本来是v1版本,后面切换50%的流量到v3,于是执行reviews-50-v3.yaml,切换一段时间,发现没什么问题,就将全部流量切换到v3版本,于是执行reviews–v3.yaml。
reviews-50-v3.yaml:
在这里插入图片描述
每做出一个路由变动,都是执行一个新的yaml文件,而且路由的对象类型是virtualService。

如有需要收藏的看官,顺便也用发财的小手点点赞哈,如有错漏,也欢迎各位在评论区评论!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值