DaoCloud Enterprise 5.0
产品介绍0)是一款高性能、可扩展的云原生操作系统。 它能够在任何基础设施和任意环境中提供一致、稳定的体验,支持异构云、边 缘云和多云编排。 DCE 5.0 集成了最新的服务网格和微服务技术,能够跟踪每 一个流量的生发始终, 帮助您洞察集群、节点、应用和服务的详细指标,并通 过动态仪表盘和拓扑大图可视化掌握应用健康状态。 DCE 5.0 原生支持 DevOps 开发运维模式,可以实现应用交付的全流程标准化 第 5 页 微服务治理 提供非侵入式流量治理功能,支持无感接入传统微服务、云原生微服务和开源微服务 框架,实现企业现有微服务体系及新旧微服务体系的融合治理,支持微服务从开发、 部署、接入、观测、运维的全生命周期管理,提供高性能云原生微服务网关,保证微 服务应用的连续可用性;引入自主开源的 eBPF 网格加速技术,全面提高流量转发效 率。 涉及的模块:全局管理、容器管理、微服务治理、服务网格、可观测性、应用工作 一站式部署,解耦底层 Kubernetes 平台,一站式部署和运维业务应用,实现应用的 全生命周期管理。 ➢ 应用负载的弹性伸缩,支持应用负载的手动/自动扩缩容,支持横向伸缩、纵向伸缩、 以及定时伸缩,从容应对流量高峰。 ➢ 应用的全生命周期,支持应用查看、更新、删除、回滚、事件查看以及升级等全生命 周期管理。 ➢ 跨集群负载统一管理能力。 策略管理 支持以命名空间或集群粒度制定网络策略、配额策略、资源限制策略、灾备策0 码力 | 18 页 | 1.32 MB | 1 年前3
Kubernetes开源书 - 周立集群的通信路径。在此配置中,apiserver会启动⼀个SSH隧道 到集群中的每个Node(连接到监听端⼝22的ssh服务器),并通过隧道传递⽬标为kubelet,Node,Pod或Service的所 有流量。该隧道确保流量不会暴露到私有GCE⽹络以外。 原⽂ https://kubernetes.io/docs/concepts/architecture/master-node-communication/ (与3同时),Pod将从该服务的端点列表中删除,并且不再被认为是replication controllers正在运⾏的Pod的⼀部 分。 缓慢关闭的Pod可以继续接收从load balancer转发过来的流量,直到load balancer将其从可⽤列表中移除。 8. 当优雅关闭时间到期时,仍在Pod中运⾏的任何进程都会被SIGKILL杀死。 9. 通过设置优雅关闭时间为0(⽴即删除),Kubelet将在API ⼀个活动探针,并指定 restartPolicy 为Always或 OnFailure。 如果要仅在探测成功时才开始向Pod发送流量,请指定就绪探针。在这种情况下,就绪探针可能与活动探针相同,但是 spec中存在就绪探针,就意味着Pod会在没有接收到任何流量的情况下启动,并且只在探针探测成功后才开始接收流 量。 如果您希望容器能够⾃⼰维护,可指定⼀个就绪探针,该探针检查的端点与活动探针不同。0 码力 | 135 页 | 21.02 MB | 1 年前3
Kubernetes + OAM 让开发者更简单YAML 文件 图形化界面 命令行工具 IaC 配置语言 扩容策略 • 当 RT 上升 10% 时,自动扩容 100 个实例 发布策略 • 当金丝雀实例通过 99% 的测试时,按 每小时切 10% 流量 的节奏进行发布 YAML 文件 YAML 文件 HorizontalPodAutoscaler CustomMetricsServer Prometheus Service Monitor Resource 一组容器 一组 Pod 副本 Pod 的访问入口 节点 自定义对象 声明式 API 对象 基础设施层能力 业务运维 平台工程师 业务研发 扩容策略 发布策略 分批策略 访问控制 流量配置 应用管理平台 (Openshift、Cloudfoundry、阿里内部、腾讯内部 …) 应用 CI/CD 流水线 K8s PaaS K8s 但是,K8s PaaS 正面临着“能力困境” Kubernetes 2. 用户友好、高可扩展 3. 统一、标准化 理想中的应用管理平台 目标一:一个面向用户,应用为中心 CI/CD 流水线 应用 扩容策略 发布策略 分批策略 访问控制 流量配置 Pod Deployment Service Node Custom Resource 业务运维 业务研发 按需绑定 关键词:用户友好,应用层语义和抽象 平台工程师 Controller0 码力 | 22 页 | 10.58 MB | 1 年前3
涂小刚-基于k8s的微服务实践scheduler和kube-controller- manager 其中三个控制平台节点运行 keeplived和haproxy,node节点 和api-server通讯通过vip对 接,haproxy将流量转发至 apiserver 每个控制平面节点创建一个本 地etcd成员,该etcd成员仅与 kube-apiserver该节点通信 kubernetes cluster HA etcd cluster core-dns解析来集群内部域名kubernetes.cluster.svc.local; 2.流量达到ipvs-eth; 3.lvs负载均衡对流量进行轮寻,寻找目的pod下一跳; 4.流量达到node1,node2的eth0,经过内部路由进行传输; 5.内部路由到达docker-0网关,流量经由flanneld下发的子 网到达pod容器; 工作原理: Flannel负责在容器集群中的多个节点之间提供第3层IPv4网 yaml-file 同步 jm-templates 初始化yaml 初始化yaml nginx.conf 运维平台 修改-nginx-reload 发布 服务注册至注册中心 流量权重分流 正常流量 金丝雀流量 创建服务 创建服务 容器dns+外部dns互通 api 容器监控 pod pod kubelet docker node k8s heapster pull0 码力 | 19 页 | 1.34 MB | 1 年前3
开课吧基于混合云的Kubernetes平台落地实践-程亮jenkins 用户中心数据库 API网关数据库 应用中心数据库 基础服务数据库 基础服务数据库 … … … • 多环境资源互不影响 微服务 • 全链路服务全部属 • 注册中心独立部署 流量隔离 • 多域名,泛域名解析匹配 数据 • 全量同步线上脱敏数据 • Mysql redis ES 全搭建 • 数据全部物理隔离 发布平台 • 按需分支发布 • 多环境完全并行 • 一期方案的问题与挑战 为什么要多环境访问严格隔离 ‣ 如何借助多云保证有状态服务高可用 ‣ 如何做到激增流量时,全链路联动扩缩容 ‣ 如何通过共享减少资源占用 ‣ 如何识别流量,智能路由 • 资源隔离,逻辑隔离,物理隔离 逻辑隔离多环境共享一个K8S(线下) 问题1 多环境物理隔离(线下,线上) 问题2 推荐做法 • 资源严格隔离:独占K8S,根据引入流量区分线上,线下 • 资源逻辑隔离:线下环境,通过智能路由,解决多环境 环境 • 多云部署的目的 目的一 目的二 目的三 多K8S集群严格隔离 • 通过流量配置,区分不同云承 • 接不同流量(单元架构) 高可用 • 多云多冗余,包括数据的同步容易 降低成本 • 跟不同的云厂商有更多的议价空间 • 多云部署架构图 kaikeba1 Kaikeba2 云CDN,LB Gateway 负载均衡 Ribbon 负载均衡 Ribbon Gateway0 码力 | 22 页 | 7.42 MB | 9 月前3
KubeCon2020/微服务技术与实践论坛/Spring Cloud Alibaba 在 Kubernetes 下的微服务治理最佳实践-方剑https://start.aliyun.com/bootstrap.html • 业务高可用、多可用区部署 • 同城/异地容灾,业务多活 • 微服务需要更安全、更可信 成本 稳定 效率 • 白天流量高峰期发布 • 云边端一体化开发部署联调 • 服务治理体系强依赖SDK升级 • K8s下应用IP的不确定、导致服务治理规则的失效 • 应用迁移上云成本很高 • 极致、灵活的弹性 微服务在云原生下的挑战 服务下线 (prestop) 3 通知消费者 5 应用重启 4 调用其他提供者 Agent 2 主动通知 Agent 3 客户端主动刷新 Agent Agent 无损下线: 白天大流量下发布依然丝般顺滑 场景一:某应用发布,灰度几台机器,由于代码逻辑写的有问题,造成线程池满,客户端调用失败。 场景二:某应用运行过程中,某几台机器由于磁盘满,或者是宿主机资源争抢导致load很高,客户端出现调用超时。 10分钟恢复 故障应急 1-5-10原则 安全变更 4. 读取灰度规则 配置中心 3. 配置灰度规则 http-header: user-id % 100 == 20 • 两种灰度规则 • 按流量百分比路由 • 按请求特征路由:如http header, 方法参数等 • 打通微服务网关 提供者 1 消费者 提供者 2 version=gray 2. 注册环境标签 user-id=1210 码力 | 27 页 | 7.10 MB | 1 年前3
k8s操作手册 2.3ard链,默认全部return,导致不通,也得 放开,具体得看下iptables规则),以下操作目的为 在系统启动后等待60秒待 k8s把iptables规则设置完毕再在以下几个chain里放通所有流量,如果对防火墙 有自定义规则或对安全性要求较高场景无需配置以下这段,防火墙相关操作自 行按需处理! # cat >> /etc/rc.d/rc.local <流量使用此ip网络对应的网口进行vxlan封装) #最后重新部署flannel的deployment文件 # kubectl apply -f kube-flannel.yml #可见fl #本node结点上的pod网段 #由上面的路由表可得知,各k8s服务器上的pod容器并不是在同一个二层广播域 里,虽然底层是vxlan隧道,所有的pod处于一个overlay网络里,但为了避免二 层的广播流量占用大量的网络带宽,所以k8s把pod网段进一步细分了,各服务 器占一个子网段,然后各pod子网之间是走路由转发的,路由下一跳为flannel.1 设备,它再进行vxlan封装。 ★veth-pair虚拟网络接口 0 码力 | 126 页 | 4.33 MB | 1 年前3
⾸云容器产品Kubernetes操作指南环境变量:配置所启动容器所需的环境变量(key/value的形式) 健康检查和就绪检查:⽀持健康检查(liveness)和就绪检查(Readiness)。健康检查⽤于 检测何时重启容器;就绪检查⽤于确定容器是否已经就绪,且可以接受流量。更多信息,请参 ⻅https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness- readiness-probes。 环境变量:配置所启动容器所需的环境变量(key/value的形式) 健康检查和就绪检查:⽀持健康检查(liveness)和就绪检查(Readiness)。健康检查⽤于 检测何时重启容器;就绪检查⽤于确定容器是否已经就绪,且可以接受流量。更多信息,请参 ⻅https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness- readiness-probes。 地址,只能在集群内部被访问。 NodePort 在每台 Node 的固定端⼝上暴露服务,选择 NodePort 的服务类型,集群会⾃动创建⼀个 ClusterIp 类型 的服务,负责处理Node接收到的外部流量。集群外部的 Client 可以通过:的⽅式访问该服务。 创建服务 1.在容器集群菜单下,单击左侧导航栏中的服务与路由 > 服务,进⼊服务列表⻚⾯。 2.选择所需的集群和命名空间,单击⻚⾯右上⻆的创建服务。0 码力 | 94 页 | 9.98 MB | 1 年前3
从Mesos到KubernetesJob Merge Production Branch Branch preview change 流量镜像 一键压测 接入层(TCPCopy) 支持流量放大、缩小 一键批处理压测 服务网格 智能负载均衡 流量路由策略 服务保护机制 混沌军团 随机关闭生产环境中的实例,模拟服 务故障 引入人为延时,模拟服务降级0 码力 | 30 页 | 2.12 MB | 1 年前3
基于Kubernetes构建容器云平台的实践
- UCloud优刻得实验室负责⼈ 叶理灯追踪(conntrack),再返回给请求的 客户端。 每个接⼊入交换机下,选择两台节点作为Service Gateway,作为集群外部访问Service的⽹网关 Kube-proxy负责将发往 Service IP 的流量量转 发到对应的Pod。启动时将 kube-proxy的 masquerade-all 选项打开,这样 kube- proxy 转发给Pod的包会实现源地址转换 (SNAT) Service Gateway包括 D Node E CNI-X CNI-X CNI-X Think in Cloud . 北北京 UK8S托管⽅方案 • 业务流量量⼊入⼝口由公有云的ULB和node节点承载。 • 通过在k8s集群中定义LoadBalance类型的service,业 务流量量可以先通过ULB转发到公有云Node节点上,再 通过公有云节点上kube-proxy配置的iptables规则转 发到整个集群中实际⼯工作的pod。0 码力 | 30 页 | 3.52 MB | 1 年前3
共 23 条
- 1
- 2
- 3













