带你读《企业级云原生白皮书项目实战》——6.1.3 落地实践

简介: 带你读《企业级云原生白皮书项目实战》——6.1.3 落地实践

6.1.3 落地实践


6.1.3.1 注册集群

首先需要将自建的集群注册到阿里云。注意使用的 VPC 的网段不能和集群的 Service CIDR 冲突,否则无法注册。VPC 的虚拟交换机和 Pod 虚拟交换机的 CIDR 也不能和机房内使用的 网段重合,否则会有路由冲突。注册成功后,需要部署 ACK Agent。它的作用是主动建立从机 房到阿里云的长链接,接收控制台的请求并转发给 apiserver。对于没有专线的环境,此机制可 以避免将 apiserver 暴露在公网。控制台到 apiserver 的链路如下:

阿里云 ACK 控制台 <--> ACK Stub(部署在阿里云) <--> ACK Agent(部署在 K8s) <--> K8s apiserver

控制台到集群的请求是安全可控的。Agent 连接 Stub 时,会带上配置的 token 和证书;链 接采用了 TLS 1.2 协议,保证数据加密;可以通过 ClusterRole 来配置控制台对 K8s 的访问 权限。


6.1.3.2 容器网络配置

K8S的容器网络要求 Pod 和 Pod、Pod 和宿主机之间通讯正常,平台采用了 Calico + Terway 的网络方案。机房内的工作节点采用 Calico BGP,Route Reflflector 会将 Pod 的路 由信息同步给交换机,物理机和云主机都能正常访问 Pod IP。阿里云上的工作节点会采用 Terway 共享网卡模式,Pod 会从 Pod 虚拟交换机配置的网段中分配到 IP,该 IP 在机房内 可以访问。平台给云主机打上标签,配置 calico-node 组件的 nodeAffiffiffinity,不调度到云主机 上;同时配置 Terway 组件的 node Affiffiffinity,让其只运行在云主机上。这样实现了物理机和云 主机使用不同的网络组件。在部署和使用 Terway 中,我们遇到并解决了以下三个问题:

1.terway 容器创建失败,报/opt/cni/bin 目录不存在。通过修改 terway daemonset 中该路径的 hostPath 的 type,从 Directory 改为 Directory OrCreate 可以解决上述问题

2.业务容器创建失败,报找不到 loopback 插件。terway 没有像 calico-node 一样在/opt/cni/bin/目录下部署 loopback 插件(创建回环网络 接口)。我们给 terway daemonset 添加了 InitContainer 来部署 loopback 插件,解决了问 题。

3.业务容器分配的 IP 是属于主机交换机网段。 这是因为在使用中,我们新增了一个可用区,但是没有把可用区的 Pod 虚拟交互机的信息配 置给 terway。通过在 terway 配置的 vswitches 字段新增可用区的 Pod 虚拟交换机信息, 可以解决问题。


6.1.3.2 云主机加入集群

将云主机加入集群的流程和物理机基本一致。首先通过公司云平台申请云主机,然后通过 VCo ntainer 的自动化平台将云主机初始化并加到集群中。最后给云主机打上云主机专有的标签。关 于自动化平台的介绍,可以参见 vivo AI 计算平台云原生自动化实践。


6.1.3.2 降低专线压力

机房到阿里云的专线是公司所有业务共用的,如果平台占用过多专线带宽,会影响到其他业务 的稳定性。在落地时我们发现深度学习训练任务从机房的存储集群拉取数据,确实对专线造成 压力,为此平台采取了以下措施:

1.监控云主机的网络使用情况,由网络组协助监控对专线的影响。

2.使用 tc 工具对云主机 eth0 网卡的下行带宽进行限流。

3.支持业务使用云主机的数据盘,将训练数据进行预加载,避免反复从机房拉取数据。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
3月前
|
人工智能 Kubernetes 监控
Kubernetes 故障诊断 AI 助手
【10月更文挑战第6天】
|
6天前
|
人工智能 运维 Cloud Native
云原生 Meetup,AI 应用工程化专场·广州站
欢迎莅临广州市海珠区鼎新路 88 号广州阿里中心,O-N-10-02 春秋书院。报名成功后,您将在活动前一周收到短信通知。
|
1月前
|
人工智能 Kubernetes 安全
赋能加速AI应用交付,F5 BIG-IP Next for Kubernetes方案解读
赋能加速AI应用交付,F5 BIG-IP Next for Kubernetes方案解读
65 13
|
2月前
|
人工智能 Cloud Native 安全
从云原生到 AI 原生,谈谈我经历的网关发展历程和趋势
本文整理自阿里云智能集团资深技术专家,云原生产品线中间件负责人谢吉宝(唐三)在云栖大会的精彩分享。讲师深入浅出的分享了软件架构演进过程中,网关所扮演的各类角色,AI 应用的流量新特征对软件架构和网关所提出的新诉求,以及基于阿里自身实践所带来的开源贡献和商业能力。
111 8
|
3月前
|
人工智能 运维 Cloud Native
云原生开源开发者沙龙丨AI 应用工程化专场杭州站邀您参会
云原生开源开发者沙龙 AI 原生应用架构专场,邀您一起交流,探索 AI 原生应用的工程化落地!
|
3月前
|
人工智能 Cloud Native 安全
从云原生到 AI 原生,网关的发展趋势和最佳实践
本文整理自阿里云智能集团资深技术专家,云原生产品线中间件负责人谢吉宝(唐三)在云栖大会的精彩分享。讲师深入浅出的分享了软件架构演进过程中,网关所扮演的各类角色,AI 应用的流量新特征对软件架构和网关所提出的新诉求,以及基于阿里自身实践所带来的开源贡献和商业能力。
293 14
|
6月前
|
人工智能 Cloud Native API
Higress 重磅更新:AI 能力全面开源,云原生能力再升级
Higress 最新的 1.4 版本基于为通义千问,以及多家云上 AGI 厂商客户提供 AI 网关的积累沉淀,开源了大量 AI 原生的网关能力。同时也在 Ingress、可观测、流控等云原生能力上做了全方位升级。
21437 277
|
3月前
|
人工智能 Cloud Native Java
云原生技术深度解析:从IO优化到AI处理
【10月更文挑战第24天】在当今数字化时代,云计算已经成为企业IT架构的核心。云原生作为云计算的最新演进形态,旨在通过一系列先进的技术和实践,帮助企业构建高效、弹性、可观测的应用系统。本文将从IO优化、key问题解决、多线程意义以及AI处理等多个维度,深入探讨云原生技术的内涵与外延,并结合Java和AI技术给出相应的示例。
141 1
|
4月前
|
消息中间件 人工智能 Cloud Native
|
4月前
|
人工智能 Cloud Native Serverless
来云栖大会!探展云上开发,沉浸式体验云原生 + AI 新奇玩法
计算馆将展示中国最先进的云计算产业链全景,从底层硬件到数据创新,从云计算基础设施到数据管理服务、人工智能平台和模型服务,全景式呈现 AI 时代云计算最新技术形态和产品进展。计算馆有哪些推荐?往下看!

热门文章

最新文章