基于Kubernetes构建容器云平台的实践
- UCloud优刻得实验室负责⼈ 叶理灯集群管理理 版本管理理 配置管理理 链路路跟踪 负载均衡 ⾃自动容灾 持续集成 持续部署 灰度发布 服务注册/发现 关系数据库 KV存储 对象存储 块存储 DNS 消息队列列 API- Gateway 镜像仓库 统⼀一代码管理理 统⼀一编程框架 统⼀一通讯协议 统⼀一部署环境 计算平台/KUN 公共服务 存储平台 Think in Cloud . 北北京 基于RBAC实现 BGP 路路由协议宣告给接⼊入交换机 P o d 返 回 的 包 , 会 先 回 给 S e r v i c e Gateway,由于做了了SNAT,基于连接 追踪(conntrack),再返回给请求的 客户端。 每个接⼊入交换机下,选择两台节点作为Service Gateway,作为集群外部访问Service的⽹网关 Kube-proxy负责将发往 Service IP 的流量量转 发到对应的Pod。启动时将 发到对应的Pod。启动时将 kube-proxy的 masquerade-all 选项打开,这样 kube- proxy 转发给Pod的包会实现源地址转换 (SNAT) Service Gateway包括 bgpd 和 kube-proxy两部分。 Node Pod Pod Pod BGPD Kube-proxy masquerade-all=true 管理理⽹网 BGP(IPv4)0 码力 | 30 页 | 3.52 MB | 1 年前3
Over engineeringthe core of Kubernetes kops------ {{ range $m := Masters }} loadBalancerAttachment/api-elb-attachment.{{ $m.Name }}.{{ ClusterName }}: loadBalancer: loadBalancer/api.{{ ClusterName }} autoscalingGroup: autoscalingGroup/{{ -- # Utility Subnet # # This is the public subnet that will hold the route to the # gateway, the NAT gateway # --------------------------------------------------------------- subnet/utility-{{ $zone ------ {{ range $m := Masters }} loadBalancerAttachment/api-elb-attachment.{{ $m.Name }}.{{ ClusterName }}: loadBalancer: loadBalancer/api.{{ ClusterName }} autoscalingGroup: autoscalingGroup/{{0 码力 | 75 页 | 4.56 MB | 1 年前3
Kubernetes for Edge Computing across
Inter-Continental Haier Production Sites应用商店 面向业务管理 弹性伸缩 API Gateway 负载均衡 应用编排 日志监控 告警 服务发现 API 业务中台 多租户管理 运维中台 云端操作系统 数据中台 面向数据与智能 数据管理 大数据 机器学习 资源管理 深度学习 AI工具 API IOT中台 面向行业解 决方案 边缘计算 数据通道 数据分析 API 海尔工业互联网 - 微服务之框架支持 易用的用户界面 • 批量动态更新配置到应用 • 编程接口简单 • 镜像与配置分离 • 按项目管理配置 海尔工业互联网 - 微服务之服务集成 服务总线 APP-A APP-B APP-C Gateway Auth N Auth Z 协议适配: • 提供常用协议服务的接入、转换(Dubbo,XML) • 灵活定制化的数据变换 控制能力: • 认证鉴权机制 • 流量控制 • 黑白名单 PrometheusServer(Pod) Retrieval Storage PromQL Local Storage Web UI(Pod) Grafana(Pod) API Push Gateway Jobs / Exporters Prometheus Server Short-lived jobs pod host Node pod host Endpoints0 码力 | 33 页 | 4.41 MB | 1 年前3
开课吧基于混合云的Kubernetes平台落地实践-程亮namespaceN service1 service2 service3 … … … … … service1 service2 service3 … jenkins 用户中心数据库 API网关数据库 应用中心数据库 基础服务数据库 基础服务数据库 … … … • 多环境资源互不影响 微服务 • 全链路服务全部属 • 注册中心独立部署 流量隔离 • 多域名,泛域名解析匹配 多云多冗余,包括数据的同步容易 降低成本 • 跟不同的云厂商有更多的议价空间 • 多云部署架构图 kaikeba1 Kaikeba2 云CDN,LB Gateway 负载均衡 Ribbon 负载均衡 Ribbon Gateway 负载均衡 Ribbon 负载均衡 Ribbon Axxx Hxxx Eureka Eureka 注册 注册 Redis ES Mysql 1 跨云数据同步保证 2 多环境一套模板适配性 3 多K8S的监控 4 • 基于Istio的智能路由 Istio层 IstioIngressGateway v5897 v5897 Gateway VirtualService DestinationRule Service Kubernetes层 POD-2 pilot-agent Container v5897 POD-10 码力 | 22 页 | 7.42 MB | 9 月前3
Kubernetes + OAM 让开发者更简单数据库 安全服务 网络 存储 Pod Deployment Service Node Custom Resource 一组容器 一组 Pod 副本 Pod 的访问入口 节点 自定义对象 声明式 API 对象 基础设施层能力 业务运维 平台工程师 业务研发 扩容策略 发布策略 分批策略 访问控制 流量配置 应用管理平台 (Openshift、Cloudfoundry、阿里内部、腾讯内部 …) …) 应用 CI/CD 流水线 K8s PaaS K8s 但是,K8s PaaS 正面临着“能力困境” 研发与运维人员日益增长的应用管理诉求 PaaS 有限的、不可扩展的专有API 与能力 K8s 生态“无限”的应用基础设施能力 而且,PaaS 还面临着严重分化 PaaS A Kubernetes PaaS B PaaS C 研发效率 学习成本 同一个公司内数个 PaaS replicas/app Gateway Route Traffic Monitor Alert Deployme nt App Instance HPA Function • 碎片化: 大约 11 个内部 PaaS/Serverless • 烟囱化:互相之间完全独立, 没有可互操作性 • 用户不友好:大量基础设施层 语义泄露 • 封闭:不能利用 K8s 生态能力 Gateway Route0 码力 | 22 页 | 10.58 MB | 1 年前3
Kubernetes 容器编排与应用编排Pod 1. 定时执行的批处理任务 2. 定时任务并发策略 * Allow * Forbid * Replace 3. 支持单任务并发控制 一个简单的编排案例 Client API DB API Proxy DB Proxy DB Backup Monitoring Deployment StatefulSet Service CronJob DaemonSet 重新审视这个例子 Client API DB API Proxy DB Proxy DB Backup Monitoring 无状态应用 有状态应用 守护型应用 批处理任务 应用编排架构 应用编排架构 API Gateway APP API Service A APP API Service B APP Cache APP API Service D APP File Kubernetes Cluster Application Registry Application Manager Application A Application … API Gateway API Service A API Service B 应用编排架构 Application Registry - Helm Registry Helm Chart Helm Registry 10 码力 | 20 页 | 4.22 MB | 1 年前3
Kubernetes Native DevOps PracticeService DevOps Operator DevOps Operator DevOps Service DevOps Manager CronJob k8s API MySQL k8s API MySQL MySQL • Pipeline configuration and history in MySQL • Logging in central logging AutoScaler k8s API DevOps Service DevOps Service DevOps Manager Restful API realtime log history log pull metric data ElasticSearch ElasticSearch Prometheus Push Gateway push metric data • Build task can also expose custom metric data • Ephemeral build task can push metric to gateway if needed • Cluster autoscaler will add/remove node from build group for scaling • HA is guaranteed0 码力 | 21 页 | 6.39 MB | 1 年前3
KubeCon2020/微服务技术与实践论坛/Spring Cloud Alibaba 在 Kubernetes 下的微服务治理最佳实践-方剑running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated monoliths-to-microservices 微服务拆分原则 DevOps 服务框架 Dubbo 可观测性 混沌工程 服务治理 Spring Cloud 多语言微服务 API管理 服务压测 分布式事务 分布式调度 API网关 服务注册发现 负载均衡 服务配置 无损下线 服务容错 服务路由 服务鉴权 限流降级 服务元数据 服务测试 服务mock 持续集成 IDE插件 应用监控 链路追踪 Boot 是开发者构建云原生应用的首选! JAKARTA EE 2019 开发者报告 Config Server Service Discovery Circuit Breaker Gateway Load Balancer Distributed Tracing Messaging Serverless Task Spring Boot Build anything 快速构建应用0 码力 | 27 页 | 7.10 MB | 1 年前3
腾讯基于 Kubernetes 的企业级容器云实践-罗韩梅Overlay方案性能 host vxlan ipip gateway 23540 8368 22127 7675 21007 7231 0 5000 10000 15000 20000 25000 TCP_RR(64) TCP_CRR(64) Underlay方案性能 Host Bridge NAT IPIP+Gateway混合Overlay方案 •短链接IPIP包量比Vxlan多14 •短链接IPIP包量比Vxlan多14.1% •Gateway比Vxlan多40.5% •方案被Flannel社区合并 Underlay方案 • Bridge方式仅比Host差6%,一般 overlay比Host差20~40% • SRIOV方式比Bridge CPU下降38.3%, 包量+6% 性能 Docker、Docket、Gaiastack P2P Agent下载镜像对比 Registry与P2P Agent流量占比对比 自动扩缩容 • 资源阈值 • 自定义指标阈值 • 实例个数范围 • 周期性自动伸缩 Autoscaler controller Apiserver cluster-agent Cloud API 集群弹性伸缩: • 监控节点资源使用率 • 自动迁移低负载Node上的Pod,完成缩容 • 一定数量Pod因资源不足pending时,自动扩容 能力扩展:灰度升级 • 在GPU集群中有一0 码力 | 28 页 | 3.92 MB | 1 年前3
基于 Kubernetes 构建标准可扩展的云原生应用管理平台-孙健波、周正喜loose.” Sited: https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/ API 和业务原语 关注点不同 服务语义与抽象程度不同 交互与使用习惯不同 YAML 文件 图形化界面 命令行工具 IaC 配置语言 扩容策略 • 当请求数上升 10% 时,自动扩 容 100 个实例 研发与运维人员日益增长的应用管理诉求 传统 PaaS 有限的、不可扩展的专有API 与能力 K8s 生态“无限”的应用基础设施能力 不停构建“PaaS”平台不是“银弹” 与其 基于 K8s 构建平台 不如 把 K8s 变成面向开发者的平台 构建一个具备“以应用为中心的 API 抽象”、“用户友好” 且“高度可扩展”的 K8s! 以应用为中心的 API 抽象 • 应用的工作负载和运维能力的抽象程度越高,用户体验越好 WebService - image - replicas - port 抽象 Deployment - image - replicas Service - port 原始 k8s API 资源 Workload - image - replicas Rollout - canary ArgoRollout - image - replicas - rollout0 码力 | 27 页 | 3.60 MB | 9 月前3
共 62 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7













