随笔分类 -  istio

摘要:Istio多集群(1)-多控制面 参考自官方文档。 复制控制面 本节将使用多个主集群(带控制面的集群)来部署Istio多集群,每个集群都有自己的控制面,集群之间使用gateway进行通信。 由于不使用共享的控制面来管理网格,因此这种配置下,每个集群都有自己的控制面来管理后端应用。为了策略执行和安全目 阅读全文
posted @ 2020-10-15 12:42 charlieroro 阅读(1155) 评论(0) 推荐(0) 编辑
摘要:Envoy 代理中的请求的生命周期 翻译自Envoy官方文档。 下面描述一个经过Envoy代理的请求的生命周期。首先会描述Envoy如何在请求路径中处理请求,然后描述请求从下游到达Envoy代理之后发生的内部事件。我们将跟踪该请求,直到其被分发到上游和响应路径中。 术语 Envoy会在代码和文档中使 阅读全文
posted @ 2020-09-19 20:39 charlieroro 阅读(1733) 评论(0) 推荐(0) 编辑
摘要:Istio中的流量配置 Istio注入的容器 Istio的数据面会在pod中注入两个容器:istio-init和istio-proxy。 Istio-init istio-init会通过创建iptables规则来接管流量: 命令行参数 -p 15001表示出向流量被iptable重定向到Envoy的 阅读全文
posted @ 2020-09-18 10:30 charlieroro 阅读(2639) 评论(0) 推荐(0) 编辑
摘要:Istio 的配置分析 Analyzer 的消息格式 istioctl analyze 命令提供了如下消息格式: <level> [<code>] (<affected-resource>) <message-details> 字段可以展开为: <resource-kind> <resource-n 阅读全文
posted @ 2020-09-07 13:48 charlieroro 阅读(1769) 评论(0) 推荐(1) 编辑
摘要:Istio的部署模型介绍 部署模型 当配置一个生产级别的Istio时,需要解决一些问题:如网格是单集群使用,还是跨集群使用?所有的服务会放到一个完全可达的网络中,还是需要网关来连接跨网络的服务?使用一个控制面(可能会跨集群共享一个控制面),还是使用多个控制面来实现高可用(HA)?所有的集群都连接到一 阅读全文
posted @ 2020-09-05 21:25 charlieroro 阅读(1425) 评论(0) 推荐(0) 编辑
摘要:Istio可观测性 Istio的可观测性包括metrics,日志,分布式链路跟踪以及可视化展示。下面主要介绍如何在istio中部署基于Prometheus的metrics监控,基于jaeger的链路跟踪和基于kiali的可视化界面。 Prometheus 配置说明 在istio网格中,每个组件都会暴 阅读全文
posted @ 2020-09-03 13:10 charlieroro 阅读(1338) 评论(2) 推荐(0) 编辑
摘要:Istio安全-授权 授权HTTP流量 本节展示如何在istio网格中授权HTTP流量。 部署Bookinfo。由于下例在策略中使用了principal和namespace,因此需要启用mutual TLS。 为使用HTTP流量的负载配置访问控制 本任务展示了如何使用istio的授权设置访问控制。首 阅读全文
posted @ 2020-09-01 16:09 charlieroro 阅读(1270) 评论(0) 推荐(1) 编辑
摘要:Istio 安全(概念) 通过将一个单一应用划分为多个原子服务的方式,可以提供更好的灵活性,可扩展性以及重用服务的能力。然而微服务对安全有特殊的要求: 抵御中间人攻击,需要用到流量加密 提供灵活的服务访问控制,需要用到TLS和细粒度访问策略 决定哪些人在哪些时间可以做哪些事,需要用到审计工具 为了解 阅读全文
posted @ 2020-08-31 11:26 charlieroro 阅读(1597) 评论(0) 推荐(0) 编辑
摘要:Istio的流量管理(实操三) 涵盖官方文档Traffic Management章节中的egress部分。 访问外部服务 由于启用了istio的pod的出站流量默认都会被重定向到代理上,因此对集群外部URL的访问取决于代理的配置。默认情况下,Envoy代理会透传对未知服务的访问,虽然这种方式为新手提 阅读全文
posted @ 2020-08-28 20:42 charlieroro 阅读(1870) 评论(0) 推荐(0) 编辑
摘要:Istio安全-认证 认证策略 本节会介绍如何启用,配置和使用istio的认证策略,了解更多关于认证的底层概念。 首先了解istio的认证策略和相关的mutual TLS认证概念,然后使用default配置安装istio。 配置 下面例子会创建两个命名空间foo和bar,以及两个服务httpbin和 阅读全文
posted @ 2020-07-15 17:18 charlieroro 阅读(1836) 评论(8) 推荐(1) 编辑
摘要:Istio安全-证书管理 注:本章更新至1.8版本 插入现有CA证书 本节展示了管理员如何使用现有的根证书来授权istio证书,签发证书和密钥,不使用Istio自动生成的证书。 默认情况下,istio的CA会生成一个自签的根证书和密钥,并使用它们签发负载证书。istio的CA也可以使用管理员指定的证 阅读全文
posted @ 2020-07-14 16:46 charlieroro 阅读(2316) 评论(0) 推荐(0) 编辑
摘要:Istio的运维-诊断工具 涵盖官方文档的诊断工具章节 使用istioctl命令行工具 首先可以通过日志或Introspection检查各个组件,如果不足以支持问题定位,可以参考如下操作: istioctl是一个可以用于调试和诊断istio服务网格的工具。Istio项目为Bash和ZSH运行下的is 阅读全文
posted @ 2020-06-09 19:59 charlieroro 阅读(3382) 评论(0) 推荐(0) 编辑
摘要:Istio的流量管理(实操二) 涵盖官方文档Traffic Management章节中的inrgess部分。 Ingress网关 在kubernetes环境中,kubernetes ingress资源用于指定暴露到集群外的服务。在istio服务网格中,使用了一种不同的配置模型,称为istio网关。一 阅读全文
posted @ 2020-05-25 14:23 charlieroro 阅读(2169) 评论(0) 推荐(0) 编辑
摘要:Istio的流量管理(实操一) 使用官方的Bookinfo应用进行测试。涵盖官方文档Traffic Management章节中的请求路由,故障注入,流量迁移,TCP流量迁移,请求超时,熔断处理和流量镜像。不含ingress和Egree,后续再补充。 部署Bookinfo应用 Bookinfo应用说明 阅读全文
posted @ 2020-05-14 14:55 charlieroro 阅读(1402) 评论(6) 推荐(0) 编辑
摘要:Istio的流量管理(概念) 涵盖istio官方文章的Traffic Management章节 概述 istio的流量路由规则可以简单地控制不同服务间的流量以及API调用。Istio在服务层面提供了断路器,超时,重试等功能,通过这些功能可以实现A/B测试,金丝雀发布,基于百分比的流量分割等,此外还提 阅读全文
posted @ 2020-05-11 15:31 charlieroro 阅读(6121) 评论(14) 推荐(1) 编辑
摘要:openshift 4.3 Istio的搭建 本文档覆盖了官方文档的Setup的所有章节 安装Istio 本次安装的Istio版本为1.7.0,环境为openshift 4.3 注:不建议使用openshift 1.11(即kubernetes 3.11)安装istio,可能会出现如下兼容性问题,参 阅读全文
posted @ 2020-05-09 14:44 charlieroro 阅读(1185) 评论(1) 推荐(1) 编辑