华为云用户手册

  • 步骤一:注册集群 登录UCS控制台,在左侧导航栏中选择“容器舰队”。 单击伙伴云集群选项卡中的“注册集群”按钮。 参考表1填写待添加集群的基础信息,其中带“*”的参数为必填参数。 表1 注册集群基础信息配置 参数 参数说明 集群名称* 输入集群的自定义名称,需以小写字母开头,由小写字母、数字、中划线(-)组成,且不能以中划线(-)结尾。 集群服务商* 选择一个集群服务商(移动云、天翼云)。 所属区域* 选择集群所在的区域。 集群标签 非必填项,以键值对的形式为集群添加标签,可以通过标签实现集群的分类。键值对可自定义,以字母或者数字开头和结尾,由字母、数字、连接符(-)、下划线(_)、点号(.)组成,且63个字符之内。 上传KubeConfig* 上传kubectl的配置文件来完成集群认证,支持JSON或YAML格式。获取KubeConfig文件的操作步骤因厂商而异,请参见获取KubeConfig文件。 选择Context* 选择对应的Context。在完成KubeConfig文件上传后,选项列表将自动获取文件中的“contexts”字段。 默认值为KubeConfig文件中“current-context”字段指定的Context,若文件中无此字段则需要从列表中手动选择。 容器舰队 选择集群所属的舰队。 舰队用于权限精细化管理,一个集群只能加入一个舰队。若不选择舰队,集群注册成功后将显示在“未加入舰队的集群”页签下,后续还可以再添加至舰队中。 不支持在注册集群阶段选择已开通集群联邦能力的舰队,如果一定要加入这个舰队,请在集群注册成功后,再添加到该舰队中。关于集群联邦的介绍,请参见开通集群联邦章节。 如需新建舰队,请参见容器舰队管理。 单击“确定”,集群注册成功后如图1所示,请在30分钟内接入网络。您可选择集群的接入方式或单击右上角按钮查看详细的网络接入流程。 如您未在30分钟内接入网络,将会导致集群注册失败,可单击右上角按钮重新注册集群。如果已经接入但数据未采集上来,请等待2分钟后刷新集群。 图1 集群等待接入状态
  • 步骤二:接入网络 在UCS控制台成功添加集群后,集群状态将会显示为“等待接入”,此时UCS并未打通与集群的网络连接,因此需要在集群中配置网络代理来接入网络。 请在添加集群后的30分钟内接入网络,您可单击右上角按钮查看详细的网络接入流程。如您未在30分钟内接入网络,将会导致集群注册失败,可单击右上角按钮重新注册集群。如果已经接入但状态未更新,请等待2分钟后刷新集群。 前往UCS控制台,单击待接入集群栏的“点击接入,选择”“公网接入”,可查看详细的公网接入流程。 下载集群代理agent的配置文件。 集群代理配置存在私有秘钥信息,每个集群代理配置仅能下载一次,请您妥善保管。 将步骤2中的agent配置文件上传至节点。 单击“安装集群代理agent配置”,在待接入集群中执行如下命令,可单击右侧直接复制命令。 前往UCS控制台刷新集群状态,集群处于“运行中”。 图2 图2 集群运行中状态
  • 准备网络环境 伙伴云集群的数据接入方式支持公网接入和私网接入。 公网接入是通过公网Internet接入,要求集群能够访问公网,具有弹性灵活、成本低、易接入的优势。如果对网络质量没有要求,只想采用更简便的方式接入,那么公网接入是个不错的选择。 公网接入要求集群能够访问公网,请确保集群已符合此条件,否则会接入失败。 私网接入是通过云专线(DC)或虚拟专用网络(VPN)服务将伙伴云网络与云上虚拟私有云(VPC)连通,并利用VPC终端节点通过内网与容器智能分析建立连接,具有高速、低时延、安全的优势。 图1 私网接入原理 因此,在开启之前,您需要准备满足一个云上虚拟私有云(VPC),并将伙伴云厂商的网络环境与该VPC连通。VPC子网网段不能与伙伴云中已使用的网络网段重叠,否则将无法接入集群,例如,伙伴云中已使用的VPC子网为192.168.1.0/24,那么华为云VPC中不能使用192.168.1.0/24这个子网。 网络连通可以选用如下两种方案: 虚拟专用网络(VPN)方案:请参见通过VPN连接云下数据中心与云上VPC。 云专线(DC)方案:请参见用户通过单专线静态路由访问VPC或用户通过单专线BGP协议访问VPC。
  • 使用 拿到ucs-ctl生成的Kubeconfig之后,我们需要让节点中的Kubectl使用Kubeconfig,步骤如下: 复制Kubeconfig到节点上。 $ scp /local/path/to/kubeconfig user@remote:/remote/path/to/kubeconfig 如果当前节点添加过EnableSecretEncrypt环境变量,需要先取消。 $ unset EnableSecretEncrypt 使Kubeconfig生效,可选方法: 方法一:复制到默认位置。 $ mv /remote/path/to/kubeconfig $HOME/.kube/config 方法二:环境变量指定。 $ export KUBECONFIG=/remote/path/to/kubeconfig 方法三:命令行参数指定。 shell$ kubectl --kubeconfig=/remote/path/to/kubeconfig … 上述操作之后,就可以访问本地集群的API server了。关于Kubeconfig更详细的用法可参考:使用kubeconfig文件组织集群访问Kubernetes。 父主题: 获取KubeConfig
  • 本地清理 在控制台注销并没有真正删除本地集群,您需要手动进入集群内完成删除过程。 复制卸载之后控制台返回的卸载命令。 进入本地集群中的节点内,执行卸载命令 `./ucs-ctl delete cluster cluster_name `。 cluster_name取决于集群具体的名字。 仅在控制台进行注销操作,不会删除集群。 本次操作可能导致与该集群有绑定关系的资源(比如指定调度集群的负载等)无法正常使用,请谨慎操作,避免对运行中的业务造成影响。 父主题: 注销本地集群
  • 接入网络模式 对于伙伴云集群,各集群提供商或本地数据中心对于网络入方向的端口规则有差异,防止特定端口外的入站通信。因此UCS使用集群网络代理的连接方式,如图2所示,无需在防火墙上启用任何入方向端口,仅通过集群代理程序的方式在出方向与UCS服务建立会话。 伙伴云集群接入网络的方法有两种,具有不同的优点: 公网接入:具有弹性灵活、成本低、易接入的优点。 私网接入:可获得更加高速、低时延、稳定安全的体验。 图2 集群接入原理
  • 应用场景 在分布式集群场景下,为了方便用户对集群进行应用部署,实现自动化应用下发功能。UCS配置管理提供从仓库资源到Kubernetes集群自动部署应用配置的核心能力,通过采用Kustomize组织和定制资源集的方式配置仓库,提供对华为云集群、多云集群、本地集群和附着集群进行跨命名空间、跨集群、跨舰队的配置分发与配置管理的能力。对用户部署在各集群的业务提供实时的状态观测和消息通知,以确保应用出现问题时可以快速识别和定位,保障使用客户业务App的终端用户的使用体验和服务级别目标(SLO)达成。
  • 容器组列表 容器组列表中包含实例名称、状态、命名空间、实例IP、所在节点、重启次数、CPU申请/限制、内存申请/限制、CPU使用率,以及内存使用率等信息。 图1 容器组列表 您可以利用页面右上角的命名空间,以及列表上方的实例名称、状态、命名空间、实例IP和所在节点进行筛选,快速定位所需的实例。 在列表的右上角,您可以单击按钮来导出全部实例数据,或者选择部分实例进行导出,此时仅导出所选中的数据。导出的文件为“.xlsx”格式,文件命名中包含时间戳。
  • 监控 在此处,您可以方便地查看实例在近1小时、近8小时、近24小时以及自定义时间段内各维度资源的使用情况。如需查看更多监控信息,请单击“查看全部仪表盘”,跳转至“仪表盘”页面,相应指导请参见仪表盘。 CPU 单位时间内Pod CPU平均使用情况。 图5 CPU 内存 单位时间内Pod内存平均使用情况。 图6 内存 网络速率 容器网络流量,用于监控容器的网络负载情况,以及容器之间的网络通信情况。 图7 网络速率 Pod历史状态 Pod的生命周期。 图8 Pod历史状态 容器CPU 单位时间内容器CPU平均使用情况的统计。 图9 容器CPU 容器内存 单位时间内容器内存平均使用情况的统计。 图10 容器内存 容器CPU受限 容器的生命周期中度过的受限的CPU周期总数与总周期数的比率。 图11 容器CPU受限 容器网络丢包率 容器数据包丢失部分与所传数据包总数的比值。 图12 容器网络丢包率 容器历史状态 容器的生命周期。 图13 容器历史状态
  • 概览 单击实例名称,进入示例概览页,在这里,您可以方便地查看资源概况,包括Pod状态、容器数量(异常/总数)以及异常事件。此外,还可以浏览实例及实例所在节点近一小时的监控概览,其中包括CPU使用率、内存使用率和网络流入/流出速率这些常见的监控指标。 图2 资源概况和监控概览 同时,概览页面还提供了容器使用趋势功能,您可以从中了解Pod中各容器的CPU使用率、CPU使用量、内存使用率和内存使用量(在图表左上角切换对应指标),并且支持查看降序Top5和升序Top5数据(在图表右上角进行切换)。 图3 容器使用趋势 如需了解更多指标,请前往监控页面查看。
  • 前提条件 使用HPA前需要在集群内安装能够提 Metrics API的插件(详情请参考对Metrics API的支持): metrics-server:metrics-server从kubelet公开的Summary API中采集度量数据,提供基础资源使用指标,例如容器CPU和内存使用率。 Prometheus:Prometheus是一套开源的系统监控报警框架,能够采集丰富的Metrics(度量数据),因此除基础资源指标外,Prometheus还支持提供自定义指标。
  • 约束与限制 单个GPU卡最多虚拟化成20个GPU虚拟设备,同一个GPU虚拟化节点最多调度20个使用隔离能力的Pod。 使用GPU虚拟化后,该GPU节点不再支持调度使用共享GPU资源的工作负载。 使用GPU虚拟化后,不支持init容器。 GPU虚拟化支持显存隔离、显存与算力隔离两种隔离模式。单个GPU卡仅支持调度同一种隔离模式的工作负载。 使用GPU虚拟化后,不支持使用Autoscaler插件自动扩缩容GPU虚拟化节点。
  • 操作步骤 登录UCS集群控制台。 如果是未加入舰队集群,直接点击集群名即可进入集群控制台。 如果是已加入容器舰队的集群,先进入对应容器舰队控制台,选择左侧 “集群管理”内的“容器集群”,再进入对应集群控制台。 左侧导航栏内选择“运维”→“负载伸缩”,点击右上角的“创建 HPA 策略”。 填写待创建HPA策略的参数: 表1 HPA策略参数配置 参数 参数说明 策略名称 新建策略的名称,请自定义。 命名空间 请选择工作负载所在的命名空间。 关联工作负载 请选择要设置HPA 策略的工作负载。 实例范围 请输入最小实例数和最大实例数。 策略触发时,工作负载实例将在此范围内伸缩。 冷却时间 请输入缩容和扩容的冷却时间,单位为分钟,缩容扩容冷却时间不能小于1分钟。 该设置仅在1.15到1.23版本的集群中显示。 策略成功触发后,在此缩容/扩容冷却时间内,不会再次触发缩容/扩容,目的是等待伸缩动作完成后在系统稳定且集群正常的情况下进行下一次策略匹配。 系统策略 指标:可选择“CPU利用率”或“内存利用率”。 说明: 利用率 = 工作负载容器组(Pod)的实际使用量 / 申请量 期望值:请输入期望资源平均利用率。 期望值表示所选指标的期望值,通过向上取整(当前指标值 / 期望值 × 当前实例数)来计算需要伸缩的实例数。 说明: HPA在计算扩容、缩容实例数时,会选择最近5分钟内实例数的最大值。 容忍范围:指标处于范围内时不会触发伸缩,期望值必须在容忍范围之间。 当指标值大于缩容阈值且小于扩容阈值时,不会触发扩容或缩容。阈值仅在1.15及以上版本的集群中支持。 须知: 可以设置多条系统策略。
  • 前提条件 配置 支持版本 集群版本 v1.25.15-r7及以上。 操作系统 Huawei Cloud EulerOS 2.0操作系统 GPU类型 支持T4、V100类型的GPU。 驱动版本 GPU虚拟化功能仅支持470.57.02、470.103.01、470.141.03、510.39.01、510.47.03版本的GPU驱动。 运行时 仅支持containerd 插件 集群中需要同时安装以下插件: volcano插件:1.10.1及以上版本。 gpu-device-plugin插件:2.0.0及以上版本。
  • 约束与限制 单个GPU卡最多虚拟化成20个GPU虚拟设备,同个GPU虚拟化节点最多调度20个使用隔离能力的Pod。 使用GPU虚拟化后,该GPU节点不再支持调度使用共享GPU资源的工作负载。 使用GPU虚拟化后,不支持init容器。 GPU虚拟化支持显存隔离、显存与算力隔离两种隔离模式。单个GPU卡仅支持调度同一种隔离模式的工作负载。 使用GPU虚拟化后,不支持使用Autoscaler插件自动扩缩容GPU虚拟化节点。
  • 获取 获取本地集群的Kubeconfig需要使用ucs-ctl工具,安装步骤如下: 使用ucs-ctl获取集群名称。 $ ./ucs-ctl get cluster 使用ucs-ctl导出指定集群的Kubeconfig。 $ ./ucs-ctl get kubeconfig -c test-redhat86 -o kubeconfig 可以使用ucs-ctl get kubeconfig -h查看获取Kubeconfig所使用到的参数。 -c, --cluster:指定待导出Kubeconfig的集群名。 -e, --eip:指定API server的eip。 -o, --output:指定Kubeconfig导出文件名。 父主题: 获取KubeConfig
  • 工作负载风险 工作负载风险概览统计该舰队内已开启监控的集群节点发生的K8s Warning事件,包括事件名称、类型、所属集群名称、资源类型、资源名称、事件内容、发生时间和发生次数等。单击上方搜索框,选择属性类型,再输入对应的关键字,即可查询该条件下的事件。单击,可对事件进行排序。 单击右上角条件框、可对列表内的工作负进行筛选。 图1 工作负载风险 仅展示最近100条K8S Warning事件,更多事件请前往集群事件页查看。
  • 注册集群 登录UCS控制台,在左侧导航栏中选择“容器舰队”。 单击附着集群选项卡中的“注册集群”按钮。 参考表1填写待添加集群的基础信息,其中带“*”的参数为必填参数。 表1 注册集群基础信息配置 参数 参数说明 集群名称* 输入集群的自定义名称,需以小写字母开头,由小写字母、数字、中划线(-)组成,且不能以中划线(-)结尾。 集群服务商* 选择一个集群服务商。 所属区域* 选择集群所在的区域。 集群标签 非必填项,以键值对的形式为集群添加标签,可以通过标签实现集群的分类。键值对可自定义,以字母或者数字开头和结尾,由字母、数字、连接符(-)、下划线(_)、点号(.)组成,且63个字符之内。 上传KubeConfig* 上传kubectl的配置文件来完成集群认证,支持JSON或YAML格式。获取KubeConfig文件的操作步骤因厂商而异,请参见获取KubeConfig文件。 选择Context* 选择对应的Context。在完成KubeConfig文件上传后,选项列表将自动获取文件中的“contexts”字段。 默认值为KubeConfig文件中“current-context”字段指定的Context,若文件中无此字段则需要从列表中手动选择。 容器舰队 选择集群所属的舰队。 舰队用于权限精细化管理,一个集群只能加入一个舰队。若不选择舰队,集群注册成功后将显示在“未加入舰队的集群”页签下,后续还可以再添加至舰队中。 不支持在注册集群阶段选择已开通集群联邦能力的舰队,如果一定要加入这个舰队,请在集群注册成功后,再添加到该舰队中。关于集群联邦的介绍,请参见开通集群联邦章节。 如需新建舰队,请参见容器舰队管理。 单击“确定”,集群注册成功后如图2所示,请在30分钟内接入网络。您可选择集群的接入方式或单击右上角按钮查看详细的网络接入流程。 如您未在30分钟内接入网络,将会导致集群注册失败,可单击右上角按钮重新注册集群。如果已经接入但数据未采集上来,请等待2分钟后刷新集群。 图2 集群等待接入状态
  • 约束与限制 仅华为云帐号或具备UCS FullAccess权限的用户可进行集群注册的操作。 若集群地域位于境外,应确保您的行为符合所适用的法律法规要求。 请确保注册的集群为伙伴云(如天翼云、移动云)CCE集群,且版本在1.19及以上的集群。 伙伴云集群通过私网接入时,由于网络限制,镜像仓库功能的使用可能受限: 私网接入的集群无法通过私网下载SWR镜像仓库中的镜像,请确保工作负载运行的节点可访问公网。
  • 前提条件 已创建一个准备接入UCS的集群,并且集群状态正常。 在UCS提供服务的区域中创建一个VPC,具体操作请参见创建虚拟私有云和子网,当前仅支持“华北-北京四”区域。 该VPC子网网段不能与IDC或第三方云中已使用的网络网段重叠,否则将无法接入集群。例如,IDC中已使用的VPC子网为192.168.1.0/24,那么华为云VPC中不能使用192.168.1.0/24这个子网。 已获取待添加集群的KubeConfig文件,具体操作步骤因厂商而异,请参见获取KubeConfig文件。关于KubeConfig文件的更多说明请参考使用kubeconfig文件组织集群访问。
  • 购买终端节点 登录VPC终端节点控制台,单击“购买终端节点”。 选择终端节点的区域。 选择“按名称查找服务”,输入服务名称“cn-north-4.open-vpcep-svc.29696ab0-1486-4f70-ab35-a3f6b1b37c02”,并单击“验证”。 图3 购买终端节点 选择准备网络环境中与集群网络连通的虚拟私有云以及对应的子网。 根据需求选择终端节点的“节点IP”为“自动分配”或“手动分配”。 配置完其他参数后,单击“立即购买”,并进行规格确认。 规格确认无误,单击“提交”,任务提交成功。 参数信息配置有误,需要修改,单击“上一步”,修改参数,然后单击“提交”。
  • 管理集群标签/污点 登录UCS控制台。 单击目标集群所在的容器舰队名称,在左侧导航栏选择“容器集群”,找到目标集群,在右上角单击进入“标签与污点管理”。 单击按钮,设置节点标签/污点。如需执行多项操作,可多次添加,最多支持10条操作。 图1 添加标签/污点 选择“添加”或“删除”操作。 选择操作对象为“K8S标签”或“污点(Taints)”。 填写需要增加标签/污点的“键”和“值”。 如选择操作对象为“污点(Taints)”,需选择污点效果,关于污点效果说明请参见污点(Taints)说明。 单击“确定”,对所选节点执行标签/污点操作。
  • 污点(Taints)说明 污点格式为“Key=Value:Effect”,Key和Value作为污点的标签,Value可以为空,Effect用于描述污点的效果。当前Effect支持如下三个选项: NoSchedule:不能容忍此污点的 Pod 不会被调度到集群上,但是现有 Pod 不会从集群中逐出。 PrefeNoSchedule:表示尽量避免将不能容忍此污点的 Pod 调度到集群上。 NoExecute:表示不能容忍此污点的 Pod 不会被调度到集群上,同时会将集群上已存在的Pod驱逐。
  • 基础版、企业版及社区开源版本对比 大类 功能项 功能点 社区开源版本 基础版 企业版 规格 管理规模 支持最大管理实例数 - 200 5000 基础功能 服务发现和服务注册 通过服务中心集群获取服务列表、服务实例状态自动刷新、容器服务自动服务注册,业务无需实现注册逻辑、容器服务自动服务发现,业务无需实现发现订阅逻辑、服务实例副本数动态管理 √ √ √ 服务多版本 服务创建分版本管理、支持分版本进行监控 - √ √ 支持分版本进行服务负载管理 √ √ √ 服务多端口 支持管理多个端口的服务、支持管理多个端口多协议的服务 √ √ √ 灰度发布支持多端口 - √ √ 服务多形态 支持容器类型的服务后端 √ √ √ 协议及语言支持 HTTP协议灰度、治理、监控(根据协议特征不同细节不同,参照协议功能矩阵)、gRPC协议灰度、治理、监控(根据协议特征不同细节不同,参照协议功能矩阵)、开发语言无关、开发框架不限定、业务代码无侵入 √ √ √ 应用网关 支持四层协议对外访问、支持七层协议对外访问、支持入口路径映射、支持网关处TLS终止,支持配置对外证书和密钥 √ √ √ 负载均衡 支持轮询、随机、最小连接数以及一致性哈希的LB算法,可以基于特定的HTTP Header,或者基于Cookie值 √ √ √ 故障注入 支持注入指定时延或特定错误的故障,支持配置故障百分比 √ √ √ 熔断 支持配置最大请求数、每连接最大请求数、最大等待请求数、最大重试次数等七层请求管理;支持配置最大连接数、连接超时时间等四层连接管理;支持异常点检查、故障实例的自动隔离和自动恢复 √ √ √ 治理流量类型 支持对服务间内部通信流量进行治理、支持对服务外网访问流量(即Ingress流量)进行治理 √ √ √ 运行环境支持 支持容器应用治理 √ √ √ 认证 非侵入的双向TLS认证和通道加密 √ √ √ 授权 服务访问授权管理 √ √ √ 灰度发布 支持基于浏览器、操作系统、自定义HTTP Header、Cookie内容等配置灰度分流策略,支持基于URL配置灰度分流策略,支持基于请求参数、流量权重的灰度发布 √ √ √ 支持金丝雀灰度发布模板 - √ √ 支持蓝绿灰度发布模板 - √ √ 支持灰度发布过程中服务运行情况的监控以辅助灰度发布决策 - √ √ 支持灰度发布过程中服务请求情况的监控以辅助灰度发布决策 - √ √ 灰度发布时动态配置服务实例数 - √ √ 支持灰度发布过程中动态的流量比例监控 - √ √ 应用拓扑 提供应用下服务调用关系的全局拓扑 - √ √ 提供拓扑图上各个服务间请求数、异常请求数等重要指标 - √ √ 实时应用拓扑查看 - √ √ 链路跟踪/调用链 支持非侵入调用链埋点 √ √ √ 指标监控 提供服务实例CPU、内存、磁盘等运行数据监控,提供服务访问RPS、时延等访问指标的监控,提供对访问指标、异常指标的统计分析,支持对接Prometheus等开源Metric组件,支持通过配置对接不同的Metric后端 √ √ √ 访问日志 访问日志非侵入采集 √ √ √ 安装 支持现有、新建Kubernetes集群按需一键安装启用Istio能力 - √ √ 升级 支持控制面平滑升级,不中断应用业务 √ √ √ 支持数据面平滑升级,不中断应用业务 √ √ √ 插件管理 支持社区插件按需一键安装,支持Grafana、Prometheus - √ √ 支持社区插件按需一键安装,支持Tracing插件 - √ √ 支持社区插件按需一键安装,支持Kiali插件 - √ √ 支持社区插件按需一键安装,支持ELK插件 - √ √ API 非企业版网格提供基于CCE接口的开放社区兼容的流量规则配置 √ √ √ 代理管理 透明流量拦截、基于Iptables流量拦截、支持代理自动注入、支持Namespace级别和工作负载级别的注入管理 √ √ √ 代理形态 支持每Pod的Sidecar模式 √ √ √ 命令行工具 支持使用命令行进行流量策略管理(如istioctl、kubectl) - √ √ 企业版高阶能力 多集群 支持扁平网络多集群统一流量治理 - - √ 灰度发布 支持灰度负载部署在多集群,支持跨集群的灰度流量 - - √ 应用拓扑 应用拓扑可以下钻到版本或实例级别观测对应的服务访问指标 - - √ 提供按时段观察应用拓扑 - - √ 支持跨集群应用拓扑 - - √ 链路跟踪/调用链 支持全服务请求链的链路追踪 - - √ 支持基于时间、异常、响应时间等指标的检索 - - √ 支持对调用详细信息的查看,快速定位 - - √ 支持跨集群的调用链 - - √ 支持对接第三方调用链系统 - - √ SpringCloud SpringCloud服务发现配置修改复用网格服务发现和能力 - - √ SpringCloud框架ASM结合最佳实践 - - √ 安装 支持控制面按照与应用运行节点独享/共享方式运行 - - √ 父主题: 服务网格
  • 获取驱动链接-公网地址 登录CCE控制台。 创建节点,在节点规格处选择要创建的GPU节点,选中后下方显示的信息中可以看到节点的GPU显卡型号。 图1 查看显卡型号 登录到https://www.nvidia.com/Download/Find.aspx?lang=cn网站。 如图2所示,在“NVIDIA驱动程序下载”框内选择对应的驱动信息。其中“操作系统”必须选Linux 64-bit。 图2 参数选择 驱动信息确认完毕,单击“搜索”按钮,会跳转到驱动信息展示页面,该页面会显示驱动的版本信息如图3,单击“下载”到下载页面。 图3 驱动信息 获取驱动软件链接方式分两种: 方式一:如图4,在浏览器的链接中找到路径为url=/tesla/470.103.01/NVIDIA-Linux-x86_64-470.103.01.run的路径,补齐全路径https://us.download.nvidia.com/tesla/470.103.01/NVIDIA-Linux-x86_64-470.103.01.run该方式节点需要绑定EIP 。 方式二:如图4,单击“下载”按钮下载驱动,然后上传到OBS,获取软件的链接,该方式节点不需要绑定EIP。 图4 获取链接
  • 安装插件 登录UCS控制台,单击集群名称进入集群,在左侧导航栏中选择“插件管理”,找到gpu-device-plugin,单击“安装”。 在安装插件页面,填写插件配置。 插件规格:可配置“默认”或“自定义”规格,请根据实际情况选择。 容器:选择“自定义”规格时支持设置。 Nvidia驱动:您可使用CCE提供的驱动地址或手动填写自定义Nvidia驱动的地址,集群下全部GPU节点将使用相同的驱动。 GPU虚拟化功能仅支持470.57.02、470.103.01、470.141.03、510.39.01、510.47.03版本的GPU驱动。 建议您使用CCE提供的驱动地址,以满足驱动版本的要求。 如果下载链接为公网地址,如nvidia官网地址(https://us.download.nvidia.com/tesla/470.103.01/NVIDIA-Linux-x86_64-470.103.01.run),各GPU节点均需要绑定EIP。获取驱动链接方法请参考获取驱动链接-公网地址。 若下载链接为OBS上的链接,无需绑定EIP 。获取驱动链接方法请参考获取驱动链接-OBS地址。 请确保Nvidia驱动版本与GPU节点适配。 更改驱动版本后,需要重启节点才能生效。 对于linux 5.x内核系统,如Huawei Cloud EulerOS 2.0或ubuntu 22.04,建议使用470及以上版本驱动。 驱动选择:若您不希望集群中的所有GPU节点使用相同的驱动,CCE支持以节点池为单位安装不同的GPU驱动。 插件将根据节点池指定的驱动版本进行安装,仅对节点池新建节点生效。 新建节点更新驱动版本后,需重启节点生效。非新建节点不支持更新驱动版本。 插件卸载会自动删除已安装的GPU驱动。 GPU虚拟化:选择开启GPU虚拟化,支持GPU单卡的算力、显存分割与隔离。 若集群中未安装volcano插件,将不支持开启GPU虚拟化,您可单击“一键安装”进行安装。如需配置volcano插件参数,请单击“自定义安装”,详情请参见volcano。 若集群中已安装volcano插件,但插件版本不支持使用GPU虚拟化,您可单击“一键升级”进行升级。如需配置volcano插件参数,请单击“自定义升级”,详情请参见volcano。 单击“安装”,安装gpu-device-plugin插件的任务即可提交成功。
  • 安装nvidia-fabricmanager服务 A100/A800 GPU支持 NvLink & NvSwitch,若您使用多GPU卡的机型,需额外安装与驱动版本对应的nvidia-fabricmanager服务使GPU卡间能够互联,否则可能无法正常使用GPU实例。 本文以驱动版本470.103.01为例,您可参考以下步骤进行安装,请根据实际情况需要替换驱动版本。 登录需要安装nvidia-fabricmanager服务的GPU节点,该节点需绑定EIP用以下载nvidia-fabricmanager服务。 安装与驱动版本对应的nvidia-fabricmanager服务,您可通过官方下载操作系统和驱动版本对应的安装包。 CentOS操作系统 以CentOS 7为例: driver_version=470.103.01wget https://developer.download.nvidia.cn/compute/cuda/repos/rhel7/x86_64/cuda-drivers-fabricmanager-${driver_version}-1.x86_64.rpmrpm -ivh nvidia-fabric-manager-${driver_version}-1.x86_64.rpm Ubuntu等其他操作系统 以Ubuntu 18.04为例: driver_version=470.103.01driver_version_main=$(echo $driver_version | awk -F '.' '{print $1}')wget https://developer.download.nvidia.cn/compute/cuda/repos/ubuntu1804/x86_64/nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.debdpkg -i nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.deb 启动nvidia-fabricmanager服务。 systemctl enable nvidia-fabricmanagersystemctl start nvidia-fabricmanager 查看nvidia-fabricmanager服务状态。 systemctl status nvidia-fabricmanager
  • 约束与限制 下载的驱动必须是后缀为“.run”的文件。 仅支持Nvidia Tesla驱动,不支持GRID驱动。 安装或重装插件时,需要保证驱动下载链接正确且可正常访问,插件对链接有效性不做额外校验。 gpu-device-plugin插件仅提供驱动的下载及安装脚本执行功能,插件的状态仅代表插件本身功能正常,与驱动是否安装成功无关。 如您使用A100/A800的多GPU卡机型,您需要手动安装与版本驱动对应的nvidia-fabricmanager服务才可以正常使用,详情请参见安装nvidia-fabricmanager服务。
  • 自建集群 如果您的集群是通过Kubernetes官方二进制文件或Kubeadm等部署工具搭建的标准集群,可直接使用以下方法获取KubeConfig文件。 该方法不适用于云服务商提供的商用集群,商用集群的KubeConfig文件获取请参考第三方云厂商集群。 登录集群Master节点。 查看集群访问凭证。默认情况下,自建集群的配置文件路径为Master节点的“$HOME/.kube/config”,如您的集群指定了其他KubeConfig配置文件,请自行更换路径。 cat $HOME/.kube/config 复制该凭证内容。 在本地创建一个YAML文件,将上一步中复制的凭证内容粘贴至该文件并保存。 使用4中的YAML文件导入集群,详细步骤请继续参考注册附着集群(公网接入)或注册附着集群(私网接入)。
  • 不同规格的资源配额要求 安装log-agent插件时,需确保集群中有足够的CPU、内存等可调度资源,不同插件规格的资源配额要求请参见表1。 表1 不同规格的资源配额要求 插件规格 容器实例 CPU配额 内存配额 小规格 (实例数为1) fluent-bit 申请:100m 限制:500m 申请:200Mi 限制:500Mi cop-logs 申请:100m 限制:1 申请:100Mi 限制:500Mi log-operator 申请:100m 限制:500m 申请:100Mi 限制:500Mi otel-collector 申请:200m 限制:1 申请:1Gi 限制:2Gi 大规格 (实例数为2) fluent-bit 申请:100m 限制:500m 申请:200Mi 限制:500Mi cop-logs 申请:100m 限制:1 申请:100Mi 限制:500Mi log-operator 申请:100m 限制:500m 申请:100Mi 限制:500Mi otel-collector 申请:200m 限制:1 申请:1Gi 限制:2Gi
共100000条