大规模微服务架构下的Service Mesh探索之路Mesh:istio的增强扩展版 Pilot Auth Mixer Envoy Pilot Auth Mixer Golang Sidecar Istio现有架构 Sofa Mesh架构 1. 用Golang开发 Sidecar,替代Envoy 2. Mixer被部分合 并进入Sidecar 3. Pilot/Auth 做扩展和增强 Control plane Control plane Data Data plane Data plane Mixer架构设计 Architect2Golang版Sidecar Pilot Auth Golang Sidecar Mixer XDS API Mixer Service HTTP/1.1 HTTP/2 Sofa RPC ü 参照Envoy的设计 ü 实现XDS API ü 兼容Istio ü 支持HTTP/1.1和HTTP/2 1和HTTP/2 ü 扩展Sofa/Dubbo/HSF Dubbo RPC HSF RPC最大的改变:合并部分Mixer功能 Pilot Auth Mixer Golang Sidecar Mixer ü Mixer三大功能: • Check – 同步阻塞 • Quota – 同步阻塞 • Report – 异步批量 ü 合并Check和Quota ü Report暂时保留在Mixer中0 码力 | 37 页 | 7.99 MB | 6 月前3
Istio Security Assessmentaccessible to anyone within a default cluster. • The Envoy Proxy admin port is exposed via the Istio sidecar and would allow a malicious workload to override or compromise their own Istio configuration. Strategic Configuration 5 Cryptography 1 Data Exposure 3 Data Validation 2 Component Breakdown Istio 10 Istio Sidecar 3 Istioctl 2 Pilot 3 Key Critical High Medium Low Informational 3 | Google Istio Security Assessment Medium Default Sidecar Image Not Hardened 001 Low The Sidecar Does Not Use Apparmor/Seccomp By Default 005 Low Insecure File Permissions Set 007 Low Istio Client-Side Bypasses 014 Low Sidecar Envoy Administrative0 码力 | 51 页 | 849.66 KB | 1 年前3
Istio is a long wild river: how to navigate it safelyStabilizing Istio ● Istio sidecar proxy specifications ● Kubernetes shortcomings with sidecar containers ○ Controlling containers lifecycle ○ Autoscaling pods with sidecar containers ● Are you prepared Guardrails for Istio 11 Istio sidecar proxy specifications Stabilizing Istio Pod App container Sidecar container All incoming traffic must flow through the sidecar first when entering the pod All outgoing traffic must flow through the sidecar before leaving the pod 12 What happens when the sidecar container is not ready? Stabilizing Istio Pod App container Sidecar container (not running) The0 码力 | 69 页 | 1.58 MB | 1 年前3
Service Mesh 在蚂蚁金服生产级安全实践Mesh Meetup #6 广州站基于 Secret Discovery Service Sidecar 的证书管理方案 使用可信身份服务构建敏感数据下发通道 Service Mesh Sidecar 的 TLS 生产级落地实践 分享内容基于 Secret Discovery Service Sidecar 的证书管理方案 Kubernetes Secret 证书管理流程 在 Kubernetes Secret 更新时,Sidecar 需要通过热重启方式重新加载,成本高昂基于 Secret Discovery Service Sidecar 的证书管理方案 Envoy SDS 证书管理流程 Secret Discovery Service 是 Envoy 提出的 Sidecar 证书管理方案,方案的核心流程在于引入 SDS Server 进行密钥管理和分发,Sidecar 通过 gRPC 请求获取证书,并利用 请求获取证书,并利用 gRPC stream 能力实现证书动态轮转。 当然,Sidecar 和 SDS Server 的通信也需要保证自身的通信安全,存在以下两种方案: Sidecar 与 SDS Server 采用 mTLS 通信,采用静态证书方案,通过 Secret Mount 方式获取通信证书 Sidecar 与 SDS Server 采用 UDS 方式实现纯内存通信,不需要使用证书。基于0 码力 | 19 页 | 808.60 KB | 6 月前3
OpenShift Container Platform 4.8 Service Mesh6. 准备安装 SERVICE MESH 1.7. 安装 OPERATOR 1.8. 创建 SERVICEMESHCONTROLPLANE 1.9. 在服务网格中添加服务 1.10. 启用 SIDECAR 注入 1.11. 升级 SERVICE MESH 1.12. 管理用户和配置集 1.13. 安全性 1.14. 管理服务网格中的流量 1.15. 指标、日志和追踪 1.16. 性能和可扩展性 DaemonSet 重命名 在此发行版本中,istio-node DaemonSet 被重命名为 istio-cni-node,以匹配上游 Istio 中的名称。 1.2.2.4.5. Envoy sidecar 网络更改 Istio 1.10 更新了 Envoy,默认使用 eth0 而不是 lo 将流量发送到应用程序容器。 1.2.2.4.6. Service Mesh Control Plane ServiceMeshControlPlane 更新时重新创建,则该网关会被删除且永远不会重新创建。 OSSM-1168 当以单个 YAML 文件形式创建服务网格资源时,Envoy proxy sidecar 不会可靠地注 入 pod。当单独创建 SMCP、SMMR 和 Deployment 资源时,部署可以正常工作。 OSSM-1052 在为服务网格 control plane 中为 ingressgateway0 码力 | 344 页 | 3.04 MB | 1 年前3
OpenShift Container Platform 4.8
Web 控制台项目,它在不需要修改服务代码的情况下,为现有的分 布式应用程序添加了一个透明的层。您可以在服务中添加对 Red Hat OpenShift Service Mesh 的支持,方 法是将一个特殊的 sidecar 代理服务器部署到用于处理不同微服务之间的所有网络通讯的环境中。您可以 使用 control plane 功能配置和管理 Service Mesh。 Red Hat OpenShift Service pod,则不会进行 sidecar 注入。在创建 pod OpenShift Container Platform 4.2 Service Mesh 6 MAISTRA-453 如果创建新项目并立即部署 pod,则不会进行 sidecar 注入。在创建 pod 前,operator 无法添加 maistra.io/member-of ,因此必须删除 pod 并重新创建它以执行 sidecar 注入操作。 项目,它在不需要修改服务代码的情况下,为现有的分 布式应用程序添加了一个透明的层。您可以在服务中添加对 Red Hat OpenShift Service Mesh 的支持,方 法是将一个特殊的 sidecar 代理服务器部署到用于处理不同微服务之间的所有网络通讯的服务网格中。您 可以使用 control plane 功能配置和管理 Service Mesh。 Red Hat OpenShift Service0 码力 | 87 页 | 1.58 MB | 1 年前3
蚂蚁金服Service Mesh渐进式迁移方案非k8s上 不是Service Mesh形态 部署在K8s上 非SM 部署在 非k8s上 Service Mesh (Sidecar模式) 部署在K8s上 Service Mesh (Istio模式) 部署在K8s上 Service Mesh (Sidecar模式) 部署在 非k8s上 Service Mesh (Istio模式) 应用终极形态 应用现状 1 1 1 2 2 2 3 4 4 4 比较理想,绝大部分 投入最终都将保留 Service Mesh (Sidecar模式) Service Mesh (Istio模式) 带完善的控制 平面,如Istio 只有Sidecar, 直接集成周边 不现实 Istio的非k8s支 持投入产出比 太差 背景1:原生Istio无法支撑我们的规模 背景2:k8s(Sigma3.1)将加快普及 铺开,快速会师ü 和路线1的核心差别 • 是先上k8s,还是先上Service Mesh • 而且是终极形态的Service Mesh(意味着更偏离目标) ü 好处是第一步(非k8s上向Sidecar模式演进)非常自然 • 容易落地 • 快速达成短期目标 ü 缺点是再往后走 • 由于没有k8s的底层支持,就不得不做大量工作 • 尤其istio的非k8s支持,工作量很大 • 而这些投入,在最终迁移到k8s时,又被废弃0 码力 | 40 页 | 11.13 MB | 6 月前3
Dapr july 2020 security audit reportto RCE (High) DAP-01-003 WP1: HTTP Parameter Pollution through invocation (Low) DAP-01-004 WP1: Sidecar injector API exposes sensitive client certificates (High) DAP-01-005 WP2: Inadequate separation leads to cluster takeover (Critical) DAP-01-006 WP2: Cross-Site Request Forgery into local Dapr sidecar (Medium) DAP-01-008 WP2: Dapr allows extraction of Kubernetes secrets by default (High) DAP-01-010 Missing authentication from Dapr API to application (Medium) Miscellaneous Issues DAP-01-001 WP1: Sidecar allows MDNS probes to docker network (Info) DAP-01-007 WP2: HTTP Parameter Pollution in Azure SignalR0 码力 | 19 页 | 267.84 KB | 1 年前3
OpenShift Container Platform 4.6 分布式追踪使用 Elasticsearch 管理证书 3.2.5.7. 查询配置选项 3.2.5.8. Ingester 配置选项 3.2.6. 注入 sidecar 3.2.6.1. 自动注入 sidecar 3.2.6.2. 手动注入 sidecar 3.3. 配置和部署分布式追踪数据收集 3.3.1. OpenTelemetry Collector 配置选项 3.3.2. 验证部署 3.3 TRACING-2009 已更新 Jaeger Operator,使其包含对 Strimzi Kafka Operator 0.23.0 的支持。 TRACING-1907 Jaeger 代理 sidecar 注入失败,因为应用程序命名空间中缺少配置映射。因为 OwnerReference 字段设置不正确,配置映射会被自动删除,因此应用程序 pod 不会超过 "ContainerCreating" Elasticsearch Operator 无法与所 有 Elasticsearch 集群通信。 在使用 Istio sidecar 时,在 Agent 和 Collector 间的连接会出现 TRACING-1300 失败。对 Jaeger Operator 的更新默认启用了 Jaeger sidecar 代理和 Jaeger Collector 之间的 TLS 通信。 {"level":"warn","ts":16424388800 码力 | 59 页 | 572.03 KB | 1 年前3
Dapr september 2023 security audit reporta component that is not enabled by default. The vulnerability had the potential to crash a Dapr sidecar with an out-of-memory denial of service attack vector. We found the vulnerability a�er performing Kubernetes, Dapr is deployed as a sidecar container in the same pod as the userʼs application. When running Dapr on a virtual machine, Dapr runs as a separate sidecar process. In both cases, the application through HTTP or gRPC calls: If the user has multiple applications running with Dapr, each has a sidecar next to it: Dapr comes with a set of built-in components - a form of cloud-native primitives - that0 码力 | 47 页 | 1.05 MB | 1 年前3
共 113 条
- 1
- 2
- 3
- 4
- 5
- 6
- 12













