Extending service mesh capabilities using a streamlined way based on WASM and ORAS或者从OCI注册库中拉取WebAssembly模块; ● oras cli类似于docker cli 10 在ACR EE中使用ORAS CLI ● 阿里云容器镜像服务企业版ACR EE作为企业级云原生应用制品管理平台, 提供容器镜像、Helm Chart以及符合OCI规范的制品的生命周期管理; ● oras login --username=<登录账号> acree-1-registry.cn- config.v1+json example- filter.wasm:application/vnd.module.wasm.content.layer.v1+wasm ○ Wasm Artifact镜像规范参考 ■ https://github.com/solo-io/wasm/blob/master/spec/README.md ■ https://istio.io/latest/blog/2020/wasmhub-istio/ filter; ○ 该asmwasm-controller使用HostPath方式挂载volume, 所以拉取的wasm filter会落 盘到对应的节点上; 15 创建私钥仓库登录Secret ● 获取私有仓库登录信息之后, 按照如下命令创建Secret ○ kubectl create secret generic asmwasm-cache -n istio-system --from-0 码力 | 23 页 | 2.67 MB | 1 年前3
探讨和实践基于Istio的微服务治理事件监控开发的流程 • 编写grpc服务端程序,接收来自mixer的数据,并实现自身业务逻辑 • 编写handler、instance、rule配置文件 • 编译打包adapter,上传至docker仓库 • 编写k8s的deployment和service配置文件 • 部署应用基于Mixer的二次开发Hanlder Handlers 。为适配器提供配置。例如,到后端的 URL 、证书、缓存选 Rules。将数据交付给适配器。 定义了一个特定的 Instance 何时调用一个特定的 Handler插件编译和镜像打包 插件的编译 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build - a -installsuffix cgo -o eventadapter 镜像制作的dockerfile FROM scratch ADD eventadapter /usr/bin/eventadapter0 码力 | 29 页 | 8.37 MB | 6 月前3
IstioMeetupChina 服务网格热升级技术分享• 能够对整个热升级流程中的镜像替换进行控制 实现热升级 Implement Hot-Upgrade 7 • Sidecar生命周期管理能力 • 启动两个Sidecar,以进行Envoy热重启的排水流程两个实例并存的阶段 • 能够对整个热升级流程中的镜像替换进行控制 • 更强大的生命周期管理组件 • 对需要热升级的Pod注入两个Container,Sidecar & Empty • 支持对热升级过程中Sidecar Container生命周期进行管理 实现热升级 Implement Hot-Upgrade 8 • Envoy热重启参数的协商 • PilotAgent需要使用正确的Epoch参数启动Envoy,才能触发热重启 • PilotAgent需要有从旧实例处得到Epoch的能力 – UDS • 接管StatusPort监听(15021) 实现热升级 Implement 阿里云服务网格热升级完整流程 • 修改SidecarSet,指定新版本镜像 • SidecarSet将EmptyContainer替换为新Sidecar镜像,新Sidecar镜像启动 • 新Envoy进程与老Envoy交互,开始进行热重启流程 • 最大排水时间到达,SidecarSet Controller将老Container替换为Empty镜像 • 热升级结束 10 • 为什么需要服务网格数据面热升级0 码力 | 14 页 | 2.25 MB | 1 年前3
全栈服务网格 - Aeraki 助你在
Istio 服务网格中管理任何七层流量next? 现阶段协议扩展方案面临的挑战: ● 在 Mesh 中支持一个七层协议的工作量较大: ○ 数据面:编写一个 Envoy filter 插件——流量管理(RDS、 负载均衡、熔断、流量镜像、故障注入等)、编解码 ○ 控制面:编写一个 Aeraki 插件——运维/流量管理策略 ● 非 HTTP 协议缺少 RDS 支持: ○ Listener 内嵌路由 ○ 修改内嵌路由后,Envoy 数据面:MetaProtocol Proxy 实现 RDS、负载均衡、熔 断等公共的基础能力 ○ 控制面:Aeraki + Istio 提供控制面管理,实现按请求 header 路由、灰度发布、地域感知LB、流量镜像等高级 流量管理能力。 ● 基于 MetaProtocol 框架扩展开发,只需要实现 encode、 decode 的少量接口即可在 Istio 中支持一个新的七层协议 ● 为七层协议如 Dubbo、Thrift #IstioCon MetaProtocol:数据面 ● MetaProtocol Proxy 中实现七层协议的通用逻辑:路由、Header Mutation、负载均衡、断路器、多路复用、流量镜像 等。 ● 基于 MetaProtocol 实现一个自定义协议时,只需要实现 Decode 和 Encode 扩展点的少量代码 (C++)。 ● 提供基于 WASM 和 Lua 的 L7 filter0 码力 | 29 页 | 2.11 MB | 1 年前3
Envoy原理介绍及线上问题踩坑stackcollapse-perf.pl out.perf > out.folded; flamegraph.pl out.folded > cpu.svg • 镜像修改 • 编译pilot-agent, envoy二进制后替换现有envoy镜像并配置到自定义deployment的image中, • Dockerfile: • From istio/proxyv2:1.9.0 COPY envoy “{concurrency: 6}“ #修改工作线程数,sidecar模式默认2 • sidecar.istio.io/proxyImage: “istio/proxyv2new:1.9.0“ #修改默认注入镜像 Copyright © Huawei Technologies Co., Ltd. All rights reserved. Page 26 华为ASM产品介绍(1) • 无需安装,一键启用,无侵入实现应用治理0 码力 | 30 页 | 2.67 MB | 1 年前3
Kubernetes容器应用基于Istio的灰度发布实践"/catalog1" } }, 一个典型的VirtualService Istio在华为云:Kubernetes全栈容器服务 应用运维管理 丰富可定制的容器应用立体化运维 容器镜像服务 容器镜像一站式构建、存储与交付 应用编排服务 应用云上自动化编排与设施管理 云容器实例 基于K8S的Serverless容器服务 云容器引擎 企业级高可靠、高性能K8S服务 服务网格 K8S原生Service0 码力 | 38 页 | 14.93 MB | 1 年前3
Kubernetes容器应用基于Istio的灰度发布实践"/catalog1" } }, 一个典型的VirtualService27 Istio在华为云:Kubernetes全栈容器服务 应用运维管理 丰富可定制的容器应用立体化运维 容器镜像服务 容器镜像一站式构建、存储与交付 应用编排服务 应用云上自动化编排与设施管理 云容器实例 基于K8S的Serverless容器服务 云容器引擎 企业级高可靠、高性能K8S服务 服务网格 K8S原生Service0 码力 | 34 页 | 2.64 MB | 6 月前3
Istio 与 Knative 踩坑实录业务为 go 语言或 nodejs 语言的简单接口 3.6 秒 额外内存占用 30~60 MB 为 queue-proxy 占用21/25 踩过的坑/问题 FAAS 实践进展 • 镜像源问题 • RevisionUnkown 状态(0.8版本) • Queue-proxy 内存增长(0.8版本) • Activator 重复创建并占用大量资源22/25 Knative 当前瓶颈0 码力 | 26 页 | 1.35 MB | 6 月前3
Istio is a long wild river: how to navigate it safelyGuardrails 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 before leaving the pod 12 What happens when the sidecar container is not ready? Stabilizing Istio Pod App container Sidecar container (not running) The incoming traffic is sank into the void void The outgoing traffic cannot leave the pod 13 What happens when the sidecar container is not ready? Stabilizing Istio ● 2 cases where it happens frequently: ○ During pod creation ○ During pod deletion0 码力 | 69 页 | 1.58 MB | 1 年前3
Istio Security AssessmentDefault Injected Init Container Requires Sensitive Capabilities 021 Low Execution of System Commands without Validation 008 Informational Weak Trust Boundary Between Workload Container and Proxy Sidecar security related configuration options but the only options included are how to “Harden Docker Container Images” and “Extending Self-Signed Certificate Lifetime”. There’s an op- portunity to highlight provided by istioctl does not enable seccomp or Apparmor by default which increases the chances of a container breakout affecting the host or the cluster. These security controls are also currently disabled0 码力 | 51 页 | 849.66 KB | 1 年前3
共 18 条
- 1
- 2













