 Serverless Kubernetes - 理想,现实和未来-张维Serverless Kubernetes 理想,现实和未来 张维 阿里巴巴高级技术专家 观看视频回放 Serverless:关注应用而非基础设施 敏捷开发 极致弹性 成本优化 • 无需购买和安装机器 • 无需管理服务器 • 无需升级和更新OS • 快速部署和更新应用 • 快速发布 • “无限”容量 • 秒级弹性 • 更好的扩展性 • 更好的灵活性 • 按需创建 • 没有语言和库的限制 连接Kubernetes生态 连接Cloud Native生态 无厂商绑定风险 Serverless Container Landscape Serverless容器典型场景和客户价值 在线业务 弹性扩容 Serverless AI Serverless 大数据计算 CI/CD • 30s 500pod • 非预期突发流量 • 适用电商、在线教育等行业 • Spark/Presto Container Kernel containerd ACK on ECI • ECS + ECI混合部署:将long run应用运行在ECS上, 弹性和任务应用运行在ECI上。 • “无限”容量 • 极致弹性 • ECI 和 ECS Pod之间 互联互通(支持ClusterIP) ACK 集群 Pod Pod ECS Pod Pod Pod Pod ECI ECI ECI0 码力 | 20 页 | 2.27 MB | 1 年前3 Serverless Kubernetes - 理想,现实和未来-张维Serverless Kubernetes 理想,现实和未来 张维 阿里巴巴高级技术专家 观看视频回放 Serverless:关注应用而非基础设施 敏捷开发 极致弹性 成本优化 • 无需购买和安装机器 • 无需管理服务器 • 无需升级和更新OS • 快速部署和更新应用 • 快速发布 • “无限”容量 • 秒级弹性 • 更好的扩展性 • 更好的灵活性 • 按需创建 • 没有语言和库的限制 连接Kubernetes生态 连接Cloud Native生态 无厂商绑定风险 Serverless Container Landscape Serverless容器典型场景和客户价值 在线业务 弹性扩容 Serverless AI Serverless 大数据计算 CI/CD • 30s 500pod • 非预期突发流量 • 适用电商、在线教育等行业 • Spark/Presto Container Kernel containerd ACK on ECI • ECS + ECI混合部署:将long run应用运行在ECS上, 弹性和任务应用运行在ECI上。 • “无限”容量 • 极致弹性 • ECI 和 ECS Pod之间 互联互通(支持ClusterIP) ACK 集群 Pod Pod ECS Pod Pod Pod Pod ECI ECI ECI0 码力 | 20 页 | 2.27 MB | 1 年前3
 4-2-如何用OpenStack和K8s快速搭建一个容器和虚拟机组合服务的云平台-王昕Kubernetes的统一资源模型和 丰富的标签选择器 Kubernetes的架构 Ø Pod: 最小部署单元,可支持多容器镜像 Ø RC:控制Pod的个数和Pod的生命周期 Ø Service:服务入口,由Kube-proxy支持负载均衡 Ø 原生负载均衡,高可用方案 Kubernetes所支持的存储卷类型 Kubernetes最新支持的资源类型 OpenStack和K8s的集成系统 支持跨IaaS部署K8s集群 Compute Node Compute Node Controller Nodes Compute Node Compute Node Storage Nodes 多租户隔离的容器和 虚拟机组合网络 kube-proxy的负载均衡原理 对外发布服务——浮动IP模式 对外发布应用服务 利用端口映射节省IP 多用户共享Kubernetes集群 通过二级域名发布服务 覆盖网络(Overlay) 可行方案 IaaS层网络 PaaS层网络 适用场景 Calico Kuryr 不需要多租户隔离,大量使用容器技术,对性能 要求很高 Overlay Kuryr 需要多租户隔离,需要统一管理容器网络和虚拟 机网络,将容器用作轻量级虚拟机,对性能要求 较高 Overlay Calico 需要多租户隔离,对容器网络的管理独立于虚拟 机网络 Overlay Overlay 需要多租户隔离,对容器网络的管理独立于虚拟0 码力 | 38 页 | 3.55 MB | 1 年前3 4-2-如何用OpenStack和K8s快速搭建一个容器和虚拟机组合服务的云平台-王昕Kubernetes的统一资源模型和 丰富的标签选择器 Kubernetes的架构 Ø Pod: 最小部署单元,可支持多容器镜像 Ø RC:控制Pod的个数和Pod的生命周期 Ø Service:服务入口,由Kube-proxy支持负载均衡 Ø 原生负载均衡,高可用方案 Kubernetes所支持的存储卷类型 Kubernetes最新支持的资源类型 OpenStack和K8s的集成系统 支持跨IaaS部署K8s集群 Compute Node Compute Node Controller Nodes Compute Node Compute Node Storage Nodes 多租户隔离的容器和 虚拟机组合网络 kube-proxy的负载均衡原理 对外发布服务——浮动IP模式 对外发布应用服务 利用端口映射节省IP 多用户共享Kubernetes集群 通过二级域名发布服务 覆盖网络(Overlay) 可行方案 IaaS层网络 PaaS层网络 适用场景 Calico Kuryr 不需要多租户隔离,大量使用容器技术,对性能 要求很高 Overlay Kuryr 需要多租户隔离,需要统一管理容器网络和虚拟 机网络,将容器用作轻量级虚拟机,对性能要求 较高 Overlay Calico 需要多租户隔离,对容器网络的管理独立于虚拟 机网络 Overlay Overlay 需要多租户隔离,对容器网络的管理独立于虚拟0 码力 | 38 页 | 3.55 MB | 1 年前3
 高性能 Kubernetes 元数据存储 KubeBrain 的设计思路和落地效果-许辰K8s 元信息存储的需求 (3) 所以 etcd 为目前 K8s 唯一支持的存储 KubeBrain 架构 Kine KubeBrain KubeBrain 架构 • 主从架构 • 主负责写和事件分发 • 从负责读 • 底层对接分布式强一致性存储 • CAS 事务写 • 快照读 实现架构图 存储层 存储层 – 分布式 KV Store ByteKV • Multi Raft 数据格式 etcd KubeBrain 能否使用类似的格式? 1. 否 2. 底层存储引擎全局有序,有写热点那问题 Etcd 以 Revision 为 Key 内存 Btree 索引维护 key 和 revision 的映射关系 存储层 - 数据格式 KubeBrain 逻辑层 逻辑层 – 写 逻辑层 – Watch(1) Watch 机制本质上是一个消息队列系统 1. 可靠性 - 不重复、不丢失 不重复、不丢失 2. 顺序性 - 保证最终状态的一致性 3. 实时性 - 高性能 一定有一个单点对消息进行排序 采用主从架构 逻辑层 – Watch(2) 一主多从 1. 仅主节点负责写入和事件生成 2. 从节点只读 逻辑层 – Watch(3) • Master 内存中保留最近写入的 事件 • 写入滑动窗口记录并发写操作的 结果 • 消费滑动窗口中的数据实现有序 的 Event0 码力 | 60 页 | 8.02 MB | 1 年前3 高性能 Kubernetes 元数据存储 KubeBrain 的设计思路和落地效果-许辰K8s 元信息存储的需求 (3) 所以 etcd 为目前 K8s 唯一支持的存储 KubeBrain 架构 Kine KubeBrain KubeBrain 架构 • 主从架构 • 主负责写和事件分发 • 从负责读 • 底层对接分布式强一致性存储 • CAS 事务写 • 快照读 实现架构图 存储层 存储层 – 分布式 KV Store ByteKV • Multi Raft 数据格式 etcd KubeBrain 能否使用类似的格式? 1. 否 2. 底层存储引擎全局有序,有写热点那问题 Etcd 以 Revision 为 Key 内存 Btree 索引维护 key 和 revision 的映射关系 存储层 - 数据格式 KubeBrain 逻辑层 逻辑层 – 写 逻辑层 – Watch(1) Watch 机制本质上是一个消息队列系统 1. 可靠性 - 不重复、不丢失 不重复、不丢失 2. 顺序性 - 保证最终状态的一致性 3. 实时性 - 高性能 一定有一个单点对消息进行排序 采用主从架构 逻辑层 – Watch(2) 一主多从 1. 仅主节点负责写入和事件生成 2. 从节点只读 逻辑层 – Watch(3) • Master 内存中保留最近写入的 事件 • 写入滑动窗口记录并发写操作的 结果 • 消费滑动窗口中的数据实现有序 的 Event0 码力 | 60 页 | 8.02 MB | 1 年前3
 QCon北京2018/QCon北京2018-《Kubernetes-+面向未来的开发和部署》-Michael+Chen0 码力 | 42 页 | 10.97 MB | 1 年前3 QCon北京2018/QCon北京2018-《Kubernetes-+面向未来的开发和部署》-Michael+Chen0 码力 | 42 页 | 10.97 MB | 1 年前3
 全球架构师峰会2019北京/大数据/Kubernetes 运行大数据工作负载的探索和实践&mdashKubernetes 运行大数据工作负 载的探索和实践 Leibo Wang(wang.platform@Hotmail.com) Huawei CloudBU Principal Engineer 王雷博 Principal Software Engineer • Huawei(Now) - Cloud Native batch system (Volcano) development admission passed. 2. JobExController create Pods based on its replicas and templates. 3. vk-scheduler get the “notification” of Pod from apiserver. 4. vk-scheduler chooses one host for the Pod of JobEx0 码力 | 25 页 | 3.84 MB | 1 年前3 全球架构师峰会2019北京/大数据/Kubernetes 运行大数据工作负载的探索和实践&mdashKubernetes 运行大数据工作负 载的探索和实践 Leibo Wang(wang.platform@Hotmail.com) Huawei CloudBU Principal Engineer 王雷博 Principal Software Engineer • Huawei(Now) - Cloud Native batch system (Volcano) development admission passed. 2. JobExController create Pods based on its replicas and templates. 3. vk-scheduler get the “notification” of Pod from apiserver. 4. vk-scheduler chooses one host for the Pod of JobEx0 码力 | 25 页 | 3.84 MB | 1 年前3
 QCon北京2017/支撑海量业务的互联网架构/知乎基于 Kubernetes 的 Kafka 平台探索和实践知乎基于 Kubernetes 的 Kafka平台 探索和实践 知乎 ⽩白瑜庆 ⾃自我介绍 知乎技术平台⼯工程师 负责 Kafka 和数据库平台 曾在新浪和⾦金金⼭山云负责镜像流量量分析项⽬目 纲要 Kafka 在知乎的应⽤用 为什什么做基于 Kubernetes 的 Kafka 平台 基于 Kubernetes 的 Kafka 平台实践 Apache Kafka 分布式的流式数据平台 容错性 Broker Broker Broker Producer Consumer Topic Topic Topic Producer Consumer 平台承载知乎业务⽇日志、数据传输和消息队列列服务 平台线上稳定运⾏行行 基于 Kubernetes 的 Kafka 集群 13 个, 1000+ Topic 知乎技术平台重要的组件 Kafka 在知乎的应⽤用 平台概览 Kubernetes 问题驱动 • Kafka 资源规划不不合理理 • 单⼀一集群造成系统单点 • 不不区分集群和 Topic 等级,影响重要业务 • 业务与 Kafka 深度耦合 多 Kafka 集群⽅方式 根据 Topic 类型划分集群 同⼀一类型 Topic 的集群细分 • Topic 服务等级、容量量和规模划分 资源规划 多变需求引发集群规模增⻓长 • Broker, Topic 规模 服务器器资源利利⽤用率0 码力 | 34 页 | 2.64 MB | 1 年前3 QCon北京2017/支撑海量业务的互联网架构/知乎基于 Kubernetes 的 Kafka 平台探索和实践知乎基于 Kubernetes 的 Kafka平台 探索和实践 知乎 ⽩白瑜庆 ⾃自我介绍 知乎技术平台⼯工程师 负责 Kafka 和数据库平台 曾在新浪和⾦金金⼭山云负责镜像流量量分析项⽬目 纲要 Kafka 在知乎的应⽤用 为什什么做基于 Kubernetes 的 Kafka 平台 基于 Kubernetes 的 Kafka 平台实践 Apache Kafka 分布式的流式数据平台 容错性 Broker Broker Broker Producer Consumer Topic Topic Topic Producer Consumer 平台承载知乎业务⽇日志、数据传输和消息队列列服务 平台线上稳定运⾏行行 基于 Kubernetes 的 Kafka 集群 13 个, 1000+ Topic 知乎技术平台重要的组件 Kafka 在知乎的应⽤用 平台概览 Kubernetes 问题驱动 • Kafka 资源规划不不合理理 • 单⼀一集群造成系统单点 • 不不区分集群和 Topic 等级,影响重要业务 • 业务与 Kafka 深度耦合 多 Kafka 集群⽅方式 根据 Topic 类型划分集群 同⼀一类型 Topic 的集群细分 • Topic 服务等级、容量量和规模划分 资源规划 多变需求引发集群规模增⻓长 • Broker, Topic 规模 服务器器资源利利⽤用率0 码力 | 34 页 | 2.64 MB | 1 年前3
 Kubernetes开源书 -  周立03-使⽤Kubespray部署⽣产可⽤的Kubernetes集群(1.11.2) 04-K8s组件 05-Kubernetes API 06-理解K8s对象 07-Name 08-Namespace 09-Label和Selector 10-Annotation 11-K8s架构及基本概念 12-Master与Node的通信 13-Node 14-Pod 15-Replica Set 16-Deployment 18-Daemon Set 19-配置最佳实践 20-管理容器的计算资源 21-Kubernetes资源分配 22-将Pod分配到Node 23-容忍与污点 24-Secret 25-Pod优先级和抢占 26-Service 27-Ingress Resources 28-动态⽔平扩容 29-实战:使⽤K8s编排Wordpress博客 2 简介 Kubernetes开源书。不啰嗦了,JUST 3 什么是kubernetes Kubernetes是⼀个旨在⾃动部署、扩展和运⾏应⽤容器的开源平台 。 使⽤Kubernetes,您可以快速有效地回应客户需求: 快速、可预测地部署应⽤。 动态缩放您的应⽤。 ⽆缝地推出新功能。 仅对需要的资源限制硬件的使⽤ 我们的⽬标是构建⼀个⽣态系统,提供组件和⼯具以减轻在公共和私有云中运⾏应⽤程序的负担。 Kubernetes是 可移植:0 码力 | 135 页 | 21.02 MB | 1 年前3 Kubernetes开源书 -  周立03-使⽤Kubespray部署⽣产可⽤的Kubernetes集群(1.11.2) 04-K8s组件 05-Kubernetes API 06-理解K8s对象 07-Name 08-Namespace 09-Label和Selector 10-Annotation 11-K8s架构及基本概念 12-Master与Node的通信 13-Node 14-Pod 15-Replica Set 16-Deployment 18-Daemon Set 19-配置最佳实践 20-管理容器的计算资源 21-Kubernetes资源分配 22-将Pod分配到Node 23-容忍与污点 24-Secret 25-Pod优先级和抢占 26-Service 27-Ingress Resources 28-动态⽔平扩容 29-实战:使⽤K8s编排Wordpress博客 2 简介 Kubernetes开源书。不啰嗦了,JUST 3 什么是kubernetes Kubernetes是⼀个旨在⾃动部署、扩展和运⾏应⽤容器的开源平台 。 使⽤Kubernetes,您可以快速有效地回应客户需求: 快速、可预测地部署应⽤。 动态缩放您的应⽤。 ⽆缝地推出新功能。 仅对需要的资源限制硬件的使⽤ 我们的⽬标是构建⼀个⽣态系统,提供组件和⼯具以减轻在公共和私有云中运⾏应⽤程序的负担。 Kubernetes是 可移植:0 码力 | 135 页 | 21.02 MB | 1 年前3
 腾讯云 Kubernetes 高性能网络技术揭秘——使用 eBPF 增强 IPVS 优化 K8s 网络性能-范建明TKE使用eBPF优化 k8s service Jianmingfan 腾讯云 目录 01 Service的现状及问题 优化的方法 02 和业界方法的比较 性能测试 03 04 解决的BUG 未来的工作 05 06 01 Service的现状及问题 什么是k8s Service • 应用通过固定的VIP访问一组pod,应用对Pod ip变化 无感知 • 本质是一个负载均衡器 ClusterIP提供集群内的访问 • NodePort 提供集群外部的访问 iptables mode • 在netfilter pre-routing阶段做DNAT • 在netfilter post-routing阶段做SNAT • 每个service 添加一条或多条rules。使用数组管理rules。 • 仅支持随机的调度算法 • kube-proxy代码实现比较简单 • IPVS 绕过conntrack 技术创新点二 • 在linux traffic control上挂一段eBPF 代码,在网卡出报文之前做SNAT • 尽量将大部分代码放在eBPF中,方便升级和维护。 • eBPF loader 创建eBPF map时,将map的id 传给IPVS内核模块 • 在ip_vs_new_conn 时,插入eBPF map • (protocol, clientip:cport0 码力 | 27 页 | 1.19 MB | 9 月前3 腾讯云 Kubernetes 高性能网络技术揭秘——使用 eBPF 增强 IPVS 优化 K8s 网络性能-范建明TKE使用eBPF优化 k8s service Jianmingfan 腾讯云 目录 01 Service的现状及问题 优化的方法 02 和业界方法的比较 性能测试 03 04 解决的BUG 未来的工作 05 06 01 Service的现状及问题 什么是k8s Service • 应用通过固定的VIP访问一组pod,应用对Pod ip变化 无感知 • 本质是一个负载均衡器 ClusterIP提供集群内的访问 • NodePort 提供集群外部的访问 iptables mode • 在netfilter pre-routing阶段做DNAT • 在netfilter post-routing阶段做SNAT • 每个service 添加一条或多条rules。使用数组管理rules。 • 仅支持随机的调度算法 • kube-proxy代码实现比较简单 • IPVS 绕过conntrack 技术创新点二 • 在linux traffic control上挂一段eBPF 代码,在网卡出报文之前做SNAT • 尽量将大部分代码放在eBPF中,方便升级和维护。 • eBPF loader 创建eBPF map时,将map的id 传给IPVS内核模块 • 在ip_vs_new_conn 时,插入eBPF map • (protocol, clientip:cport0 码力 | 27 页 | 1.19 MB | 9 月前3
 可觀測性 (Observability)
在 Kubernetes Day2
Operation的考量與實踐顯、最緊迫的挑戰與 Day 0 和 Day 1 有關 • 推動 Kubernetes 的動力通常是: • 提高開發人員的敏捷性 • 提高開發人員的開發速度 • 通過讓開發人員訪問自助服務配置 來消除開發過程中的摩擦 6 Click to edit Master title style 7 什麼是 Kubernetes Day 2 • 速度和敏捷性的顯著提高,從每月部 署轉變為每日部署。 署轉變為每日部署。 • 但是應用程序的生命週期不會在部署 時結束。任何應用程序最長的生命週 期階段是需要對其進行監控、升級和 保護的生產階段。 • Kubernetes Day 2 Operation 對於 Kubernetes 的持續成功至關重要, 但在急於部署時可能會被忽略。 7 Click to edit Master title style 8 Challenge of Kubernetes Click to edit Master title style 9 Kubernetes Day2 Ops 要作那些事? • 集群標準化和生命週期管理 • 安全訪問和環境隔離 • 維運可觀察性和流程透通性 • 治理與合規 • 持續第三方元件整合和維護 9 Ref. Use Platform Engineering to Implement DevOps Workflows with0 码力 | 30 页 | 3.01 MB | 1 年前3 可觀測性 (Observability)
在 Kubernetes Day2
Operation的考量與實踐顯、最緊迫的挑戰與 Day 0 和 Day 1 有關 • 推動 Kubernetes 的動力通常是: • 提高開發人員的敏捷性 • 提高開發人員的開發速度 • 通過讓開發人員訪問自助服務配置 來消除開發過程中的摩擦 6 Click to edit Master title style 7 什麼是 Kubernetes Day 2 • 速度和敏捷性的顯著提高,從每月部 署轉變為每日部署。 署轉變為每日部署。 • 但是應用程序的生命週期不會在部署 時結束。任何應用程序最長的生命週 期階段是需要對其進行監控、升級和 保護的生產階段。 • Kubernetes Day 2 Operation 對於 Kubernetes 的持續成功至關重要, 但在急於部署時可能會被忽略。 7 Click to edit Master title style 8 Challenge of Kubernetes Click to edit Master title style 9 Kubernetes Day2 Ops 要作那些事? • 集群標準化和生命週期管理 • 安全訪問和環境隔離 • 維運可觀察性和流程透通性 • 治理與合規 • 持續第三方元件整合和維護 9 Ref. Use Platform Engineering to Implement DevOps Workflows with0 码力 | 30 页 | 3.01 MB | 1 年前3
 2.2.4 基于Kubernetes的私有云实战公司当前技术现状 02 私有云建设⽅案 03 私有云建设收益 04 遇到的问题 05 未来规划 06 为什么要做私有云? 公司规模扩⼤⾯临的常态问题 • ⾼速增⻓的业务和低下的资源利⽤率 • 需要⾼效的扩缩容和部署效率 • 复杂的业务场景带来了层出不穷的异构机型 • ⾼昂的机房成本投⼊ 公司当前的技术现状 微服务现状 •服务数量暴涨 •资源需求暴涨 •部署效率急需提高 •研发期望独占资源 服务治理现状 •Homebrew microservice •配置手工管理 •L7划分不清,耦合业务逻辑 •SDK能发现grpc发现不了http 部署环境现状 •复杂的环境管理和大量的AB服 务产生了复杂的部署系统 •AB服务是中短期资源消耗型服 务,要求交付快释放快 上云前的现状 •大量物理机部署 •技术栈单一,90%为golang •最多时有200个AB服务,均单独部署 •配置文件 容器方案 •Supervisord守护其它进程 •通过ssh登陆 •集成大量工具 •使用方式与物理机无异 问题:上容器有多大性能损失? 没有频繁的磁盘访问的应用容器和本地进程无异,网络为主要开消 想要的网络方案 •全网能够互通 •简单能掌控 •后续能定制 •尽量减少链路时延 琳琅满目的网络方案 •Flannel •Calico •Cilium0 码力 | 47 页 | 10.67 MB | 1 年前3 2.2.4 基于Kubernetes的私有云实战公司当前技术现状 02 私有云建设⽅案 03 私有云建设收益 04 遇到的问题 05 未来规划 06 为什么要做私有云? 公司规模扩⼤⾯临的常态问题 • ⾼速增⻓的业务和低下的资源利⽤率 • 需要⾼效的扩缩容和部署效率 • 复杂的业务场景带来了层出不穷的异构机型 • ⾼昂的机房成本投⼊ 公司当前的技术现状 微服务现状 •服务数量暴涨 •资源需求暴涨 •部署效率急需提高 •研发期望独占资源 服务治理现状 •Homebrew microservice •配置手工管理 •L7划分不清,耦合业务逻辑 •SDK能发现grpc发现不了http 部署环境现状 •复杂的环境管理和大量的AB服 务产生了复杂的部署系统 •AB服务是中短期资源消耗型服 务,要求交付快释放快 上云前的现状 •大量物理机部署 •技术栈单一,90%为golang •最多时有200个AB服务,均单独部署 •配置文件 容器方案 •Supervisord守护其它进程 •通过ssh登陆 •集成大量工具 •使用方式与物理机无异 问题:上容器有多大性能损失? 没有频繁的磁盘访问的应用容器和本地进程无异,网络为主要开消 想要的网络方案 •全网能够互通 •简单能掌控 •后续能定制 •尽量减少链路时延 琳琅满目的网络方案 •Flannel •Calico •Cilium0 码力 | 47 页 | 10.67 MB | 1 年前3
共 76 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8














 
 