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

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: 带你读《企业级云原生白皮书项目实战》——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.支持业务使用云主机的数据盘,将训练数据进行预加载,避免反复从机房拉取数据。

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。 &nbsp; &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
9月前
|
消息中间件 人工智能 安全
云原生进化论:加速构建 AI 应用
本文将和大家分享过去一年在支持企业构建 AI 应用过程的一些实践和思考。
2196 82
|
人工智能 PyTorch 算法框架/工具
ACK AI Profiling:从黑箱到透明的问题剖析
本文从一个通用的客户问题出发,描述了一个问题如何从前置排查到使用AI Profiling进行详细的排查,最后到问题定位与解决、业务执行过程的分析,从而展现一个从黑箱到透明的精细化的剖析过程。
|
人工智能 Cloud Native 安全
云原生+AI 为企业出海提供全新技术引擎!明天见
5月22日 14:00「飞天发布时刻」,阿里云云原生应用平台产品负责人李国强将重磅揭晓面向 AI 场景的云原生产品体系升级,通过弹性智能的全球一体化架构、开箱即用的云原生 AI 工程化能力,为中国企业出海提供全新技术引擎。
|
9月前
|
人工智能 Cloud Native 关系型数据库
云栖重磅|瑶池数据库:从云原生数据底座向“AI就绪”的多模态数据底座演进
瑶池数据库:从云原生数据底座向“AI就绪”的多模态数据底座演进
|
存储 缓存 分布式计算
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
本文将深入探讨基于 StarRocks 和 Iceberg 构建的云原生湖仓分析技术,详细解析两者结合如何实现高效的查询性能优化。内容涵盖 StarRocks Lakehouse 架构、与 Iceberg 的性能协同、最佳实践应用以及未来的发展规划,为您提供全面的技术解读。 作者:杨关锁,北京镜舟科技研发工程师
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
|
人工智能 运维 资源调度
AI 赋能混合云运维:告别手工操作,迈向智能自愈!
AI 赋能混合云运维:告别手工操作,迈向智能自愈!
860 85
|
人工智能 运维 Cloud Native
云原生 Meetup,AI 应用工程化专场·广州站
欢迎莅临广州市海珠区鼎新路 88 号广州阿里中心,O-N-10-02 春秋书院。报名成功后,您将在活动前一周收到短信通知。
300 105
|
存储 人工智能 Cloud Native
【发布实录】云原生+AI,助力企业全球化业务创新
本文介绍了阿里云在云原生与AI结合领域的最新产品发布和技术创新。首先,通过弹性智能的一体化架构,阿里云为AI场景提供了开箱即用的云原生能力,助力企业出海。其次,详细解析了云原生如何助力AI应用构建,包括Function AI平台、GPU极速模式、MCP Server开发托管及AI网关等核心功能。
|
人工智能 分布式计算 调度
打破资源边界、告别资源浪费:ACK One 多集群Spark和AI作业调度
ACK One多集群Spark作业调度,可以帮助您在不影响集群中正在运行的在线业务的前提下,打破资源边界,根据各集群实际剩余资源来进行调度,最大化您多集群中闲置资源的利用率。

推荐镜像

更多