IstioMeetupChina 服务网格热升级技术分享IstioMeetup 服务网格数据平面热升级技术分享 ServiceMesh Data-Plane Hot-Upgrade 阿里云服务网格团队 – 史泽寰 • 为什么需要服务网格数据面热升级 • 实现热升级 • 实践热升级 目录 Catalog 2 为什么需要服务网格数据面热升级 Why do we need Hot-Upgrade for ServiceMesh Data-Plane 造成请求失败,影响业务质量 • 重启Pod导致业务容器也被重启,需要执行重新初始化 • 不增加workload数量升级,则服务容量受损 • 增加workload保持服务容量不变,应对大规模场景难以在扩容规模和操作便捷度上取 得令人满意的平衡 传统Sidecar升级方式的缺点 3 为什么需要服务网格数据面热升级 Why do we need Hot-Upgrade for ServiceMesh Data-Plane Data-Plane • 只替换/重启Sidecar • 替换/重启过程中进/出不会出现请求失败,连接失败 • 易于运维,可以控制升级策略 理想的Sidecar升级 4 • 为什么需要服务网格数据面热升级 • 实现热升级 • 实践热升级 目录 Catalog 5 • Envoy热重启 • 以Epoch + 1的方式启动新实例,触发热重启 • ListenSocket转移到新实例 •0 码力 | 14 页 | 2.25 MB | 1 年前3
OpenShift Container Platform 4.14 Operator任务: 管理自定义目录。 允许非集群管理员安装 Operator。 从 OperatorHub 安装 Operator。 查看 Operator 状态。 管理 Operator 条件。 升级已安装的 Operator。 删除已安装的 Operator。 OpenShift Container Platform 4.14 Operator 4 配置代理支持。 在受限网络中使用 Operator Kubernetes 环境中(如 OpenShift Container Platform)监控软件的运行情况,并根据 软件的当前状态实时做出决策。Advanced Operator 被设计为用来无缝地处理升级过程,并对出现的错误 自动进行响应,而且不会采取“捷径”(如跳过软件备份过程来节省时间)。 从技术上讲,Operator 是一种打包、部署和管理 Kubernetes 应用程序的方法。 Kubernetes Kubernetes 上运行的应用程序。可将 Operator 看成管理 Kubernetes 中这类应用程序的运行时。 2.1.1. 为什么要使用 Operator? Operator 可以: 重复安装和升级。 持续对每个系统组件执行运行状况检查。 无线 (OTA) 更新 OpenShift 组件和 ISV 内容。 汇总现场工程师了解的情况并将其传输给所有用户,而非一两个用户。 为什么在 什么在0 码力 | 423 页 | 4.26 MB | 1 年前3
Zabbix 5.0 Manual. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 7 升级步骤 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670 10 Zabbix 5.0.0 升级说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674 11 Zabbix 5.0.1 升级说明 . . . . . . . . . . . . . . . . . . . . . . . . . . 676 12 Zabbix 5.0.2 升级说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676 13 Zabbix 5.0.3 升级说明 . . . . . . . . . . . . . . . . . .0 码力 | 2715 页 | 28.60 MB | 1 年前3
Zabbix 5.2 Manual. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 6 升级步骤 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 想用下划线替换监控项 key 中的所有空格,因为空格只在老版本中起作用,而在 3.0 版本的监控项 key 中,空格不是一个有效 的标示符(或者因为其它需要大量修改监控项 key 的场景),应该如何做以及有哪些注意事项? A: 可以使用数据库更新语句用下划线替换所有出现的空格: update items set key_=replace(key_,’ ’,’_’); 触发器可以使用这些监控项而不需要额外的改动,但是需要修改以下位置的监控项引用: 信 息, 监 控 项 vm.memory.size[available] 在触发器中使用。 Note: 参看本页底部” 另外见” 部分关于在不同的操作系统中内存计算的更多详细信息。 特定系统的注意事项 • 在 Solaris 中 available and free 是一样的。 • 在 Linux 中 shared 只在 kernel 2.4 中起作用。 另见 1. 关于不同操作系统内存计算的详细信息0 码力 | 1725 页 | 11.53 MB | 1 年前3
Zabbix 6.0 Manual. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 7 升级步骤 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 17 6.0.7 升级说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 19 6.0.9 升级说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 20 6.0.10 升级说明 . . . . . . . . . . . . . . . . .0 码力 | 1741 页 | 22.78 MB | 1 年前3
OpenShift Container Platform 4.8 Service MeshSERVICE 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. 性能和可扩展性 1.17. 为生产环境配置 Mixer,则会阻止从 Service Mesh 2.0.x 升级到 2.1。 混合器插件需要移植到 WebAssembly 扩展。 1.2.2.12.5. 3scale WebAssembly Adapter(WASM) Mixer 现已正式删除,OpenShift Service Mesh 2.1 不支持 3scale 混合器适配器。在升级到 Service Mesh 2.1 之前,删除基于 Mixer notPaths 字段。 您的授权策略使用 ALLOW action + paths 字段或 DENY action + notPaths 字段特征。这些模 式只会导致意外的拒绝,而不是绕过策略。对于以上情况,升级是可选的。 注意 注意 路径规范化的 Red Hat OpenShift Service Mesh 配置位置与 Istio 配置不同。 1.2.2.23.2. 更新路径规范化配置 Istio0 码力 | 344 页 | 3.04 MB | 1 年前3
Python 标准库参考指南 3.10.15 5 其它实用工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637 16.4.6 升级 optparse 代码 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644 16.5 getopt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1271 23.2.1 背景、细节、提示、技巧和注意事项 . . . . . . . . . . . . . . . . . . . . . . . . . . 1276 23.2.2 针对扩展程序编写人员和嵌入 Python 运行的程序 . . . 实现以保证运行效率,参见: Objects/exceptions.c。其中一些 具有自定义内存布局,这使得创建继承自多个异常类型的子类成为不可能。一个类型的内存布局属于实 现细节并可能随着 Python 版本升级而改变,导致在未来可能产生新的冲突。因此,建议完全避免子类化 多个异常类型。 5.3 基类 下列异常主要被用作其他异常的基类。 exception BaseException 所有内置异常的基类。它不应该被用户自定义类直接继承0 码力 | 2072 页 | 10.39 MB | 10 月前3
Python 标准库参考指南 3.10.15 其它实用工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685 16.4.6 升级 optparse 代码 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692 16.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1362 23.2.1 背景、细节、提示、技巧和注意事项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1367 23.2.2 针对扩展程序编写人员和嵌入 Python 运行的程序 . 实现以保证运行效率,参见: Objects/exceptions.c。其中一些具有 自定义内存布局,这使得创建继承自多个异常类型的子类成为不可能。一个类型的内存布局属于实现细节并 可能随着 Python 版本升级而改变,导致在未来可能产生新的冲突。因此,建议完全避免子类化多个异常类 型。 5.3 基类 下列异常主要被用作其他异常的基类。 exception BaseException 所有内置异常的基类。它不应该被用户自定义类直接继承0 码力 | 2207 页 | 10.45 MB | 10 月前3
Python 标准库参考指南 3.11.10 7 其它实用工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684 16.4.8 升级 optparse 代码 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691 16.4.9 异常 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1363 23.2.1 背景、细节、提示、技巧和注意事项 . . . . . . . . . . . . . . . . . . . . . . . . . . 1369 23.2.2 针对扩展程序编写人员和嵌入 Python 运行的程序 . . . 实现以保证运行效率,参见: Objects/exceptions.c。其中一些 具有自定义内存布局,这使得创建继承自多个异常类型的子类成为不可能。一个类型的内存布局属于实 现细节并可能随着 Python 版本升级而改变,导致在未来可能产生新的冲突。因此,建议完全避免子类化 多个异常类型。 5.3 基类 下列异常主要被用作其他异常的基类。 exception BaseException 所有内置异常的基类。它不应该被用户自定义类直接继承0 码力 | 2248 页 | 11.10 MB | 10 月前3
Python 标准库参考指南 3.11.10 其它实用工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733 16.4.8 升级 optparse 代码 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 740 16.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1457 23.2.1 背景、细节、提示、技巧和注意事项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1463 23.2.2 针对扩展程序编写人员和嵌入 Python 运行的程序 . 实现以保证运行效率,参见: Objects/exceptions.c。其中一些具有 自定义内存布局,这使得创建继承自多个异常类型的子类成为不可能。一个类型的内存布局属于实现细节并 可能随着 Python 版本升级而改变,导致在未来可能产生新的冲突。因此,建议完全避免子类化多个异常类 型。 5.3 基类 下列异常主要被用作其他异常的基类。 exception BaseException 所有内置异常的基类。它不应该被用户自定义类直接继承0 码力 | 2399 页 | 11.19 MB | 10 月前3
共 33 条
- 1
- 2
- 3
- 4













