# 云容器实例 CCI 1.0 ## 产品介绍 - [什么是云容器实例](https://support.huaweicloud.com/productdesc-cci/cci_03_0001.md): 云容器实例(Cloud Container Instance,CCI)服务提供Serverless Container(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。Serverless是一种架构理念,是指不用创建和管理服务器、不用担心服务器的运行状态(服务器是否在工作等),只需动态申请应用需要的资源,把服务器留给专门 - [产品优势](https://support.huaweicloud.com/productdesc-cci/cci_03_0003.md): 业界领先的Serverless Container架构,用户无需创建Kubernetes服务器集群,直接使用控制台、kubectl、Kubernetes API创建容器。云容器实例的Kubernetes集群是提前创建好的,且从单一用户角度看资源“无限大”,所以能够提供容器秒级弹性伸缩能力,让您能够轻松应对业务快速变化,稳健保障业务SLA。 - [应用场景](https://support.huaweicloud.com/productdesc-cci/cci_03_0004.md): 当前主流的大数据、AI训练和推理等应用(如Tensorflow、Caffe)均采用容器化方式运行,并需要大量GPU、高性能网络和存储等硬件加速能力,并且都是任务型计算,需要快速申请大量资源,计算任务完成后快速释放。云容器实例提供如下特性,能够很好的支持这类场景。计算加速:提供GPU/Ascend等异构芯片加速能力大规模网络容器实例调度:支 - [产品功能](https://support.huaweicloud.com/productdesc-cci/cci_03_0058.md): 本页面介绍了CCI服务支持的主要功能。关于各功能支持的地域(Region)信息,可通过控制台查询详情。 - [基于IAM进行访问控制](https://support.huaweicloud.com/productdesc-cci/cci_03_0018.md): 如果您需要对华为云上购买的CCI资源,为企业中的员工设置不同的访问权限,以达到不同员工之间的权限隔离,您可以使用统一身份认证服务(Identity and Access Management,简称IAM)进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能,可以帮助您安全地控制华为云资源的访问。如果华为账号已经能满足您的要 - [身份认证与访问控制](https://support.huaweicloud.com/productdesc-cci/cci_03_0011.md): CCI当前认证鉴权是在Kubernetes的角色访问控制(RBAC)与统一身份认证服务(IAM)的能力基础上,提供的基于IAM的细粒度权限控制和IAM Token认证,同时支持命名空间级别及命名空间以下资源的权限控制,帮助用户便捷灵活地对租户下的IAM用户、用户组设定不同的操作权限。命名空间权限:是基于Kubernetes RBAC能力的 - [数据保护技术](https://support.huaweicloud.com/productdesc-cci/cci_03_0012.md): 云容器实例同时具备容器级别的启动速度和虚拟机级别的安全隔离能力,提供更好的容器体验。原生支持安全容器。基于安全容器的内核虚拟化技术,为您提供全面的安全隔离与防护。自有硬件虚拟化加速技术,让您获得更高性能的安全容器。SSL(安全套接层,Secure Sockets Layer)是一种安全协议,目的是为互联网通信,提供安全及数据完整性保障。云 - [审计与日志](https://support.huaweicloud.com/productdesc-cci/cci_03_0013.md): 云审计服务(Cloud Trace Service,CTS),是华为云安全解决方案中专业的日志审计服务,提供对各种云资源操作记录的收集、存储和查询功能,可用于支撑安全分析、合规审计、资源跟踪和问题定位等常见应用场景。用户开通云审计服务并创建和配置追踪器后,CTS可记录您从云管理控制台或者开放API发起的云服务资源操作请求以及每次请求的结果 - [监控安全风险](https://support.huaweicloud.com/productdesc-cci/cci_03_0016.md): 为使用户更好地掌握工作负载的运行状态,CCI配合AOM对其进行全方位的监控。通过AOM界面您可监控CCI的基础资源和运行在CCI上的应用,同时在AOM界面还可查看相关的日志和告警。CCI支持Pod资源基础监控能力,提供CPU、内存、磁盘、网络等多种监控指标,满足对Pod资源的基本监控需求。Pod内置系统agent,默认会以http服务的形 - [权限管理](https://support.huaweicloud.com/productdesc-cci/cci_03_0008.md): 如果您需要对华为云购买的CCI资源,为企业中的员工设置不同的访问权限,以达到不同员工之间的权限隔离,您可以使用统一身份认证服务(Identity and Access Management,简称IAM)进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能,可以帮助您安全地控制云资源的访问。通过IAM,您可以在您的云账号中给 - [约束与限制](https://support.huaweicloud.com/productdesc-cci/cci_03_0007.md): 本章介绍CCI相关的使用限制,以便于您更好地使用CCI。下表为CCI实例相关的使用限制。基于华为云的安全性带来的限制,CCI目前还不支持Kubernetes中HostPath、DaemonSet等功能,具体如下表所示。不支持的功能说明推荐替代方案HostPath挂载本地宿主机文件到容器中使用云盘或者SFS文件系统HostNetwork将宿 - [基本概念](https://support.huaweicloud.com/productdesc-cci/cci_03_0005.md): 云容器实例基于Kubernetes的负载模型增强了容器安全隔离、负载快速部署、弹性负载均衡、弹性扩缩容、蓝绿发布等重要能力。云容器实例提供Kubernetes原生API,支持使用kubectl,且提供图形化控制台,让您能够拥有完整的端到端使用体验,使用云容器实例前,建议您先了解相关的基本概念。容器镜像是一个特殊的文件系统,除了提供容器运行 - [与其他服务的关系](https://support.huaweicloud.com/productdesc-cci/cci_03_0006.md): 云容器实例需要与其他云服务协同工作,云容器实例需要获取如下云服务资源的权限。容器镜像服务容器镜像服务(Software Repository for Container,SWR)是一种支持容器镜像全生命周期管理的服务, 提供简单易用、安全可靠地镜像管理功能,帮助用户快速部署容器化服务。您可以使用容器镜像服务中的镜像创建负载。容器镜像服务( - [区域和可用区](https://support.huaweicloud.com/productdesc-cci/cci_03_0010.md): 区域和可用区用来描述数据中心的位置,您可以在特定的区域、可用区创建资源。区域(Region):从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Reg ## 计费说明 - [计费概述](https://support.huaweicloud.com/price-cci/cce_06_0001.md): 通过阅读本文,您可以快速了解云容器实例 CCI的计费模式、计费项、续费、欠费等主要计费信息。计费模式云容器实例提供按需计费模式。按需计费是一种后付费模式,即先使用再付费,按照云容器实例实际使用时长计费。关于按需计费模式的详细介绍请参见计费模式概述。云容器实例提供按需计费模式。按需计费是一种后付费模式,即先使用再付费,按照云容器实例实际使用 - [计费模式概述](https://support.huaweicloud.com/price-cci/cce_06_0003.md): 云容器实例提供计费模式分为按需计费和套餐包计费两种方式。按需计费,按需计费一种后付费模式,即先使用再付费,以实例为单位,采用按量付费的计费模式,秒级计费,按小时结算。套餐包计费,允许您根据实际业务需求灵活地调整资源使用,无需提前预置资源,从而降低预置过多或不足的风险。一般适用于电商抢购等设备需求量瞬间大幅波动的场景。 - [按需计费](https://support.huaweicloud.com/price-cci/cce_06_0004.md): 按需计费是一种先使用再付费的计费模式,适用于无需任何预付款或长期承诺的用户。本文将介绍按需计费CCI资源的计费规则。按需计费适用于具有不能中断的短期、突增或不可预测的应用或服务,例如电商抢购、临时测试、科学计算。以下计费项支持按需计费。假设您计划购买一台通用计算型云容器实例。在购买云容器实例页面底部,您将看到所需费用的明细,如图所示。配置 - [资源套餐包](https://support.huaweicloud.com/price-cci/cce_06_0005.md): 套餐包计费模式允许您根据实际业务需求灵活地调整资源使用,无需提前预置资源,从而降低预置过多或不足的风险。本文将介绍套餐包CCI资源的计费规则。套餐包计费模式一般适用于电商抢购等设备需求量瞬间大幅波动的场景。按需套餐包不支持企业项目,可用于扣减所有企业项目下的按需资源。通用型按需套餐包仅支持对通用计算型实例的按需扣减,不支持其他计费实例的扣 - [计费项](https://support.huaweicloud.com/price-cci/cce_06_0006.md): 云容器实例的计费项由Pod规格组成。具体内容如表1所示。 - [计费样例](https://support.huaweicloud.com/price-cci/cce_06_0011.md): 某用户于2023/03/18 15:30:00购买了一台按需计费的云容器实例,规格配置Pod规格:CPU 2核,内存 4GB用了一段时间后,用户发现云容器实例当前规格无法满足业务需要,于2023/03/20 9:00:00扩容Pod规格为CPU 4核,内存 8GB。那么在3月份,该云容器实例总共产生多少费用呢?可以将云容器实例的使用阶段按 - [费用账单](https://support.huaweicloud.com/price-cci/cce_06_0020.md): 您可以在“费用中心 > 账单管理”查看资源的费用账单,以了解该资源在某个时间段的使用量和计费信息。按需计费资源的扣费时间可能会滞后于结算周期,例如:按小时结算的云容器实例在8:30删除资源,但是8:00~9:00期间产生的费用,通常会在10:00左右才进行扣费。在“费用中心 > 账单管理 > 流水和明细账单 > 流水账单”中,“消费时间” - [欠费说明](https://support.huaweicloud.com/price-cci/cce_06_0021.md): 用户在使用云容器实例时,账户的可用额度小于待结算的账单,即被判定为账户欠费。欠费后,可能会影响云服务资源的正常运行,请及时充值。已购买按需计费云容器实例,因持续性周期扣款而导致账户的余额不足。删除按需计费云容器实例后,因存在未删除的关联资源(如云硬盘、EIP)持续扣费而导致账户的余额不足。按需计费当您的账号因按需CCI资源自动扣费导致欠费 - [停止计费](https://support.huaweicloud.com/price-cci/cce_06_0022.md): 对于按需计费模式的资源,例如按需计费的云容器实例、按需计费的云硬盘等,如果不再使用这些资源且需停止计费,请删除相应资源。为了确保所有计费资源都能够被找到并删除,您可以在费用账单中获取计费资源的ID,通过这些ID信息找到具体的资源,然后将其一一删除。具体操作如下:使用资源名称查找资源进入云容器实例总览页面。进入Pod列表页面。如果搜索结果为 - [计费FAQ](https://support.huaweicloud.com/price-cci/cce_06_0024.md): 创建的工作负载,在删除后,“我的资源”中显示依然存在,且会持续扣费,建议您确认下该命名空间下是否还有Pod在运行,如需停用,请删除Pod,后台会停止计费。问题现象:账户重置后有余额,在CCI中新建命名空间仍然提示欠费,无法操作。解决方法:退出账号,重新登录或清理浏览器缓存。问题现象:资源无法删除。解决方案:当前账号欠费,账号欠费会导致部分 ## 快速入门 - [使用CCI部署静态Web应用](https://support.huaweicloud.com/qs-cci/cci_qs_0001.md): 本节通过在云容器实例上部署一个名称为2048的静态Web游戏应用为例,帮助您学习如何使用云容器实例。您将按以下流程学习如何使用云容器实例。在开始操作前,请您先注册华为账号并完成实名认证,详情请参见注册华为账号并开通华为云和个人实名认证。请您保证账户有足够的资金,以免创建集群失败,具体操作请参见账户充值。要将已有的应用部署在云容器实例上运行 ## 服务公告 - [修复Linux内核SACK漏洞公告](https://support.huaweicloud.com/bulletin-cci/cci_bulletin_0003.md): 华为云CCI团队已经于7月11日0点修复Linux内核SACK漏洞。未关联ELB、EIP的容器实例,因为不对公网暴露,不受该漏洞影响,无需处理。无状态负载(Deployment):漏洞修复之后(7月11日0点之后)创建的无状态负载,不受该漏洞影响;漏洞修复之前(7月11日0点之前)创建的无状态负载,建议选择业务不受影响的时间窗口,删除并重 - [kube-proxy安全漏洞CVE-2020-8558公告](https://support.huaweicloud.com/bulletin-cci/cci_bulletin_0004.md): 华为云CCI团队已经于7月10日识别kube-proxy安全漏洞CVE-2020-8558并对其进行了详细分析,分析结论为:基于CCI服务当前形态,用户与CCI服务均不受本次漏洞的影响,无需进行处理。Kubernetes官方发布安全漏洞(CVE-2020-8558),Kubernetes节点的设置允许相邻主机绕过本地主机边界进行访问。Ku - [CVE-2020-13401的漏洞公告](https://support.huaweicloud.com/bulletin-cci/cci_bulletin_0005.md): 华为云CCI团队已经于7月22日识别 Kubernetes 安全漏洞CVE-2020-13401并对其进行了详细分析,分析结论为:用户与CCI服务均不受本次漏洞的影响,无需进行处理。Kubernetes官方发布安全漏洞CVE-2020-13401,CVSS Rating:CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C - [CVE-2020-8559的漏洞公告](https://support.huaweicloud.com/bulletin-cci/cci_bulletin_0006.md): 华为云CCI团队已经于7月22日识别Kubernetes 安全漏洞CVE-2020-8559并对其进行了详细分析,分析结论为:用户与CCI服务均不受本次漏洞的影响,无需进行处理。近日Kubernetes官方披露了kube-apiserver组件的安全漏洞CVE-2020-8559,CVSS Rating: Medium (6.4)CVSS - [CVE-2020-8557的漏洞公告](https://support.huaweicloud.com/bulletin-cci/cci_bulletin_0007.md): 华为云CCI团队已经于7月22日识别Kubernetes安全漏洞CVE-2020-8557并对其进行详细分析,分析结论为:用户与CCI服务均不受本次漏洞的影响,无需进行处理。Kubernetes官方发布安全漏洞CVE-2020-8557,CVSS Rating: Medium (5.5)CVSS:3.1/AV:L/AC:L/PR:L/UI - [CCE突发弹性引擎(对接CCI)插件版本发布记录](https://support.huaweicloud.com/bulletin-cci/cci_bulletin_0002.md): CCE会定期发布CCE突发弹性引擎(对接CCI)插件新版本,进行特性更新、性能优化和BUG修复,以提升用户体验和系统稳定性。为了方便您能够体验最新功能、规避已知漏洞或问题,并保障业务的安全性和可靠性,建议定期升级至最新版本的CCE突发弹性引擎(对接CCI)插件。 ## 用户指南 - [CCI权限说明](https://support.huaweicloud.com/usermanual-cci/cci_01_0093.md): CCI当前认证鉴权是在Kubernetes的角色访问控制(RBAC)与统一身份认证服务(IAM)的能力基础上,提供的基于IAM的细粒度权限控制和IAM Token认证,同时支持命名空间级别及命名空间以下资源的权限控制,帮助用户便捷灵活地对租户下的IAM用户、用户组设定不同的操作权限。命名空间权限:是基于Kubernetes RBAC能力的 - [创建用户并授权使用CCI](https://support.huaweicloud.com/usermanual-cci/cci_01_0072.md): 如果您需要对您所拥有的云容器实例(CCI)进行精细的权限管理,您可以使用统一身份认证服务(Identity and Access Management,简称IAM),通过IAM,您可以:根据企业的业务组织,在您的云账号中,给企业中不同职能部门的员工创建IAM用户,让员工拥有唯一安全凭证,并使用CCI资源。根据企业用户的职能,设置不同的访问 - [为用户/用户组授权命名空间权限](https://support.huaweicloud.com/usermanual-cci/cci_01_0094.md): 本章节通过简单的命名空间授权方法,将CCI服务的用户和用户组授予操作不同命名空间资源的权限,从而使用户和用户组拥有命名空间的操作权限。设置流程如示例流程所示。您需要拥有一个主账号,仅主账号、授予了CCIFullAccess权限的用户或拥有RBAC所有权限的用户,才可以对其他用户进行授权操作。本例将对用户和用户组授予操作不同命名空间资源的权 - [为委托账号授权命名空间权限](https://support.huaweicloud.com/usermanual-cci/cci_01_0104.md): 命名空间下资源权限的授权,是基于Kubernetes RBAC能力的授权。通过权限设置可以让不同的委托账号拥有操作指定Namespace下Kubernetes资源的权限。本章节通过简单的命名空间授权方法,将CCI服务的委托账号授予操作不同命名空间资源的权限,从而使委托账号拥有命名空间的操作权限。用户/用户组:选择委托账号,并在二级选项中选 - [CCI自定义策略](https://support.huaweicloud.com/usermanual-cci/cci_01_0077.md): 如果系统预置的CCI权限,不满足您的授权要求,可以创建自定义策略。自定义策略中可以添加的授权项(Action)请参考权限策略和授权项。目前支持以下两种方式创建自定义策略:可视化视图创建自定义策略:无需了解策略语法,按可视化视图导航栏选择云服务、操作、资源、条件等策略内容,可自动生成策略。JSON视图创建自定义策略:可以在选择策略模板后,根 - [委托联邦用户管理资源](https://support.huaweicloud.com/usermanual-cci/cci_01_0105.md): 如果您需要将账号A的资源委托给账号B的联邦用户进行管理。首先您可以登录账号A,为账号B创建委托并授予命名空间权限。接下来登录账号B,与账号B做联邦身份认证,认证完成后,账号B将委托权限分配给联邦用户,使得联邦用户可以切换为账号A的委托。最后以联邦用户的身份登录到华为云,切换角色之后,就可以管理账号A中的资源。本章节为您介绍委托联邦用户管理 - [系统委托说明](https://support.huaweicloud.com/usermanual-cci/cci_01_0110.md): 由于CCI服务在运行中对弹性负载均衡、容器镜像等各类云服务都存在依赖关系,因此当您首次登录CCI控制台时,CCI将自动请求获取当前区域下的云资源权限,从而更好地为您提供服务。CCI自动创建的委托:cci_admin_trustcci_admin_trust委托具有Tenant Administrator权限。Tenant Administ - [授权云容器实例访问其他云服务的权限](https://support.huaweicloud.com/usermanual-cci/cci_01_0005.md): 登录云容器实例控制台,并授予云容器实例访问其他云服务的权限。云容器实例当前仅支持在“华东-上海一”、“华东-上海二”、“华北-北京四”、“华南-广州”、“西南-贵阳一”区域使用。云容器实例CCI不支持在子项目创建资源请求。授信成功后,将会创建一个委托,委托名称为cci_admin_trust,您可以在IAM服务控制台中查看。 - [命名空间](https://support.huaweicloud.com/usermanual-cci/cci_01_0001.md): 命名空间(Namespace)是用于在多个用户间划分资源的一种方法,特别适用于拥有多个团队或项目的用户。当项目和人员数量较多时,可以根据项目属性(如生产、测试、开发等)创建不同的命名空间,以实现部分环境的隔离。目前,“华南-广州”、“华东-上海二”、“西南-贵阳一”区域暂不支持“GPU加速型”资源。一个账号在同一个区域支持创建5个命名空间 - [Pod](https://support.huaweicloud.com/usermanual-cci/cci_01_0067.md): Pod是Kubernetes创建或部署的最小单位。一个Pod封装一个或多个容器(container)、存储资源(volume)、一个独立的网络IP以及管理控制容器运行方式的策略选项。Pod使用主要分为两种方式:Pod中运行一个容器。这是Kubernetes最常见的用法,您可以将Pod视为单个封装的容器,但是Kubernetes是直接管理P - [无状态负载(Deployment)](https://support.huaweicloud.com/usermanual-cci/cci_01_0011.md): 无状态负载与Kubernetes中Deployment Workloads的定义方式相同,是对Pod的服务化封装。一个无状态负载可以包含一个或多个Pod,每个Pod的角色相同,所以系统会自动为无状态负载的多个Pod分发请求。同一无状态负载的所有Pod共享存储卷。在Pod这个章节介绍了Pod,Pod是Kubernetes创建或部署的最小单位 - [任务(Job)](https://support.huaweicloud.com/usermanual-cci/cci_01_0051.md): 任务是负责批量处理短暂的一次性任务(short lived one-off tasks),即仅执行一次的任务,它保证批处理任务的一个或多个Pod成功结束。任务(Job)是Kubernetes用来控制批处理型任务的资源对象。批处理业务与长期伺服业务(Deployment)的主要区别是批处理业务的运行有头有尾,而长期伺服业务在用户不停止的情况 - [定时任务(CronJob)](https://support.huaweicloud.com/usermanual-cci/cci_01_0066.md): 定时任务(CronJob)是基于时间控制的任务(Job),类似于Linux系统的crontab,在指定的时间周期运行指定的任务。任务名称请输入以小写字母或数字开头,小写字母、数字、中划线(-)、点(.)组成(其中两点不能相连,点不能与中划线相连),小写字母或数字结尾的1到52字符的字符串。任务名称不支持修改,如需修改名称,需要重新创建。请 - [查看资源使用率](https://support.huaweicloud.com/usermanual-cci/cci_01_0070.md): 当您创建完工作负载后,您也许会非常关心每个Pod的资源利用率。云容器实例提供了查看CPU/内存、GPU/显存的界面,您只需要在无状态负载、任务、定时任务中Pod列表的监控Tab下即可查看资源使用率,如图1所示。您也可以在Pod管理中查看所有Pod的资源使用率。 - [容器启动命令](https://support.huaweicloud.com/usermanual-cci/cci_01_0050.md): 启动容器就是启动主进程,但有些时候,启动主进程前,需要一些准备工作。比如MySQL类的数据库,可能需要一些数据库配置、初始化的工作,这些工作要在最终的MySQL服务器运行之前解决。这些操作,可以在制作镜像时通过在Dockerfile文件中设置ENTRYPOINT或CMD来完成,如下所示的Dockerfile中设置了ENTRYPOINT [ - [容器生命周期](https://support.huaweicloud.com/usermanual-cci/cci_01_0012.md): 云容器实例基于Kubernetes,提供了容器生命周期钩子,在容器的生命周期的特定阶段执行调用,比如容器在停止前希望执行某项操作,就可以注册相应的钩子函数。目前提供的生命周期钩子函数如下所示。启动后处理(PostStart):容器启动后触发。停止前处理(PreStop):容器停止前触发。当前云容器实例仅支持命令行类型(Exec)钩子函数。 - [健康检查](https://support.huaweicloud.com/usermanual-cci/cci_01_0013.md): 健康检查是指容器运行过程中,根据需要,定时检查容器中应用健康状况。云容器实例基于Kubernetes,提供了两种健康检查的方式:应用存活探针(liveness probe),探测应用是否已经启动:该检查方式用于检测容器是否存活,类似于我们执行ps命令检查进程是否存在。如果容器的存活检查的结果为失败,云容器实例会对该容器执行重启操作;如果容 - [远程终端](https://support.huaweicloud.com/usermanual-cci/cci_01_0059.md): 远程终端(web-terminal)提供连接容器功能,帮助您快速调试容器。web-terminal 默认是以sh shell登录容器,要求容器支持sh shell。只有状态为运行中的容器可终端登录。退出时,请在web-terminal中输入exit,否则会导致sh进程残留。当出现“#” 号时,说明已登录。 - [升级负载](https://support.huaweicloud.com/usermanual-cci/cci_01_0014.md): 负载创建成功后,可以对负载更新和升级。当前支持滚动升级和替换升级两种方式。滚动升级:将逐步用新版本的实例替换旧版本的实例,升级的过程中,业务流量会同时负载均衡分布到新老的实例上,因此业务不会中断。替换升级:将先把您工作负载的老版本实例删除,再安装指定的新版本,升级过程中业务会中断。滚动升级:将逐步用新版本的实例替换旧版本的实例,升级的过程 - [伸缩负载](https://support.huaweicloud.com/usermanual-cci/cci_01_0015.md): 本节主要讲解工作负载弹性伸缩和手动伸缩的配置方式。请根据实际业务选择。弹性伸缩:支持告警、定时、周期三种策略。配置完成后可基于资源变化、固定时间、固定周期自动触发实例的增减。手动伸缩:配置完成后立即触发实例的增减。对于挂载了云硬盘存储卷的Pod,实例缩容时不会同步删除云硬盘。且再次创建相同名称的Pod时,无法挂载云硬盘。当前仅支持无状态负 - [客户端DNS配置](https://support.huaweicloud.com/usermanual-cci/cci_01_0099.md): CCI支持通过dnsPolicy标记每个Pod配置不同的DNS策略。None:允许Pod忽略CCI预置的DNS设置。这种方式一般用于想要自定义DNS配置的场景,需要和dnsConfig配合一起使用,达到自定义DNS的目的。Default:使用CCI提供的内网DNS,能够完成服务域名和代理其他公网域名解析,具体请参见华为云云解析服务提供的内 - [网络访问概述](https://support.huaweicloud.com/usermanual-cci/cci_01_0061.md): 负载访问可以分为如下几种场景:内网访问:访问内网资源。使用Service方式访问:该方式适合CCI中同一个命名空间中的负载相互访问。使用ELB(私网)访问:该方式适合云服务内部资源(云容器实例以外的资源,如ECS等)且与负载在同一个VPC内互相访问,另外在同一个VPC不同命名空间的负载也可以选择此种方式。通过内网域名或ELB的IP:Por - [内网访问](https://support.huaweicloud.com/usermanual-cci/cci_01_0054.md): 内网访问有如下两种情况:使用Service方式访问:该方式适合CCI中同一个命名空间中的负载相互访问。使用私网ELB访问:该方式适合云服务内部资源(云容器实例以外的资源,如ECS等)且与负载在同一个VPC内互相访问,另外在同一个VPC不同命名空间的负载也可以选择此种方式。通过内网域名或ELB的IP:Port为内网提供服务,支持HTTP/H - [公网访问](https://support.huaweicloud.com/usermanual-cci/cci_01_0055.md): 公网访问是指使用外部网络访问负载,您可以给负载绑定共享型ELB实例(ELB必须与负载在同一个VPC内),通过ELB实例访问负载,当前外部访问支持四层和七层负载公网访问。四层公网访问支持TCP和UDP两种协议,设置完成后可以通过elb公网ip:elb端口访问负载。七层公网访问支持HTTP和HTTPS两种协议访问,设置完成后,可以通过http - [从容器访问公网](https://support.huaweicloud.com/usermanual-cci/cci_01_0065.md): 您可以使用NAT网关服务,该服务能够为VPC内的容器实例提供网络地址转换(Network Address Translation)服务,SNAT功能通过绑定弹性公网IP,实现私有IP向公有IP的转换,可实现VPC内的容器实例共享弹性公网IP访问Internet。其原理如图1所示。通过NAT网关的SNAT功能,即使VPC内的容器实例不配置弹 - [存储概述](https://support.huaweicloud.com/usermanual-cci/cci_01_0068.md): 云容器实例支持多种类型的持久化存储,满足您不同场景下的存储需求。创建工作负载时,可以使用以下类型的存储。云硬盘存储卷(EVS)云容器实例支持将EVS创建的云硬盘存储卷挂载到容器的某一路径下。当容器迁移时,挂载的云硬盘存储卷将一同迁移。这种存储方式适用于需要永久化保存的数据。详情见云硬盘存储卷。使用EVS云硬盘存储卷时,请注意以下事项,否则 - [云硬盘存储卷](https://support.huaweicloud.com/usermanual-cci/cci_01_0045.md): 为满足数据的持久化需求,云容器实例支持将云硬盘(EVS)挂载到容器中。通过云硬盘,可以将存储系统的远端文件目录挂载到容器中,数据卷中的数据将被永久保存,即使删除了容器,只是卸载了挂载数据卷,数据卷中的数据依然保存在存储系统中。EVS目前支持普通I/O(上一代产品)、高I/O、超高I/O三种规格。普通I/O(上一代产品):后端存储由SATA - [对象存储卷](https://support.huaweicloud.com/usermanual-cci/cci_01_0046.md): 云容器实例支持将对象存储卷挂载到容器中。对象存储服务(OBS)是一个基于对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力。OBS的更多信息,请参见对象存储服务。待挂载的对象存储必须是按需付费,更多信息,请参见对象存储计费。请谨慎执行对象存储的删除操作,以避免造成CCI中容器不可用。使用API方式挂载OBS,配置容器启 - [文件存储卷 3.0](https://support.huaweicloud.com/usermanual-cci/cci_01_0062.md): 云容器实例支持创建弹性文件存储3.0(SFS 3.0)挂载到容器中,当前仅支持NFS协议类型的文件系统。SFS 3.0存储卷适用于多种工作负载场景,包括媒体处理、内容管理、大数据分析和分析工作负载程序等场景。各区域支持的文件存储卷类型,如下表所示:待挂载的文件存储必须是按需付费,更多信息,请参见文件存储计费。使用文件存储期间,不能修改文件 - [文件存储卷 1.0(待下线)](https://support.huaweicloud.com/usermanual-cci/cci_01_0063.md): 云容器实例支持创建弹性文件存储1.0(SFS 1.0)挂载到容器中,当前仅支持NFS协议类型的文件系统。SFS 1.0存储卷适用于多种工作负载场景,包括媒体处理、内容管理、大数据分析和分析工作负载程序等场景。SFS 1.0容量型文件存储即将下线,请谨慎使用。SFS 3.0与SFS 1.0文件系统规格差异小,可以使用SFS 3.0平滑替换S - [极速文件存储卷](https://support.huaweicloud.com/usermanual-cci/cci_01_0069.md): 云容器实例支持创建弹性文件存储 SFS Turbo(极速文件存储)并挂载到容器的某一路径下,极速文件存储具有按需申请,快速供给,弹性扩展,方便灵活等特点,适用于DevOps、容器微服务、企业办公等应用场景。SFS Turbo当前仅支持通用型文件系统,不支持HPC型文件系统。待挂载的极速文件存储必须是按需付费。更多信息,请参见极速文件存储计 - [插件管理](https://support.huaweicloud.com/usermanual-cci/cci_01_0057.md): kubernetes除了必要的支撑组件以外,其他的组件都是以插件的形式运行,如Kubernetes DNS,Kubernetes Dashboard等等。插件是对现有功能的扩展,当前云容器实例提供了coredns插件供您使用,您可以在云容器实例界面上直接安装插件,从而方便的使用插件提供的功能。coredns插件为您的其他负载提供内部域名解 - [配置中心概述](https://support.huaweicloud.com/usermanual-cci/cci_01_0147.md): ConfigMap是一种用于存储应用所需配置信息的资源类型。资源创建完成后,可在容器应用中作为文件使用。详情请参见使用ConfigMap。Secret是Kubernetes中一种加密存储的资源对象,您可以将认证信息、证书、私钥等保存在密钥中,在容器启动时以环境变量加载到容器中,或以文件方式挂载到容器中。详情请参见使用Secret。Secr - [使用ConfigMap](https://support.huaweicloud.com/usermanual-cci/cci_01_0034.md): CCI控制台上也支持直接使用YAML方式创建配置项,在右上角单击YAML创建,输入ConfigMap的YAML定义内容,单击确定即可,YAML定义可以参考yaml格式。方式一:手工输入。参照表1设置新增配置参数,其中带“*”标志的参数为必填参数。新建配置参数说明参数参数说明基本信息*配置项名称新建的ConfigMap名称。请输入以小写字母 - [使用Secret](https://support.huaweicloud.com/usermanual-cci/cci_01_0035.md): 方式一:手工输入。参照表1设置基本信息,其中带“*”标志的参数为必填参数。基本信息说明参数参数说明基本信息*密钥名称新建Secret的名称。以小写字母或数字开头,小写字母、数字、中划线(-)、点(.)组成(其中两点不能相连,点不能与中划线相连),小写字母或数字结尾的1到253字符的字符串。描述密钥的描述信息。*密钥数据Secret的数据可 - [添加SSL证书](https://support.huaweicloud.com/usermanual-cci/cci_01_0043.md): SSL证书就是遵守SSL(Secure Socket Layer)协议,由受信任的数字证书颁发机构CA,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。服务器通过安装SSL证书可以实现数据信息在客户端和服务器之间的加密传输,可以防止数据信息的泄露,保证了双方传递信息的安全性,而且可以通过服务器证书验证他所访问的网站是否是真实 - [镜像快照概述](https://support.huaweicloud.com/usermanual-cci/cci_01_0112.md): 用户通过CCI镜像快照功能,能够实现从SWR镜像仓库、开源镜像仓库、自建镜像仓库拉取镜像制作成相应的镜像快照。在创建负载过程中,使用预先创建的镜像快照,可以跳过镜像拉取动作,提升负载的启动速度。用户在创建Pod时使用镜像快照(ImageSnapshot),可以避免镜像下载,减少Pod启动时间。本文将介绍镜像快照的基本功能,创建和使用方式等 - [创建镜像快照](https://support.huaweicloud.com/usermanual-cci/cci_01_0113.md): 本章介绍了如何在控制台创建镜像快照。要了解镜像快照的工作原理,请参阅镜像快照概述。镜像快照名称请输入以小写字母或数字开头,小写字母、数字、中划线(-)、点(.)组成(其中两点不能相连,点不能与中划线相连),小写字母或数字结尾的1到63字符的字符串。请输入以小写字母或数字开头,小写字母、数字、中划线(-)、点(.)组成(其中两点不能相连,点 - [使用镜像快照](https://support.huaweicloud.com/usermanual-cci/cci_01_0114.md): 使用镜像快照创建CCI实例支持以下两种方式:自动匹配:自动匹配将从用户创建的所有可用镜像快照中选择最优的镜像。明确指定:明确指定使用的镜像快照。该镜像缓存必须为创建完成可用(Available)状态。更多内容,请参考镜像快照概述。容器配置填写完成后,打开“启动镜像快照”开关,选择自动匹配镜像快照或指定镜像快照。自动匹配镜像快照自动匹配将从 - [管理镜像快照](https://support.huaweicloud.com/usermanual-cci/cci_01_0115.md): 本章介绍了如何通过控制台对镜像快照执行查询、删除操作。要了解镜像快照的工作原理,请参阅镜像快照概述。当您的镜像快照创建完成后,可以通过如下步骤查看详情。当镜像快照状态为可用时,可以使用该镜像快照。当镜像快照状态为异常时,您可在详情页面查看事件详细信息。镜像快照对应一份EVS云盘快照,保留镜像快照需要支付相应的EVS云盘快照费用。对于不再使 - [日志管理](https://support.huaweicloud.com/usermanual-cci/cci_01_0049.md): 云容器实例支持挂载日志存储卷采集日志,您只需要在创建负载的时候添加日志存储卷,即可将日志写入到日志存储卷中。云容器实例对接了应用运维管理(Application Operations Management,AOM),AOM会采集日志存储中的.log等格式日志文件,转储到AOM中,方便您查看和检索。audit.log,oss.icAgent - [监控管理](https://support.huaweicloud.com/usermanual-cci/cci_01_0106.md): CCI配合AOM对Pod资源进行基础监控,资源基础监控包含CPU/内存/磁盘等。您可以在CCI控制台查看Pod的监控指标数据,也可以在AOM中查看。在AOM控制台,可以查看容器实例的指标,指标内容请参见表1。在CCI控制台上,查看Pod监控数据。进入CCI,左侧导航栏中选择“工作负载 > 无状态(Deployment)”,在右侧页面单击要 - [CCE突发弹性引擎(对接 CCI)插件功能概览](https://support.huaweicloud.com/usermanual-cci/cci_01_0135.md): 本章节主要介绍bursting提供的服务功能概览、资源使用说明和自定义注解。使用CCE集群+bursting基于如下模型,用户需要重点关注下发负载和调度。下发负载涉及到用户给负载进行的配置项,和用户自身的业务高度相关。CCE集群+bursting的使用场景涉及到华为云周边服务的搭配使用,如下表格详细描述了涉及到的周边服务。CCE集群+bu - [CCE对接CCI](https://support.huaweicloud.com/usermanual-cci/cci_01_0141.md): 本章节主要指导用户在CCE集群上使用bursting插件,快速帮助用户将负载通过插件从CCE集群弹性到CCI上。CCE突发弹性引擎(对接 CCI)作为一种虚拟的kubelet用来连接Kubernetes集群和其他平台的API。Bursting的主要场景是将Kubernetes API扩展到无服务器的容器平台(如CCI)。基于该插件,支持用 - [调度负载到CCI](https://support.huaweicloud.com/usermanual-cci/cci_01_0116.md): 对于使用CCE集群和CCI的使用场景,用户可以按需将工作负载调度到CCE集群节点或者对接CCI的虚拟节点,本文详细介绍如何将CCE集群的工作负载调度到CCI上。bursting插件当前提供了以下方式管理CCE集群的pod,使其能够调度到CCI:方法一:通过配置labels控制pod调度到CCI方法二:通过配置profile控制pod调度到 - [实例配置规范](https://support.huaweicloud.com/usermanual-cci/cci_01_0156.md): 通过阅读本章节您可以了解到容器实例(Pod)配置规范的相关内容。暂不支持守护进程集(DaemonSet)。暂不支持HostNetwork网络模式。暂不支持通过配置TCP启动探针进行健康检查。暂不支持动态资源分配(Dynamic Resource Allocation)特性,并在插件1.5.27版本对相关配置进行拦截。 - [实例资源配额](https://support.huaweicloud.com/usermanual-cci/cci_01_0117.md): 对于CCE集群中弹性到CCI的pod,bursting插件会根据用户提供的CPU、内存规格,对pod的资源规格做出规整,以达到合理利用资源并满足CCI资源规格的目的。本章节将详细介绍如何进行资源规格的规整。弹性CCI的pod规格,根据container资源的Requests和Limits计算,调整至CCI允许范围。pod规格的计算方式遵循 - [镜像](https://support.huaweicloud.com/usermanual-cci/cci_01_0118.md): 用户可以通过华为云镜像仓库服务SWR来管理业务镜像。本章节将介绍CCE+bursting插件场景中,涉及到镜像相关的使用场景及用法。通过阅读本章用户可以在CCE+bursting插件场景中:使用SWR拉取用户业务镜像混合使用华为云SWR + 第三方镜像仓拉取用户业务镜像方式一:通过console选取SWR镜像用户镜像上传SWR。使用方式请 - [存储](https://support.huaweicloud.com/usermanual-cci/cci_01_0119.md): 弹性到CCI的工作负载支持多种华为云存储配置,用于满足客户多样化的存储需求。通过阅读本章用户可以:了解弹性CCI的负载支持的存储类型。了解弹性CCI的负载Hostpath类型的典型场景以及如何使用。调度到CCI的实例的存储类型支持ConfigMap、Secret、EmptyDir、DownwardAPI、Projected、Persist - [网络](https://support.huaweicloud.com/usermanual-cci/cci_01_0120.md): 通过阅读本章节用户可以了解:如何为弹性CCI的pod配置默认使用的指定dns服务器。CCE集群pod与CCI集群中pod通过service互通的使用指导。弹性CCI侧pod通过service发布。使用共享VPC的CCE集群不支持开启“网络互通”功能。使用CCE集群中的Bursting插件对接CCI 2.0服务,支持配置独享型ELB的Ing - [日志](https://support.huaweicloud.com/usermanual-cci/cci_01_0121.md): CCE集群成功将负载弹性到CCI运行起负载后,用户可以通过CCE的“CCE Log Collector”插件来收集pod的日志,提升工作负载的可观测性。通过阅读本章用户可以快速搭建日志平台,在CCE的日志观测CCI侧日志。弹性到CCI的负载会默认开启容器标准输出采集并上报到应用运维管理,AOM每月赠送每个租户500M的免费日志存储空间,超 - [监控](https://support.huaweicloud.com/usermanual-cci/cci_01_0122.md): 在CCE集群中通过bursting插件弹性CCI的工作负载支持对接云原生观测中的监控中心。通过阅读本章节用户可以快速搭建CCE集群中的监控中心,监控弹性CCI的pod。metrics-server无法采集到通过bursting插件弹性到CCI 2.0上的Pod的监控数据,可能会影响HPA工作。如果HPA无法正常工作,请参考弹性伸缩进行处理 - [弹性伸缩](https://support.huaweicloud.com/usermanual-cci/cci_01_0142.md): 弹性伸缩bursting插件支持CCI 1.0和CCI 2.0。但当Pod通过bursting插件弹性到CCI 2.0上时,metrics-server插件无法采集这部分Pod的指标数据,可能导致HPA无法正常工作。为确保HPA功能正常可用,请使用云原生监控插件替换metrics-server插件。登录CCE控制台。选择CCE集群,单击进 - [常见问题](https://support.huaweicloud.com/usermanual-cci/cci_01_0123.md): 问题原因:CCI资源售罄导致弹性到CCI的资源调度失败,bursting节点会被锁定半小时(状态变为SchedulingDisabled),期间无法调度至CCI。解决方案:用户可通过CCE集群控制台,使用kubectl工具查看bursting节点状态,如果节点被锁定,可手动解锁bursting节点。问题原因:用户CCE集群所在子网与10. - [云审计服务支持的CCI操作列表](https://support.huaweicloud.com/usermanual-cci/cci_01_0084.md): CCI通过云审计服务(Cloud Trace Service,简称CTS)为您提供云服务资源的操作记录,记录内容包括您从云管理控制台或者开放API发起的云服务资源操作请求以及每次请求的结果,供您查询、审计和回溯使用。 - [查看云审计日志](https://support.huaweicloud.com/usermanual-cci/cci_01_0085.md): 开启了云审计服务后,系统开始记录CCI资源的操作。云审计服务管理控制台保存最近7天的操作记录。事件类型、事件来源、资源类型和筛选类型。在下拉框中选择查询条件。其中,事件来源选择“CCI”。当筛选类型选择事件名称时,还需选择某个具体的事件名称。选择资源ID时,还需选择或者手动输入某个具体的资源ID。选择资源名称时,还需选择或手动输入某个具体 ## 最佳实践 - [CCE容器实例弹性伸缩到CCI服务](https://support.huaweicloud.com/bestpractice-cci/cci_04_0010.md): CCE突发弹性引擎(对接 CCI)作为一种虚拟的kubelet用来连接Kubernetes集群和其他平台的API。Bursting的主要场景是将Kubernetes API扩展到无服务器的容器平台(如CCI)。基于该插件,支持用户在短时高负载场景下,将部署在云容器引擎CCE上的无状态负载(Deployment)、有状态负载(Statefu - [HostPath转localDir、emptyDir或flexVolume](https://support.huaweicloud.com/bestpractice-cci/cci_04_0060.md): 在使用CCE或者其他K8s集群时,可以使用HostPath。由于CCI为共享集群,未开放HostPath能力,所以当使用HostPath的Pod想通过Virtual Kubelet弹到CCI时,会被vk-webhook拦截。如无法改变Pod spec.volumes中配置的HostPath,当前可通过配置Annotation的形式,允许让 - [镜像地址替换](https://support.huaweicloud.com/bestpractice-cci/cci_04_0059.md): 用户在线下IDC有自建的harbor镜像仓库,同时也会将镜像同步到华为云SWR镜像仓库。创建负载后,希望调度到自建Kubernetes集群节点上运行的Pod使用自建镜像仓库的镜像,弹性到CCI的Pod使用SWR的镜像,以提高镜像拉取效率。可通过在Pod.Annotations中加入注解可以实现弹性到CCI的Pod中容器使用的镜像与自建Ku - [概述](https://support.huaweicloud.com/bestpractice-cci/cci_04_0002.md): 在云容器实例中,您可以使用多种方法创建负载,包括使用云容器实例的Console控制台界面、调用API部署应用,那这些方式的使用有什么不同的地方呢?这些方法又与直接运行Docker run命令运行容器有什么区别呢?本文将通过运行一个Wordpress + MySQL的博客为例,比较这几种方法之间的异同,以利于您挑选合适的使用方法。WordP - [使用Docker run运行容器](https://support.huaweicloud.com/bestpractice-cci/cci_04_0003.md): Docker是一个开源的应用容器引擎。容器引擎是Kubernetes(k8s)最重要的组件之一,负责管理镜像和容器的生命周期。使用Docker,无需配置运行环境,镜像中会包含一整套环境,同时进程间是隔离的,不会相互影响。Docker容器都是由docker镜像创建,Docker利用容器来运行应用,Docker容器包含了应用运行所需要的所有环 - [使用控制台创建负载](https://support.huaweicloud.com/bestpractice-cci/cci_04_0004.md): 使用Docker run运行容器章节使用docker run命令运行了Wordpress博客,但是在很多场景下使用容器引擎并不方便,如应用弹性伸缩、滚动升级等。云容器实例提供无服务器容器引擎,让您不需要管理集群和服务器,只需要三步简单配置,即可畅享容器的敏捷和高性能。云容器实例支持创建无状态负载(Deployment)和有状态负载(Sta - [调用API创建负载](https://support.huaweicloud.com/bestpractice-cci/cci_04_0005.md): 云容器实例原生支持Kubernetes API,相比从控制台创建负载,使用API的粒度更细一些。Kubernetes中,运行容器的最小资源单位是Pod,一个Pod封装一个或多个容器、存储资源、一个独立的网络IP等。实际使用中很少直接创建Pod,而是使用Kubernetes中称为Controller的抽象层来管理Pod实例,例如Deploy - [Dockerfile参数在云容器实例中如何使用](https://support.huaweicloud.com/bestpractice-cci/cci_04_0001.md): 如果您了解容器引擎的使用,明白定制镜像时,一般使用Dockerfile来完成。Dockerfile是一个文本文件,其内包含了一条条的指令,每一条指令构建镜像的其中一层,因此每一条指令的内容,就是描述该层应该如何构建。本章节将介绍Dockerfile文件的一些配置如何对应到云容器实例中去使用。下面通过一个例子来说明它们之间的关系,这样您就可 - [CCI应用进行优雅滚动升级](https://support.huaweicloud.com/bestpractice-cci/cci_04_0047.md): 用户在CCI中部署工作负载时,应用发布成了LoadBalance类型的Service或Ingress且对接的独享型ELB,经过ELB的访问流量支持直通到容器中;当应用进行滚动升级或者弹性扩缩容,通过配置容器探针,最短就绪时间等可以做到优雅升级,从而实现优雅弹性扩缩容(在升级或者扩缩容过程中业务不会出现5xx的错误响应)。在此以nginx的 - [在容器中通过环境变量获取Pod基础信息](https://support.huaweicloud.com/bestpractice-cci/cci_04_0048.md): 客户如果需要在容器内获取POD的基础信息,可以通过kubernetes中的Downward API注入环境变量的方式实现。本操作实践展示如何在Deployment和POD的定义中增加环境变量配置,获取Pod的namespace、name、uid、IP、Region和AZ。CCI创建Pod并分配节点的同时,Pod Annotations中新 - [内核参数配置](https://support.huaweicloud.com/bestpractice-cci/cci_04_0049.md): CCI服务底座使用安全容器构建了业内领先的Serverless容器平台,同物理机系统内核隔离且互不影响。对于资深业务部署场景,内核参数调优是比较通用的方式。在安全范围内,CCI服务允许客户根据Kubernetes社区推荐的方案,通过Pod的安全上下文(Security Context)对内核参数进行配置,极大提升用户业务部署的灵活性。如果 - [修改/dev/shm容量大小](https://support.huaweicloud.com/bestpractice-cci/cci_04_0050.md): /dev/shm由tmpfs文件系统构成,tmpfs是Linux/Unix系统上的一种基于内存的文件系统,故读写效率非常高。目前有用户希望通过/dev/shm实现进程间数据交互或通过/dev/shm实现临时数据存储,此时CCI场景/dev/shm默认大小64M无法满足客户诉求,故提供修改/dev/shm size大小的能力。本操作实践展示 - [使用Prometheus监控CCI实例](https://support.huaweicloud.com/bestpractice-cci/cci_04_0054.md): 本章节介绍如何在CCI命名空间中,通过手动部署Prometheus,实现对Pod实例的指标监控。Prometheus概念及详细配置请参阅Prometheus 官方文档。您将在CCI命名空间中部署一个集成了cci-iam-authenticator插件的Prometheus实例,该插件使Prometheus能够通过IAM认证机制安全地访问C - [关闭VK节点在CCI Pod长时间Pending后的不可调度特性](https://support.huaweicloud.com/bestpractice-cci/cci_04_0074.md): 在CCI 1.0场景中,如果用户持续向集群投递负载,而某些Pod因资源不足长期处Pending状态,Virtual Kubelet(VK)会触发资源压力检测,将VK节点标记为不可调度,从而阻断后续负载下发。 - [CCI 实例高可用部署(多AZ容灾)](https://support.huaweicloud.com/bestpractice-cci/cci_04_0040.md): 此部分仅包含CCI的独立使用场景。 - [使用Tensorflow训练神经网络](https://support.huaweicloud.com/bestpractice-cci/cci_04_0008.md): 当前主流的大数据、AI训练和推理等应用(如Tensorflow、Caffe)均采用容器化方式运行,并需要大量GPU、高性能网络和存储等硬件加速能力,并且都是任务型计算,需要快速申请大量资源,计算任务完成后快速释放。本文将演示在云容器实例中创建GPU类型的负载,以tensorflow的图像分类为示例,演示在容器中直接使用GPU训练一个简单的 - [通过创建子用户方式,缩小OBS场景下上传ak/sk的权限](https://support.huaweicloud.com/bestpractice-cci/cci_04_0057.md): CCI使用OBS时需要上传密钥,用户可通过创建子用户方式,将上传密钥替换为仅有OBS访问权限的子用户密钥。登录云容器实例控制台,单击左侧导航栏的“存储管理 > 对象存储卷”,在右侧页面中选择命名空间,单击“上传密钥”。选择本地的密钥文件,单击“确认”。请添加csv格式的文件,且文件大小不能超过2M。若您在本地没有访问密钥,请前往“我的凭证 ## 开发指南 - [简介](https://support.huaweicloud.com/devg-cci/cci_05_0001.md): 云容器实例(Cloud Container Instance, CCI)服务提供 ServerlessContainer(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。云容器实例的 Serverless Container 就是从使用角度,无需创建、管理 Kubernetes 集群,也就是从使用的角度看不见服务器(Se - [kubectl配置指南](https://support.huaweicloud.com/devg-cci/cci_kubectl_02.md): 云容器实例支持使用原生kubectl或定制的kubectl来创建负载等资源,建议优先选用原生kubectl。请到kubernetes版本发布页面下载1.19版本对应的kubectl。Apple M1芯片是darwin-arm64架构,如果使用Apple M1芯片的设备,需要下载对应架构的kubectl。在CCI官网下载cci-iam-au - [cci-iam-authenticator使用参考](https://support.huaweicloud.com/devg-cci/cci_kubectl_03.md): cci-iam-authenticator作为k8s client端的认证插件,主要提供了generate-kubeconfig和token两个子命令。其中,Flags主要为日志选项。tokentoken子命令用于获取用户token,获取token的认证方式有用户名/密码、ak/sk两种,选择其中一种即可。其中,Flags分为用户名密码、 - [Namespace和Network](https://support.huaweicloud.com/devg-cci/cci_05_0023.md): Namespace(命名空间)是一种在多个用户之间划分资源的方法。适用于用户中存在多个团队或项目的情况。当前云容器实例提供通用计算型和GPU型两种类型的资源,创建命名空间时需要选择资源类型,后续创建的负载中容器就运行在此类型的集群上。通用计算型:支持创建含CPU资源的容器实例及工作负载,适用于通用计算场景。GPU型:支持创建含GPU资源的 - [Pod](https://support.huaweicloud.com/devg-cci/cci_05_0004.md): Pod是Kubernetes创建或部署的最小单位。一个Pod封装一个或多个容器(container)、存储资源(volume)、一个独立的网络IP以及管理控制容器运行方式的策略选项。Pod使用主要分为两种方式:Pod中运行一个容器。这是Kubernetes最常见的用法,您可以将Pod视为单个封装的容器,但是Kubernetes是直接管理P - [环境变量](https://support.huaweicloud.com/devg-cci/cci_05_0010.md): 环境变量是容器运行环境中设定的一个变量。环境变量为应用提供极大的灵活性,您可以在应用程序中使用环境变量,在创建容器时为环境变量赋值,容器运行时读取环境变量的值,从而做到灵活的配置,而不是每次都重新编写应用程序制作镜像。另外,您还可以使用ConfigMap和Secret作为环境变量,详细信息请参见使用ConfigMap和Secret提高配置 - [启动命令](https://support.huaweicloud.com/devg-cci/cci_05_0011.md): 启动容器就是启动主进程,但有些时候,启动主进程前,需要一些准备工作。比如MySQL类的数据库,可能需要一些数据库配置、初始化的工作,这些工作要在最终的MySQL服务器运行之前解决。您可以在制作镜像时通过在Dockerfile文件中设置ENTRYPOINT或CMD来完成。如下所示的Dockerfile中设置了ENTRYPOINT ["top - [对容器进行初始化操作](https://support.huaweicloud.com/devg-cci/cci_05_0030.md): Init-Containers,即初始化容器,顾名思义容器启动的时候,会先启动可一个或多个容器,如果有多个,那么这几个Init Container按照定义的顺序依次执行,只有所有的Init Container执行完后,主容器才会启动。由于一个Pod里的存储卷是共享的,所以Init Container里产生的数据可以被主容器使用到。Init - [Pod规格计算方式](https://support.huaweicloud.com/devg-cci/cci_05_0031.md): Pod规格的计算步骤如下:所有应用容器对某个资源的 limit/request 之和。对某个资源的有效初始的 limit/request 。针对如下实例,计算Pod规格。 - [生命周期管理](https://support.huaweicloud.com/devg-cci/cci_05_0012.md): 云容器实例基于Kubernetes,提供了容器生命周期钩子,在容器的生命周期的特定阶段执行调用,比如容器在停止前希望执行某项操作,就可以注册相应的钩子函数。目前提供的生命周期钩子函数如下所示。启动后处理(PostStart):负载启动后触发。停止前处理(PreStop):负载停止前触发。调用接口时,只需配置pod的lifecycle.po - [存活探针(liveness probe)](https://support.huaweicloud.com/devg-cci/cci_05_0013.md): Kubernetes提供了自愈的能力,具体就是能感知到容器崩溃,然后能够重启这个容器。但是有时候例如Java程序内存泄漏了,程序无法正常工作,但是JVM进程却是一直运行的,对于这种应用本身业务出了问题的情况,kubernetes提供了liveness probe机制,通过检测容器响应是否正常来决定是否重启,这是一种很好的健康检查机制。毫无 - [Label](https://support.huaweicloud.com/devg-cci/cci_05_0025.md): 当资源变得非常多的时候,如何分类管理就非常重要了,Kubernetes提供了一种机制来为资源分类,那就是Label(标签)。Label非常简单,但是却很强大,Kubernetes中几乎所有资源都可以用Label来组织。Label的具体形式是key-value的标记对,可以在创建资源的时候设置,也可以在后期添加和修改。以Pod为例,当Pod - [Deployment](https://support.huaweicloud.com/devg-cci/cci_05_0005.md): 在Pod这个章节介绍了Pod,Pod是Kubernetes创建或部署的最小单位,但是Pod是被设计为相对短暂的一次性实体,Pod可以被驱逐(当节点资源不足时)、随着集群的节点fail而消失。同时kubernetes提供了Controller(控制器)来管理Pod,Controller可以创建和管理多个Pod,提供副本管理、滚动升级和自愈能 - [EIPPool概述](https://support.huaweicloud.com/devg-cci/cci_05_0028.md): 为方便用户在CCI内直接为Pod关联EIP,CCI新增了名为EIPPool的自定义资源对象,通过EIPPool资源对象,用户可以为Pod自动绑定EIP。EIPPool对象支持两种EIP资源管理方式:动态管理EIP资源(EIP资源由CCI自动创建)、静态管理EIP资源(EIP资源由用户提前创建)。一个Pod只能绑定一个EIP。绑定EIP的P - [创建动态EIPPool](https://support.huaweicloud.com/devg-cci/cci_05_0032.md): 动态EIPPool,即根据用户在EIPPool中填写的配置,动态创建底层的EIP资源,同时在CCI命名空间下创建相应的EIP对象。以下示例创建了一个名为eippool-demo1的动态EIPPool,具体字段含义见表1。动态创建独占带宽类型的EIPPool,无需指定带宽ID,示例如下:动态创建共享带宽类型的EIPPool,必须指定带宽ID - [创建静态EIPPool](https://support.huaweicloud.com/devg-cci/cci_05_0033.md): 静态EIPPool,即根据用户指定的多个未使用的EIP,静态纳管底层的EIP资源,同时在CCI命名空间下创建相应的EIP对象。如果EIPPool中的EIP已经被NAT或者ELB使用,则会纳管失败。以下示例创建了一个名为eippool-demo2的静态EIPPool,并在此EIPPool中纳管10.246.173.254和10.246.17 - [使用EIPPool](https://support.huaweicloud.com/devg-cci/cci_05_0035.md): 在命名空间下创建完成EIPPool对象后,用户可在Pod模板中添加指定的Annotation: yangtse.io/eip-pool 使用对应EIPPool中的EIP资源,指定后,Pod在创建时将会自动从EIPPool中获取一个可用的EIP并绑定至Pod。已经被EIPPool使用的EIP,在VPC界面是无法正常的执行绑定、解绑和删除操作 - [管理EIPPool](https://support.huaweicloud.com/devg-cci/cci_05_0036.md): 考虑到用户实际场景,EIPPool对象当前只允许用户调整EIP的数量,即对EIPPool进行扩缩容。用户如果需要调整EIP其他参数,可新建EIPPool对象后在负载配置中替换即可。EIPPool缩容时,如果EIP资源被占用,则不会删除对应的EIP,直到占用解除。以动态创建的eippool-demo1为例,将amount:3改为amount - [EIP概述](https://support.huaweicloud.com/devg-cci/cci_05_1007.md): 为方便用户在CCI内直接为Pod关联弹性公网IP,只需在创建Pod时配置annotation,弹性公网IP就会随Pod自动绑定该Pod。自动绑定弹性公网IP分为两种场景:一个Pod只能绑定一个EIP,一个EIP只能被一个Pod绑定。创建Pod时,可指定annotation属性,创建完成后,更新EIP相关的annotation均无效。EIP - [为Pod动态创建EIP](https://support.huaweicloud.com/devg-cci/cci_05_0034.md): 创建Pod时,填写pod-with-eip的annotation后,EIP会随Pod自动创建并绑定至该Pod。以下示例创建一个名为nginx的无状态负载,EIP将随Pod自动创建并绑定至Pod,关键参数含义见表1。创建独占带宽类型的Deployment,无需指定带宽ID,示例如下:apiVersion: apps/v1 kind: Dep - [为Pod绑定已有EIP](https://support.huaweicloud.com/devg-cci/cci_05_1015.md): 创建Pod时,填写yangtse.io/eip-id的annotation后,EIP会随Pod自动完成绑定。以下示例创建一个名为nginx的实例数为1的无状态负载,EIP将随Pod自动绑定至Pod。具体字段含义见表1。Pod业务容器的启动时间可能早于EIP分配结果返回成功时间,在Pod启动过程中EIP可能会绑定失败。通过在init con - [创建镜像快照](https://support.huaweicloud.com/devg-cci/cci_05_1012.md): 运行容器需要先拉取指定的容器镜像,但因网络和容器镜像大小等因素,镜像拉取耗时往往成了Pod启动的主要耗时。通过镜像快照功能,可以事先将要使用的镜像制作成快照,基于该快照创建Pod,从而避免镜像下载,提升Pod的启动速度。假如镜像快照定义的文件名称为my-imagesnapshot.yaml,则执行kubectl apply -f my-i - [使用镜像快照](https://support.huaweicloud.com/devg-cci/cci_05_1013.md): 使用镜像快照创建Pod,支持以下两种方式:自动匹配自动匹配将从所有用户创建的可用的镜像快照中选择最优的镜像。按以下顺序进行匹配:a. 镜像匹配度:优先选择匹配度高的镜像快照,匹配度指的是Pod和镜像快照两者在镜像上的匹配情况。b. 创建时间:优先选择创建时间更新的镜像快照。明确指定明确指定使用的镜像快照。该镜像缓存必须为创建完成可用(Av - [管理镜像快照](https://support.huaweicloud.com/devg-cci/cci_05_1014.md): 创建镜像快照后,您可以查询镜像快照信息。查询用户创建的所有镜像快照,执行如下命令。kubectl get imagesnapshot -oyaml查询单个镜像快照,执行如下命令。kubectl get imagesnapshot my-imagesnapshot -oyaml返回结果如下:apiVersion: imagecache.cc - [Pod资源监控指标](https://support.huaweicloud.com/devg-cci/cci_05_1003.md): CCI支持Pod资源基础监控能力,提供CPU、内存、磁盘、网络等多种监控指标,满足对Pod资源的基本监控需求。Pod内置系统agent,默认会以http服务的形式提供Pod和容器的监控指标。agent集成到Pod里面,会占用Pod内资源,建议您预留30MB的内存。资源基础监控包含CPU/内存/磁盘等类别,具体请参见资源监控指标。挂载卷为自 - [Pod日志采集](https://support.huaweicloud.com/devg-cci/cci_05_1004.md): 本章节将介绍在Pod内进行日志采集,允许用户通过配置容器内自定义路径下的日志文件来采集日志,并通过自定义策略处理,上报到用户kafka日志中心。建议您为Fluent Bit预留50MB的内存。当前不支持容器中软链路径的日志采集。当前不支持容器标准输出采集上报到kafka。当前不支持日志轮转,如果需要对日志文件进行大小的控制,请自行处理。单 - [Service](https://support.huaweicloud.com/devg-cci/cci_05_0007.md): 负载创建完成后,如何访问负载呢?访问负载实际上就是访问Pod,但是直接访问Pod会有如下几个问题:Pod会随时被Deployment这样的控制器删除重建,那访问Pod的结果就会变得不可预知。Pod的IP地址是在Pod启动后才被分配,在启动前并不知道Pod的IP地址。应用往往都是由多个运行相同镜像的一组Pod组成,一个个Pod的访问也变得不 - [Ingress](https://support.huaweicloud.com/devg-cci/cci_05_0008.md): 上一节中讲了创建LoadBalancer类型的Service,使用ELB实例从外部访问Pod。但是Service是基于四层TCP和UDP协议转发的,Ingress可以基于七层的HTTP和HTTPS协议转发,可以通过域名和路径做到更细粒度的划分,如下图所示。在云容器实例中,使用Ingress绑定ELB的IP和端口,实现外部访问,如图2所示。 - [网络访问场景](https://support.huaweicloud.com/devg-cci/cci_05_0024.md): 在前面两节中介绍了如何通过Service和Ingress访问Pod,本节总结一下云容器实例中Pod的访问场景,如图1所示,访问负载可以分为如下几种场景,每种场景下可以使用Service和Ingress来解决访问问题。同一个命名空间中的负载相互访问:只需创建Service,使用服务名称:服务端口访问负载。同一个VPC内资源互相访问:直接访问 - [业务探针(Readiness probe)](https://support.huaweicloud.com/devg-cci/cci_05_0026.md): 一个新Pod创建后,Service就能立即选择到它,并会把请求转发给Pod,那问题就来了,通常一个Pod启动是需要时间的,如果Pod还没准备好(可能需要时间来加载配置或数据,或者可能需要执行 一个预热程序之类),这时把请求转给Pod的话,Pod也无法处理,造成请求失败。Kubernetes中解决这个问题的方法就是给Pod加一个业务就绪探针 - [使用PersistentVolumeClaim申请持久化存储](https://support.huaweicloud.com/devg-cci/cci_05_0014.md): 云容器实例当前支持在容器中使用如下三种持久化存储。云硬盘(Elastic Volume Service,EVS),EVS是一种块存储服务,提供高I/O(sas)、超高I/O(ssd)和普通I/O(上一代产品)三种类型云硬盘。弹性文件服务(Scalable File Service,SFS),SFS提供共享的文件存储,支持标准文件协议类型( - [ConfigMap](https://support.huaweicloud.com/devg-cci/cci_05_0019.md): ConfigMap是一种用于存储应用所需配置信息的资源类型,用于保存配置数据的键值对,可以用来保存单个属性,也可以用来保存配置文件。通过ConfigMap可以方便地做到配置解耦,使得不同环境有不同的配置。相比环境变量,Pod中引用的ConfigMap可以做到实时更新,当您更新ConfigMap的数据后,Pod中引用的ConfigMap会同 - [Secret](https://support.huaweicloud.com/devg-cci/cci_05_0020.md): Secret是一种加密存储的资源对象,您可以将认证信息、证书、私钥等保存在密钥中,从而解决了密码、token、密钥等敏感数据的配置问题,而不需要把这些敏感数据暴露到镜像或者Pod Spec中,只需在容器启动时以环境变量等方式加载到容器中。Secret与ConfigMap非常像,都是key-value键值对形式,使用方式也相同,不同的是Se - [使用Job和CronJob创建任务负载](https://support.huaweicloud.com/devg-cci/cci_05_0022.md): 任务负载是负责批量处理短暂的一次性任务(short lived one-off tasks),即仅执行一次的任务,它保证批处理任务的一个或多个 Pod 成功结束。短时任务(Job):是Kubernetes用来控制批处理型任务的资源对象。批处理业务与长期伺服业务(Deployment、Statefulset)的主要区别是批处理业务的运行有头 - [YAML语法](https://support.huaweicloud.com/devg-cci/cci_05_1001.md): YAML是一种简洁强大的语言,它的设计目标是便于设计和使用人员阅读。大小写敏感。使用缩进表示层级关系。缩进时不允许使用Tab键,只允许使用空格。缩进的空格数目不重要,要求相同层级的元素左侧对齐。使用#表示注释。对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes)/ 字典(dictionary)。数组:一组按次序排列的值 ## API参考 - [使用前必读](https://support.huaweicloud.com/api-cci/cci_02_0001.md): 欢迎使用云容器实例(Cloud Container Instance)。云容器实例提供 Serverless Container(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。您可以使用本文档提供API对云容器实例进行相关操作,如创建、删除、变更规格等。在调用云容器实例API之前,请确保已经充分了解云容器实例相关概念, - [构造请求](https://support.huaweicloud.com/api-cci/cci_02_0010.md): 本节介绍REST API请求的组成,并以调用IAM服务的管理员创建IAM用户接口说明如何调用API。您还可以通过这个视频教程了解如何构造请求调用API:https://bbs.huaweicloud.com/videos/102987。请求URI由如下部分组成:{URI-scheme}://{Endpoint}/{resource-pat - [认证鉴权](https://support.huaweicloud.com/api-cci/cci_02_0003.md): 调用接口有如下两种认证方式,您可以选择其中一种进行认证鉴权。AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。推荐使用AK/SK认证,其安全性比Token认证要高。Token认证:通过Token认证调用请求。AK/SK认证:通过AK(Access Key ID)/SK(Secr - [返回结果](https://support.huaweicloud.com/api-cci/cci_02_2007.md): 请求发送以后,您会收到响应,其中包含状态码、响应消息头和消息体。状态码是一组从1xx到5xx的数字代码,状态码表示了请求响应的状态,完整的状态码列表请参见状态码。对于管理员创建IAM用户接口,如果调用后返回状态码为201,则表示请求成功。对应请求消息头,响应同样也有消息头,如Content-type。对于管理员创建IAM用户接口,返回如图 - [快速入门](https://support.huaweicloud.com/api-cci/cci_02_0011.md): 本文通过调用一系列云容器实例的API使用nginx镜像创建一个工作负载,介绍使用云容器实例API的基本流程。其中,镜像直接使用开源镜像中心的nginx镜像,容器的资源规格为0.25核CPU、512M内存,并绑定一个负载均衡实例,通过负载均衡实例从外网访问容器负载。API的调用方法请参见如何调用API。调用创建Namespace接口创建命名 - [获取指定namespace下所有pods的metrics信息](https://support.huaweicloud.com/api-cci/listMetricsV1beta1NamespacedPodMetrics.md): 获取指定namespace下所有pods的metrics信息请参见如何调用API。GET /apis/metrics.k8s.io/v1beta1/namespaces/{namespace}/pods状态码:200无状态码:200OK - [获取指定namespace下指定pod的metrics信息](https://support.huaweicloud.com/api-cci/readMetricsV1beta1NamespacedPodMetrics.md): 获取指定namespace下指定pod的metrics信息请参见如何调用API。GET /apis/metrics.k8s.io/v1beta1/namespaces/{namespace}/pods/{name}状态码:200无状态码:200OK - [查询指定namespace下的EIPPools](https://support.huaweicloud.com/api-cci/listCrdYangtseCniV1NamespacedEIPPool.md): 查询指定namespace下所有EIPPool的详细信息。请参见如何调用API。GET /apis/crd.yangtse.cni/v1/namespaces/{namespace}/eippools状态码:200无状态码:200OK - [创建EIPPool](https://support.huaweicloud.com/api-cci/createCrdYangtseCniV1NamespacedEIPPool.md): 创建EIPPool。请参见如何调用API。POST /apis/crd.yangtse.cni/v1/namespaces/{namespace}/eippools状态码:200状态码:201状态码:202动态创建独占带宽类型的EIPPool,资源池中EIP数量为2。状态码:201Created - [删除指定的EIPPool](https://support.huaweicloud.com/api-cci/deleteCrdYangtseCniV1NamespacedEIPPool.md): 删除指定的EIPPool。请参见如何调用API。DELETE /apis/crd.yangtse.cni/v1/namespaces/{namespace}/eippools/{name}状态码:200状态码:202删除指定的EIPPool状态码:200OK - [查询指定的EIPPool](https://support.huaweicloud.com/api-cci/readCrdYangtseCniV1NamespacedEIPPool.md): 查询指定的EIPPool的详细信息。请参见如何调用API。GET /apis/crd.yangtse.cni/v1/namespaces/{namespace}/eippools/{name}状态码:200无状态码:200OK - [更新EIPPool](https://support.huaweicloud.com/api-cci/patchCrdYangtseCniV1NamespacedEIPPool.md): 更新EIPPool。请参见如何调用API。PATCH /apis/crd.yangtse.cni/v1/namespaces/{namespace}/eippools/{name}状态码:200更新EIPPool中的labels值为"some-key":"some-value"。状态码:200OK - [替换EIPPool](https://support.huaweicloud.com/api-cci/replaceCrdYangtseCniV1NamespacedEIPPool.md): 替换EIPPool。请参见如何调用API。PUT /apis/crd.yangtse.cni/v1/namespaces/{namespace}/eippools/{name}状态码:200状态码:201将已创建EIPPool中的label值替换为"some-key" : "some-value"。状态码:200OK - [查询指定的EIPPool](https://support.huaweicloud.com/api-cci/readCrdYangtseCniV1NamespacedEIPPoolStatus.md): 查询指定的EIPPool的详细信息。请参见如何调用API。GET /apis/crd.yangtse.cni/v1/namespaces/{namespace}/eippools/{name}/status状态码:200无状态码:200OK - [删除指定namespace下的Networks](https://support.huaweicloud.com/api-cci/deleteNetworkingCciIoV1beta1CollectionNamespacedNetwork.md): 删除指定namespace下的所有Network对象。请参见如何调用API。DELETE /apis/networking.cci.io/v1beta1/namespaces/{namespace}/networks状态码:200删除指定namespace下的所有Network对象状态码:200OK - [查询指定namespace下的Networks](https://support.huaweicloud.com/api-cci/listNetworkingCciIoV1beta1NamespacedNetwork.md): 查询指定namespace下的所有Network对象。请参见如何调用API。GET /apis/networking.cci.io/v1beta1/namespaces/{namespace}/networks状态码:200无状态码:200OK - [创建Network](https://support.huaweicloud.com/api-cci/createNetworkingCciIoV1beta1NamespacedNetwork.md): 创建一个Network对象。Network对象是华为云CCI新增对象,用于定义kubernetes中一个namespace内的网络。目前CCI支持VPC网络,一个VPC网络类型的network对象对应于华为云虚拟私有云服务中的一个子网。CCI的容器网络依赖于华为云底层VPC网络,因此在创建network对象前,需要先调用虚拟私有云的接口创 - [删除Network](https://support.huaweicloud.com/api-cci/deleteNetworkingCciIoV1beta1NamespacedNetwork.md): 删除一个指定Network对象。请参见如何调用API。DELETE /apis/networking.cci.io/v1beta1/namespaces/{namespace}/networks/{name}状态码:200状态码:202删除Network。状态码:200OK - [查询Network](https://support.huaweicloud.com/api-cci/readNetworkingCciIoV1beta1NamespacedNetwork.md): 查询指定Network对象。请参见如何调用API。GET /apis/networking.cci.io/v1beta1/namespaces/{namespace}/networks/{name}状态码:200无状态码:200OK - [查询Network状态](https://support.huaweicloud.com/api-cci/readNetworkingCciIoV1beta1NamespacedNetworkStatus.md): 查询一个指定Network对象的状态。请参见如何调用API。GET /apis/networking.cci.io/v1beta1/namespaces/{namespace}/networks/{name}/status状态码:200无状态码:200OK - [删除指定namespace下的ConfigMaps](https://support.huaweicloud.com/api-cci/deleteCoreV1CollectionNamespacedConfigMap.md): 删除Namespace下所有ConfigMap。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/configmaps状态码:200无状态码:200OK - [查询指定namespace下的ConfigMaps](https://support.huaweicloud.com/api-cci/listCoreV1NamespacedConfigMap.md): 查询Namespace下所有ConfigMap的详细信息。请参见如何调用API。GET /api/v1/namespaces/{namespace}/configmaps状态码:200无状态码:200OK - [创建ConfigMap](https://support.huaweicloud.com/api-cci/createCoreV1NamespacedConfigMap.md): 创建ConfigMap。请参见如何调用API。POST /api/v1/namespaces/{namespace}/configmaps状态码:200状态码:201状态码:202创建一个名称为“configmap-test”的configmap,配置数据键值。状态码:200OK - [删除ConfigMap](https://support.huaweicloud.com/api-cci/deleteCoreV1NamespacedConfigMap.md): 删除ConfigMap。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/configmaps/{name}状态码:200状态码:202状态码:200OK - [查询ConfigMap](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedConfigMap.md): 查询ConfigMap详细信息。请参见如何调用API。GET /api/v1/namespaces/{namespace}/configmaps/{name}状态码:200无状态码:200OK - [更新ConfigMap](https://support.huaweicloud.com/api-cci/patchCoreV1NamespacedConfigMap.md): 更新ConfigMap。The following fields can be updated:metadata.labelsmetadata.labelsmetadata.annotationsmetadata.annotationsdatadata请参见如何调用API。PATCH /api/v1/namespaces/{namespa - [替换ConfigMap](https://support.huaweicloud.com/api-cci/replaceCoreV1NamespacedConfigMap.md): 替换ConfigMap。The following fields can be updated:metadata.labelsmetadata.labelsmetadata.annotationsmetadata.annotationsdatadata请参见如何调用API。PUT /api/v1/namespaces/{namespace - [删除指定namespace下的Pods](https://support.huaweicloud.com/api-cci/deleteCoreV1CollectionNamespacedPod.md): 删除Namespace下所有Pod。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/pods状态码:200无状态码:200OK - [查询指定namespace下的Pods](https://support.huaweicloud.com/api-cci/listCoreV1NamespacedPod.md): 查询指定namespace下的Pods的详细信息。请参见如何调用API。GET /api/v1/namespaces/{namespace}/pods状态码:200无状态码:200OK - [创建Pod](https://support.huaweicloud.com/api-cci/createCoreV1NamespacedPod.md): 创建一个Pod。Pod的生命周期是短暂的,Pod是用后即焚的实体。在实际使用中,请谨慎单独创建Pod,请使用Deployment、StatefulSet和Job这些控制器创建应用,从而保障应用高可用。云容器实例中Pod规格有限制,具体的限制请参见约束限制页面的“Pod规格”部分。当前支持使用Nvidia GPU的驱动版本为418.126和 - [删除Pod](https://support.huaweicloud.com/api-cci/deleteCoreV1NamespacedPod.md): 删除Pod,删除前持续10s。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/pods/{name}状态码:200状态码:202状态码:200OK - [查询Pod](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedPod.md): 查询Pod的详细信息。请参见如何调用API。GET /api/v1/namespaces/{namespace}/pods/{name}状态码:200无状态码:200OK - [更新Pod](https://support.huaweicloud.com/api-cci/patchCoreV1NamespacedPod.md): 更新Pod。其中以下字段支持更新:metadata.generateNamemetadata.generateNamemetadata.labelsmetadata.labelsmetadata.annotationsmetadata.annotationsspec.initContainers[*].imagespec.initCont - [替换Pod](https://support.huaweicloud.com/api-cci/replaceCoreV1NamespacedPod.md): 替换指定Pod。其中以下字段支持更新:metadata.labelsmetadata.labelsmetadata.annotationsmetadata.annotationsspec.initContainers[*].imagespec.initContainers[*].imagespec.containers[*].images - [进入容器执行命令](https://support.huaweicloud.com/api-cci/connectCoreV1GetNamespacedPodExec.md): exec接口无法通过curl或者postman进行调试,推荐使用kubectl进行调试,请参见kubectl配置指南。请参见如何调用API。GET /api/v1/namespaces/{namespace}/pods/{name}/exec状态码:200OK无无无 - [进入容器执行命令](https://support.huaweicloud.com/api-cci/connectCoreV1PostNamespacedPodExec.md): exec接口无法通过curl或者postman进行调试,推荐使用kubectl进行调试,请参见kubectl配置指南。请参见如何调用API。POST /api/v1/namespaces/{namespace}/pods/{name}/exec状态码:200OK无无无 - [查询Pod日志](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedPodLog.md): 查询Pod的日志。请参见如何调用API。GET /api/v1/namespaces/{namespace}/pods/{name}/log状态码:200无状态码:200OK - [查询Pod状态](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedPodStatus.md): 查询Pod对象的状态。请参见如何调用API。GET /api/v1/namespaces/{namespace}/pods/{name}/status状态码:200无状态码:200OK - [查询用户所有的Pods](https://support.huaweicloud.com/api-cci/listCoreV1PodForAllNamespaces.md): 该API用于获取一个Pod列表。请参见如何调用API。GET /api/v1/pods状态码:200无状态码:200OK - [查询/apis/storage.k8s.io/v1版本的所有storage class](https://support.huaweicloud.com/api-cci/listStorageV1StorageClass.md): list or watch objects of kind StorageClass请参见如何调用API。GET /apis/storage.k8s.io/v1/storageclasses状态码:200无状态码:200OK - [查询指定的storage class](https://support.huaweicloud.com/api-cci/readStorageV1StorageClass.md): read the specified StorageClass请参见如何调用API。GET /apis/storage.k8s.io/v1/storageclasses/{name}状态码:200无状态码:200OK - [查询指定namespace下的Services](https://support.huaweicloud.com/api-cci/listCoreV1NamespacedService.md): 查询Namespace下所有Service的详细信息。请参见如何调用API。GET /api/v1/namespaces/{namespace}/services状态码:200无状态码:200OK - [创建Service](https://support.huaweicloud.com/api-cci/createCoreV1NamespacedService.md): 创建一个Service。请参见如何调用API。POST /api/v1/namespaces/{namespace}/services状态码:200状态码:201状态码:202创建ClusterIP类型的Service,公开的端口为80,端口的IP协议为"TCP"。{ "apiVersion" : "v1", "kind" : " - [删除Service](https://support.huaweicloud.com/api-cci/deleteCoreV1NamespacedService.md): 删除Service。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/services/{name}状态码:200状态码:202无状态码:200OK - [查询Service](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedService.md): 查询Service的详细信息。请参见如何调用API。GET /api/v1/namespaces/{namespace}/services/{name}状态码:200无状态码:200OK - [更新Service](https://support.huaweicloud.com/api-cci/patchCoreV1NamespacedService.md): 更新Service。请参见如何调用API。PATCH /api/v1/namespaces/{namespace}/services/{name}状态码:200更新Service中的labels值为"some-key" : "some-value"。状态码:200OK - [替换Service](https://support.huaweicloud.com/api-cci/replaceCoreV1NamespacedService.md): 替换Service。请参见如何调用API。PUT /api/v1/namespaces/{namespace}/services/{name}状态码:200状态码:201将已创建Service的名称替换为“service-test”。状态码:200OK - [查询service状态](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedServiceStatus.md): 查询指定的Service的状态。请参见如何调用API。GET /api/v1/namespaces/{namespace}/services/{name}/status状态码:200无状态码:200OK - [查询用户所有Deployments](https://support.huaweicloud.com/api-cci/listAppsV1DeploymentForAllNamespaces.md): 查询用户所有Deployment。请参见如何调用API。GET /apis/apps/v1/deployments状态码:200无状态码:200OK - [删除指定namespace下Deployments](https://support.huaweicloud.com/api-cci/deleteAppsV1CollectionNamespacedDeployment.md): 删除Namespace下所有Deployment。请参见如何调用API。DELETE /apis/apps/v1/namespaces/{namespace}/deployments状态码:200只删除Deployment(对应ReplicSet和Pod不删除)。{ "Kind" : "DeleteOptions", "apiVe - [查询指定namespace下的Deployments](https://support.huaweicloud.com/api-cci/listAppsV1NamespacedDeployment.md): 查询Namespace下所有Deployment的详细信息。请参见如何调用API。GET /apis/apps/v1/namespaces/{namespace}/deployments状态码:200无状态码:200OK - [创建Deployment](https://support.huaweicloud.com/api-cci/createAppsV1NamespacedDeployment.md): 创建一个Deployment。创建Deployment时挂载OBS的使用限制请参见挂载OBS使用限制。建议创建deployment的name长度不要超过242位,否则会导致deployment创建失败或同步创建replicaset失败。请参见如何调用API。POST /apis/apps/v1/namespaces/{namespace} - [删除Deployment](https://support.huaweicloud.com/api-cci/deleteAppsV1NamespacedDeployment.md): 删除Deployment。请参见如何调用API。DELETE /apis/apps/v1/namespaces/{namespace}/deployments/{name}状态码:200状态码:202只删除Deployment(对应ReplicSet和Pod不删除)。{ "Kind" : "DeleteOptions", "api - [查询Deployment](https://support.huaweicloud.com/api-cci/readAppsV1NamespacedDeployment.md): 查询Deployment的详细信息。请参见如何调用API。GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}状态码:200无状态码:200OK - [更新Deployment](https://support.huaweicloud.com/api-cci/patchAppsV1NamespacedDeployment.md): 更新Deployment。The following fields can be updated:metadata.labelsmetadata.labelsmetadata.generateNamemetadata.generateNamemetadata.annotationsmetadata.annotationsspec.temp - [替换Deployment](https://support.huaweicloud.com/api-cci/replaceAppsV1NamespacedDeployment.md): 替换Deployment。其中以下字段支持更新:metadata.labelsmetadata.labelsmetadata.generateNamemetadata.generateNamemetadata.annotationsmetadata.annotationsspec.templatespec.templatespec.rep - [查询Deployment的伸缩操作](https://support.huaweicloud.com/api-cci/readAppsV1NamespacedDeploymentScale.md): 查询Deployment的伸缩操作请参见如何调用API。GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale状态码:200无状态码:200OK - [更新Deployment的伸缩操作](https://support.huaweicloud.com/api-cci/patchAppsV1NamespacedDeploymentScale.md): This API is used to partially update scale of the specified Scale.The following fields can be updated:metadata.resourceVersionmetadata.resourceVersionmetadata.creationTim - [替换Deployment的伸缩操作](https://support.huaweicloud.com/api-cci/replaceAppsV1NamespacedDeploymentScale.md): This API is used to replace scale of the specified Scale.The following fields can be updated:metadata.resourceVersionmetadata.resourceVersionmetadata.creationTimestampmet - [查询Deployment状态](https://support.huaweicloud.com/api-cci/readAppsV1NamespacedDeploymentStatus.md): 查询Deployment的状态。请参见如何调用API。GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status状态码:200无状态码:200OK - [删除指定namespace下的ingresses](https://support.huaweicloud.com/api-cci/deleteExtensionsV1beta1CollectionNamespacedIngress.md): 删除Namespace下所有Ingress。请参见如何调用API。DELETE /apis/extensions/v1beta1/namespaces/{namespace}/ingresses状态码:200无状态码:200OK - [查询指定namespace下的Ingresses](https://support.huaweicloud.com/api-cci/listExtensionsV1beta1NamespacedIngress.md): 查询Namespace下所有Ingress的详细信息。请参见如何调用API。GET /apis/extensions/v1beta1/namespaces/{namespace}/ingresses状态码:200无状态码:200OK - [创建Ingress](https://support.huaweicloud.com/api-cci/createExtensionsV1beta1NamespacedIngress.md): 创建Ingress,使用http协议,关联的后端Service为“redis:8080”,使用ELB作为Ingress控制器,ELB的ip为192.168.137.182,端口号为6071。说明:若需要在CCI工作负载详情页面的“访问方式”页签中显示对应的Ingress资源,则需要给创建的Ingress资源对象添加labels标签。添加的 - [删除Ingress](https://support.huaweicloud.com/api-cci/deleteExtensionsV1beta1NamespacedIngress.md): 删除Ingress。请参见如何调用API。DELETE /apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}状态码:200状态码:202无状态码:200OK - [查询Ingress](https://support.huaweicloud.com/api-cci/readExtensionsV1beta1NamespacedIngress.md): 查询Ingress的详细信息。请参见如何调用API。GET /apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}状态码:200无状态码:200OK - [更新Ingress](https://support.huaweicloud.com/api-cci/patchExtensionsV1beta1NamespacedIngress.md): 更新Ingress。其中以下字段支持更新:metadata.labelsmetadata.labelsmetadata.generateNamemetadata.generateNamemetadata.annotationsmetadata.annotationsspec.rulesspec.rules请参见如何调用API。PATCH - [替换Ingress](https://support.huaweicloud.com/api-cci/replaceExtensionsV1beta1NamespacedIngress.md): 替换Ingress。其中以下字段支持更新:metadata.labelsmetadata.labelsmetadata.generateNamemetadata.generateNamemetadata.annotationsmetadata.annotationsspec.rulesspec.rules请参见如何调用API。PUT /a - [查询Ingress状态](https://support.huaweicloud.com/api-cci/readExtensionsV1beta1NamespacedIngressStatus.md): 查询Ingress状态。请参见如何调用API。GET /apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}/status状态码:200无状态码:200OK - [查询open api swagger信息](https://support.huaweicloud.com/api-cci/GetOpenAPIv2.md): 查询open api swagger信息。请参见如何调用API。GET /openapi/v2状态码:200无状态码:200OK - [删除指定namespace下的Volcano Jobs](https://support.huaweicloud.com/api-cci/deleteBatchVolcanoShV1alpha1CollectionNamespacedJob.md): 删除命名空间下的所有Volcano Job。请参见如何调用API。DELETE /apis/batch.volcano.sh/v1alpha1/namespaces/{namespace}/jobs状态码:200无状态码:200OK - [查询指定namespace下的Volcano Jobs](https://support.huaweicloud.com/api-cci/listBatchVolcanoShV1alpha1NamespacedJob.md): 查询命名空间下所有的Volcano Job。请参见如何调用API。GET /apis/batch.volcano.sh/v1alpha1/namespaces/{namespace}/jobs状态码:200无状态码:200OK - [创建Volcano Job](https://support.huaweicloud.com/api-cci/createBatchVolcanoShV1alpha1NamespacedJob.md): 创建Volcano Job。请参见如何调用API。POST /apis/batch.volcano.sh/v1alpha1/namespaces/{namespace}/jobs状态码:200状态码:201状态码:202创建Volcano Job。状态码:201Created - [删除Volcano Job](https://support.huaweicloud.com/api-cci/deleteBatchVolcanoShV1alpha1NamespacedJob.md): 删除Volcano Job。请参见如何调用API。DELETE /apis/batch.volcano.sh/v1alpha1/namespaces/{namespace}/jobs/{name}状态码:200状态码:202无状态码:200OK - [查询Volcano Job详情](https://support.huaweicloud.com/api-cci/readBatchVolcanoShV1alpha1NamespacedJob.md): 查询Volcano Job的详细信息。请参见如何调用API。GET /apis/batch.volcano.sh/v1alpha1/namespaces/{namespace}/jobs/{name}状态码:200无状态码:200OK - [更新Volcano Job](https://support.huaweicloud.com/api-cci/patchBatchVolcanoShV1alpha1NamespacedJob.md): 更新Volcano Job。The following fields can be updated:metadata.labelsmetadata.labelsmetadata.generateNamemetadata.generateNamemetadata.annotationsmetadata.annotationsspec.tem - [替换Volcano Job](https://support.huaweicloud.com/api-cci/replaceBatchVolcanoShV1alpha1NamespacedJob.md): 替换Volcano Job。The following fields can be updated:metadata.labelsmetadata.labelsmetadata.generateNamemetadata.generateNamemetadata.annotationsmetadata.annotationsspec.tem - [查询所有Namespaces](https://support.huaweicloud.com/api-cci/listCoreV1Namespace.md): 该API用于获取集群中该用户当前项目下所有Namespace的详细信息。请参见如何调用API。GET /api/v1/namespaces状态码:200无状态码:200OK - [创建Namespace](https://support.huaweicloud.com/api-cci/createCoreV1Namespace.md): 创建一个Namespace。当前云容器实例提供“通用计算型”和“GPU加速型”两种类型的资源,创建命名空间时需要选择资源类型,后续创建的负载中容器就运行在此类型的集群上。调用接口时必须指定metadata.annotations中namespace.kubernetes.io/flavor字段为如下值。general-computing: - [删除Namespace](https://support.huaweicloud.com/api-cci/deleteCoreV1Namespace.md): 删除一个Namespace。请参见如何调用API。DELETE /api/v1/namespaces/{name}状态码:200状态码:202删除命名空间,删除前持续10S。无 - [查询Namespace](https://support.huaweicloud.com/api-cci/readCoreV1Namespace.md): 查询Namespace的详细信息。请参见如何调用API。GET /api/v1/namespaces/{name}状态码:200无状态码:200OK - [获取ClusterRole列表](https://support.huaweicloud.com/api-cci/listRbacAuthorizationV1ClusterRole.md): This API is used to list or watch objects of kind ClusterRole请参见如何调用API。GET /apis/rbac.authorization.k8s.io/v1/clusterroles状态码:200无状态码:200OK - [查询指定的ClusterRole](https://support.huaweicloud.com/api-cci/readRbacAuthorizationV1ClusterRole.md): This API is used to read the specified ClusterRole请参见如何调用API。GET /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}状态码:200无状态码:200OK - [删除指定namespace下的Secrets](https://support.huaweicloud.com/api-cci/deleteCoreV1CollectionNamespacedSecret.md): 删除Namespace下所有Secret。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/secrets状态码:200无状态码:200OK - [查询指定namespace下的Secrets](https://support.huaweicloud.com/api-cci/listCoreV1NamespacedSecret.md): 查询指定namespace下的所有Secret对象。请参见如何调用API。GET /api/v1/namespaces/{namespace}/secrets状态码:200无状态码:200OK - [创建Secret](https://support.huaweicloud.com/api-cci/createCoreV1NamespacedSecret.md): 创建Secret,Kubernetes提供了Secret来处理敏感信息。请参见如何调用API。POST /api/v1/namespaces/{namespace}/secrets状态码:200状态码:201状态码:202创建的Secret中包含两条Key-Value。状态码:201Created - [删除Secret](https://support.huaweicloud.com/api-cci/deleteCoreV1NamespacedSecret.md): 删除Secret。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/secrets/{name}状态码:200状态码:202状态码:200OK - [查询Secret](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedSecret.md): 查询Secret的详细信息。请参见如何调用API。GET /api/v1/namespaces/{namespace}/secrets/{name}状态码:200无状态码:200OK - [更新Secret](https://support.huaweicloud.com/api-cci/patchCoreV1NamespacedSecret.md): 更新Secret中部分信息。请参见如何调用API。PATCH /api/v1/namespaces/{namespace}/secrets/{name}状态码:200更新Secret中的data数据为"test2" : "dGVzdA=="。Content-Type: application/merge-patch+json状态码:200 - [替换Secret](https://support.huaweicloud.com/api-cci/replaceCoreV1NamespacedSecret.md): 替换Secret。其中以下字段支持更新:metadata.labelsmetadata.labelsmetadata.annotationsmetadata.annotationsdatadata当“type”的值为“Opaque”时,“data”的“key”和“value”都可以更新。当“type”的值为“Opaque”时,“data” - [查询指定namespace下的Endpoints](https://support.huaweicloud.com/api-cci/listCoreV1NamespacedEndpoints.md): 查询Namespace下所有Endpoints。请参见如何调用API。GET /api/v1/namespaces/{namespace}/endpoints状态码:200无状态码:200OK - [创建Endpoint](https://support.huaweicloud.com/api-cci/createCoreV1NamespacedEndpoints.md): 创建Endpoint。请参见如何调用API。POST /api/v1/namespaces/{namespace}/endpoints状态码:200状态码:201状态码:202创建Endpoint,端口名称为"service0",端口号"80",端口的IP协议为默认的TCP协议。状态码:200OK - [删除Endpoint](https://support.huaweicloud.com/api-cci/deleteCoreV1NamespacedEndpoints.md): 删除Endpoint。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/endpoints/{name}状态码:200状态码:202无状态码:200OK - [查询Endpoint](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedEndpoints.md): 查询Endpoint。请参见如何调用API。GET /api/v1/namespaces/{namespace}/endpoints/{name}状态码:200无状态码:200OK - [更新Endpoint](https://support.huaweicloud.com/api-cci/patchCoreV1NamespacedEndpoints.md): 更新Endpoint。请参见如何调用API。PATCH /api/v1/namespaces/{namespace}/endpoints/{name}状态码:200更新Endpoint。状态码:200OK - [替换Endpoint](https://support.huaweicloud.com/api-cci/replaceCoreV1NamespacedEndpoints.md): 替换Endpoint。请参见如何调用API。PUT /api/v1/namespaces/{namespace}/endpoints/{name}状态码:200状态码:201替换Endpoint。状态码:200OK - [查询指定namespace下的resourcequotas](https://support.huaweicloud.com/api-cci/listCoreV1NamespacedResourceQuota.md): 查询指定namespace下的resourcequotas(资源用量)。请参见如何调用API。GET /api/v1/namespaces/{namespace}/resourcequotas状态码:200无状态码:200OK - [查询指定的resourcequota](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedResourceQuota.md): 查询指定的resourcequota(资源用量)。请参见如何调用API。GET /api/v1/namespaces/{namespace}/resourcequotas/{name}状态码:200无状态码:200OK - [查询所有namespace下的CronJobs](https://support.huaweicloud.com/api-cci/listBatchV1beta1CronJobForAllNamespaces.md): 查询所有namespace下所有CronJob的详细信息。请参见如何调用API。GET /apis/batch/v1beta1/cronjobs状态码:200无状态码:200OK - [查询APIVersions](https://support.huaweicloud.com/api-cci/getCoreAPIVersions.md): get available API versions请参见如何调用API。GET /api状态码:200无状态码:200OK - [查询所有v1版本的API](https://support.huaweicloud.com/api-cci/getCoreV1APIResources.md): get available resources请参见如何调用API。GET /api/v1状态码:200无状态码:200OK - [查询APIGroupList](https://support.huaweicloud.com/api-cci/getAPIVersions.md): get available API versions请参见如何调用API。GET /apis状态码:200无状态码:200OK - [查询APIGroup /apis/apps](https://support.huaweicloud.com/api-cci/getAppsAPIGroup.md): 查询APIGroup /apis/apps请参见如何调用API。GET /apis/apps状态码:200无状态码:200OK - [查询所有apps/v1的API](https://support.huaweicloud.com/api-cci/getAppsV1APIResources.md): get available resources请参见如何调用API。GET /apis/apps/v1状态码:200无状态码:200OK - [查询APIGroup /apis/batch](https://support.huaweicloud.com/api-cci/getBatchAPIGroup.md): 查询APIGroup /apis/batch请参见如何调用API。GET /apis/batch状态码:200无状态码:200OK - [查询APIGroup /apis/batch.volcano.sh](https://support.huaweicloud.com/api-cci/getBatchVolcanoShAPIGroup.md): 查询APIGroup /apis/batch.volcano.sh请参见如何调用API。GET /apis/batch.volcano.sh状态码:200无状态码:200OK - [查询所有batch.volcano.sh/v1alpha1的API](https://support.huaweicloud.com/api-cci/getBatchVolcanoShV1alpha1APIResources.md): 查询所有batch.volcano.sh/v1alpha1的API请参见如何调用API。GET /apis/batch.volcano.sh/v1alpha1状态码:200无状态码:200OK - [查询所有batch/v1的API](https://support.huaweicloud.com/api-cci/getBatchV1APIResources.md): get available resources请参见如何调用API。GET /apis/batch/v1状态码:200无状态码:200OK - [查询所有batch/v1beta1的API](https://support.huaweicloud.com/api-cci/getBatchV1beta1APIResources.md): get available resources请参见如何调用API。GET /apis/batch/v1beta1状态码:200无状态码:200OK - [查询APIGroup /apis/crd.yangtse.cni](https://support.huaweicloud.com/api-cci/getCrdYangtseCniAPIGroup.md): 查询APIGroup /apis/crd.yangtse.cni请参见如何调用API。GET /apis/crd.yangtse.cni状态码:200无状态码:200OK - [查询所有crd.yangtse.cni/v1的API](https://support.huaweicloud.com/api-cci/getCrdYangtseCniV1APIResources.md): 查询所有crd.yangtse.cni/v1的API请参见如何调用API。GET /apis/crd.yangtse.cni/v1状态码:200无状态码:200OK - [查询APIGroup /apis/extensions](https://support.huaweicloud.com/api-cci/getExtensionsAPIGroup.md): 查询APIGroup /apis/extensions请参见如何调用API。GET /apis/extensions状态码:200无状态码:200OK - [查询所有extensions/v1beta1的API](https://support.huaweicloud.com/api-cci/getExtensionsV1beta1APIResources.md): get available resources请参见如何调用API。GET /apis/extensions/v1beta1状态码:200无状态码:200OK - [查询APIGroup /apis/metrics.k8s.io](https://support.huaweicloud.com/api-cci/getMetricsAPIGroup.md): 查询APIGroup /apis/metrics.k8s.io请参见如何调用API。GET /apis/metrics.k8s.io状态码:200无状态码:200OK - [查询所有metrics.k8s.io/v1beta1的API](https://support.huaweicloud.com/api-cci/getMetricsV1beta1APIResources.md): get available resources请参见如何调用API。GET /apis/metrics.k8s.io/v1beta1状态码:200无状态码:200OK - [查询APIGroup /apis/networking.cci.io](https://support.huaweicloud.com/api-cci/getNetworkingCciIoAPIGroup.md): 查询APIGroup /apis/networking.cci.io请参见如何调用API。GET /apis/networking.cci.io状态码:200无状态码:200OK - [查询所有networking.cci.io/v1beta1的API](https://support.huaweicloud.com/api-cci/getNetworkingCciIoV1beta1APIResources.md): get available resources请参见如何调用API。GET /apis/networking.cci.io/v1beta1状态码:200无状态码:200OK - [查询APIGroup /apis/rbac.authorization.k8s.io](https://support.huaweicloud.com/api-cci/getRbacAuthorizationAPIGroup.md): get information of a group请参见如何调用API。GET /apis/rbac.authorization.k8s.io状态码:200无状态码:200OK - [查询所有rbac.authorization.k8s.io/v1的API](https://support.huaweicloud.com/api-cci/getRbacAuthorizationV1APIResources.md): get available resources请参见如何调用API。GET /apis/rbac.authorization.k8s.io/v1状态码:200无状态码:200OK - [查询指定namespace下的Events](https://support.huaweicloud.com/api-cci/listCoreV1NamespacedEvent.md): 查询Namespace下所有Event的详细信息。请参见如何调用API。GET /api/v1/namespaces/{namespace}/events状态码:200无状态码:200OK - [删除Event](https://support.huaweicloud.com/api-cci/deleteCoreV1NamespacedEvent.md): 删除Event。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/events/{name}状态码:200状态码:202状态码:200OK - [查询Event](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedEvent.md): 查询Event详细信息。请参见如何调用API。GET /api/v1/namespaces/{namespace}/events/{name}状态码:200无状态码:200OK - [查询指定namespace下的PersistentVolumeClaims](https://support.huaweicloud.com/api-cci/listCoreV1NamespacedPersistentVolumeClaim.md): 查询Namespace下的所有PersistentVolumeClaim。请参见如何调用API。GET /api/v1/namespaces/{namespace}/persistentvolumeclaims状态码:200无状态码:200OK - [创建PersistentVolumeClaim](https://support.huaweicloud.com/api-cci/createCoreV1NamespacedPersistentVolumeClaim.md): 创建PersistentVolumeClaim,主要适用于动态创建存储的场景,即存储资源未创建时,创建PVC会根据请求内容创建一个存储资源。当前支持创建EVS(云硬盘卷,块存储)和SFS(文件存储卷),使用时 spec.storageClassName 参数的取值如下:sata:普通I/O云硬盘卷sata:普通I/O云硬盘卷sas:高I/ - [删除PersistentVolumeClaim](https://support.huaweicloud.com/api-cci/deleteCoreV1NamespacedPersistentVolumeClaim.md): 删除PersistentVolumeClaim。请参见如何调用API。DELETE /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}状态码:200状态码:202状态码:200OK - [查询PersistentVolumeClaim](https://support.huaweicloud.com/api-cci/readCoreV1NamespacedPersistentVolumeClaim.md): 查询PersistentVolumeClaim。请参见如何调用API。GET /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}状态码:200无状态码:200OK - [替换PersistentVolumeClaims](https://support.huaweicloud.com/api-cci/replaceCoreV1NamespacedPersistentVolumeClaim.md): 替换指定PersistentVolumeClaims。其中以下字段支持更新:metadata.labelsmetadata.labelsmetadata.annotationsmetadata.annotationsmetadata.generateNamemetadata.generateName其余部分不支持更新。请参见如何调用API - [获取指定namespace下RoleBinding列表](https://support.huaweicloud.com/api-cci/listRbacAuthorizationV1NamespacedRoleBinding.md): This API is used to list or watch objects of kind RoleBinding请参见如何调用API。GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings状态码:200无状态码:200OK - [创建RoleBinding](https://support.huaweicloud.com/api-cci/createRbacAuthorizationV1NamespacedRoleBinding.md): This API is used to create a RoleBinding请参见如何调用API。POST /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings状态码:200状态码:201状态码:202创建RoleBinding,将"rbac-te - [删除指定的RoleBinding](https://support.huaweicloud.com/api-cci/deleteRbacAuthorizationV1NamespacedRoleBinding.md): This API is used to delete a RoleBinding请参见如何调用API。DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}状态码:200状态码:202无状态码:200OK - [获取指定的RoleBinding](https://support.huaweicloud.com/api-cci/readRbacAuthorizationV1NamespacedRoleBinding.md): This API is used to read the specified RoleBinding请参见如何调用API。GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}状态码:200无状态码:200OK - [更新指定的RoleBinding](https://support.huaweicloud.com/api-cci/patchRbacAuthorizationV1NamespacedRoleBinding.md): This API is used to partially update the specified RoleBinding请参见如何调用API。PATCH /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}状态码:200更新指定的Ro - [替换指定的RoleBinding](https://support.huaweicloud.com/api-cci/replaceRbacAuthorizationV1NamespacedRoleBinding.md): This API is used to replace the specified RoleBinding请参见如何调用API。PUT /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}状态码:200状态码:201替换指定的RoleBi - [获取RoleBinding列表](https://support.huaweicloud.com/api-cci/listRbacAuthorizationV1RoleBindingForAllNamespaces.md): This API is used to list or watch objects of kind RoleBinding请参见如何调用API。GET /apis/rbac.authorization.k8s.io/v1/rolebindings状态码:200无状态码:200OK - [删除指定namespace下的StatefulSets](https://support.huaweicloud.com/api-cci/deleteAppsV1CollectionNamespacedStatefulSet.md): 删除Namespace下所有StatefulSet。请参见如何调用API。DELETE /apis/apps/v1/namespaces/{namespace}/statefulsets状态码:200只删除StatefulSet(对应Pod不删除){ "Kind" : "DeleteOptions", "apiVersion" : - [查询指定namespace下的StatefulSets](https://support.huaweicloud.com/api-cci/listAppsV1NamespacedStatefulSet.md): 查询Namespace下所有StatefulSet的详细信息。请参见如何调用API。GET /apis/apps/v1/namespaces/{namespace}/statefulsets状态码:200无状态码:200OK - [创建StatefulSet](https://support.huaweicloud.com/api-cci/createAppsV1NamespacedStatefulSet.md): 创建StatefulSet。请参见如何调用API。POST /apis/apps/v1/namespaces/{namespace}/statefulsets状态码:200状态码:201状态码:202创建一个名为“statefulset-test”的StatefuiSet负载,使用redis镜像创建3个Pod。状态码:200OK - [删除StatefulSet](https://support.huaweicloud.com/api-cci/deleteAppsV1NamespacedStatefulSet.md): 删除StatefulSet。请参见如何调用API。DELETE /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}状态码:200状态码:202只删除StatefulSet(对应Pod不删除){ "Kind" : "DeleteOptions", "apiVersion" - [查询StatefulSet](https://support.huaweicloud.com/api-cci/readAppsV1NamespacedStatefulSet.md): 查询StatefulSet的详细信息。请参见如何调用API。GET /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}状态码:200无状态码:200OK - [更新StatefulSet](https://support.huaweicloud.com/api-cci/patchAppsV1NamespacedStatefulSet.md): 更新StatefulSet。The following fields can be updated:metadata.labelsmetadata.labelsmetadata.annotationsmetadata.annotationsspec.replicasspec.replicasspec.templatespec.templa - [替换StatefulSet](https://support.huaweicloud.com/api-cci/replaceAppsV1NamespacedStatefulSet.md): 替换StatefulSet。The following fields can be updated:metadata.labelsmetadata.labelsmetadata.annotationsmetadata.annotationsspec.templatespec.templatespec.replicasspec.replic - [查询StatefulSet状态](https://support.huaweicloud.com/api-cci/readAppsV1NamespacedStatefulSetStatus.md): 查询StatefulSet状态。请参见如何调用API。GET /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status状态码:200无状态码:200OK - [查询用户所有的StatefulSets](https://support.huaweicloud.com/api-cci/listAppsV1StatefulSetForAllNamespaces.md): This API is used to list all StatefulSet resource objects.请参见如何调用API。GET /apis/apps/v1/statefulsets状态码:200无状态码:200OK - [查询用户所有的Jobs](https://support.huaweicloud.com/api-cci/listBatchV1JobForAllNamespaces.md): This API is used to obtain a Job list.请参见如何调用API。GET /apis/batch/v1/jobs状态码:200无状态码:200OK - [删除指定namespace下的Jobs](https://support.huaweicloud.com/api-cci/deleteBatchV1CollectionNamespacedJob.md): 删除Namespace下所有Job。请参见如何调用API。DELETE /apis/batch/v1/namespaces/{namespace}/jobs状态码:200只删除Job(对应Pod不删除)。{ "apiVersion" : "v1", "gracePeriodSeconds" : 0, "kind" : "Del - [查询指定namespace下的Jobs](https://support.huaweicloud.com/api-cci/listBatchV1NamespacedJob.md): 查询Namespace下所有Job的详细信息。请参见如何调用API。GET /apis/batch/v1/namespaces/{namespace}/jobs状态码:200无状态码:200OK - [创建Job](https://support.huaweicloud.com/api-cci/createBatchV1NamespacedJob.md): 创建Job。创建Job时挂载OBS的使用限制请参见挂载OBS使用限制。请参见如何调用API。POST /apis/batch/v1/namespaces/{namespace}/jobs状态码:200状态码:201状态码:202创建普通Job,计算π到2000位并打印输出。{ "apiVersion" : "batch/v1", - [删除Job](https://support.huaweicloud.com/api-cci/deleteBatchV1NamespacedJob.md): 删除Job。请参见如何调用API。DELETE /apis/batch/v1/namespaces/{namespace}/jobs/{name}状态码:200状态码:202只删除Job(对应Pod不删除):{ "apiVersion" : "v1", "gracePeriodSeconds" : 0, "kind" : "D - [查询Job](https://support.huaweicloud.com/api-cci/readBatchV1NamespacedJob.md): 查询Job的详细信息。请参见如何调用API。GET /apis/batch/v1/namespaces/{namespace}/jobs/{name}状态码:200无状态码:200OK - [更新Job](https://support.huaweicloud.com/api-cci/patchBatchV1NamespacedJob.md): 更新Job。The following fields can be updated:metadata.labelsmetadata.labelsspec.parallelismspec.parallelismspec.completionsspec.completionsspec.selectorspec.selector请参见如何调用A - [替换Job](https://support.huaweicloud.com/api-cci/replaceBatchV1NamespacedJob.md): 替换Job。The following fields can be updated:metadata.selfLinkmetadata.selfLinkmetadata.resourceVersionmetadata.resourceVersionmetadata.generationmetadata.generationmetadata - [查询Job状态](https://support.huaweicloud.com/api-cci/readBatchV1NamespacedJobStatus.md): 查询Job状态。请参见如何调用API。GET /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status状态码:200无状态码:200OK - [查询指定namespace下的ReplicaSets](https://support.huaweicloud.com/api-cci/listAppsV1NamespacedReplicaSet.md): 查询命名空间下所有的ReplicaSets。请参见如何调用API。GET /apis/apps/v1/namespaces/{namespace}/replicasets状态码:200无状态码:200OK - [查询ReplicaSet](https://support.huaweicloud.com/api-cci/readAppsV1NamespacedReplicaSet.md): 查询ReplicaSet的详细信息。请参见如何调用API。GET /apis/apps/v1/namespaces/{namespace}/replicasets/{name}状态码:200无状态码:200OK - [请求数据结构(废弃)](https://support.huaweicloud.com/api-cci/cci_02_0065.md): 华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档,帮助您快速上手使用华为云服务。 - [响应数据结构(废弃)](https://support.huaweicloud.com/api-cci/cci_02_0066.md): 华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档,帮助您快速上手使用华为云服务。 - [数据结构](https://support.huaweicloud.com/api-cci/cci_02_0074.md): 华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档,帮助您快速上手使用华为云服务。 - [权限及授权项说明](https://support.huaweicloud.com/api-cci/cci_02_0081.md): 如果您需要对您所拥有的云容器实例(CCI)进行精细的权限管理,您可以使用统一身份认证服务(Identity and Access Management,简称IAM),如果云账号已经能满足您的要求,不需要创建独立的IAM用户,您可以跳过本章节,不影响您使用CCI服务的其它功能。默认情况下,新建的IAM用户没有任何权限,您需要将其加入用户组, - [授权项分类](https://support.huaweicloud.com/api-cci/cci_02_0083.md): 华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档,帮助您快速上手使用华为云服务。 - [PATCH请求方法操作说明](https://support.huaweicloud.com/api-cci/cci_02_0070.md): 对于PATCH请求方法的操作,Kubernetes API通过相应的HTTP头域“Content-Type”对其进行识别。目前支持两种类型的PATCH请求方法的操作。Merge Patch, Content-Type: application/merge-patch+json在RFC7386协议的定义中,Merge Patch必须包含对一 - [PATCH请求方法操作示例](https://support.huaweicloud.com/api-cci/cci_02_0071.md): 本章节主要介绍PATCH请求方法中,Merge Patch与Strategic Merge Patch类型的操作示例。以创建Deployment资源对象为例。请求示例响应示例如果使用Merge Patch类型操作,添加一个容器到指定Deployment的template参数中,则其中的整个容器列表将被新添加的容器所替换。Merge Pat - [约束限制](https://support.huaweicloud.com/api-cci/pro_ys.md): 云容器实例当前支持的区域,如表1 支持的区域所示。云容器实例当前支持使用GPU,您可以根据需要选择,实例收费详情请参见产品价格详情。当不使用GPU时,Pod规格需满足如下要求:Pod的CPU取值范围为0.25核-32核,或者自定义选择48核、64核,且CPU必须为0.25核的整数倍Pod的内存取值范围为1GB-512GB,且内存必须为1G - [Namespace和Network](https://support.huaweicloud.com/api-cci/devg_na.md): Namespace(命名空间)是一种在多个用户之间划分资源的方法。适用于用户中存在多个团队或项目的情况。当前云容器实例提供通用计算型和GPU型两种类型的资源,创建命名空间时需要选择资源类型,后续创建的负载中容器就运行在此类型的集群上。通用计算型:支持创建含CPU资源的容器实例及工作负载,适用于通用计算场景。GPU型:支持创建含GPU资源的 - [状态码](https://support.huaweicloud.com/api-cci/cci_02_0068.md): 华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档,帮助您快速上手使用华为云服务。 - [错误码](https://support.huaweicloud.com/api-cci/cci_02_1005.md): 调用接口出错后,将不会返回结果数据。调用方可根据每个接口对应的错误码来定位错误原因。 当调用出错时,HTTP请求返回一个 4xx 或 5xx 的HTTP状态码。返回的消息体中是具体的错误代码及错误信息。在调用方找不到错误原因时,可以联系华为云客服,并提供错误码,以便我们尽快帮您解决问题。当接口调用出错时,会返回错误码及错误信息说明,错误响 - [获取项目ID](https://support.huaweicloud.com/api-cci/cci_02_1001.md): 在调用接口的时候,部分URL中需要填入项目ID,所以需要获取到项目ID。有如下两种获取方式:调用API获取项目ID从控制台获取项目ID项目ID可以通过调用查询指定条件下的项目列表API获取。获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和 - [获取账号ID](https://support.huaweicloud.com/api-cci/cci_02_1002.md): 在调用接口的时候,部分URL中需要填入账号ID(domain-id),所以需要先在管理控制台上获取到账号ID。账号ID获取步骤如下:登录CCI控制台。单击用户名,在下拉列表中单击我的凭证。在API凭证页面查看账号ID。获取账号ID在API凭证页面查看账号ID。 - [获取容器镜像地址](https://support.huaweicloud.com/api-cci/cci_02_1003.md): 云容器实例支持使用镜像中心和上传到容器镜像服务的镜像。其中容器镜像服务从镜像中心同步了部分常用镜像,使得您可以在内部网络中直接使用镜像名称:版本号,如nginx:alpine,您可以在容器镜像服务控制台查询同步了哪些镜像。容器镜像服务中的镜像请使用镜像的下载指令,上传镜像后,您可以在容器镜像服务的镜像中获取,如下图所示。镜像地址 - [挂载OBS使用限制](https://support.huaweicloud.com/api-cci/cci_02_2026.md): 云容器实例通过辅助容器(SideCar Container)挂载OBS路径,并将路径共享给主容器,如图1所示。挂载OBS时有如下限制:创建Pod时需要添加annotations字段:obssidecar-injector-webhook/inject: 'true'。obssidecar-injector-webhook/inject: - [导入存储](https://support.huaweicloud.com/api-cci/cci_02_2021.md): 导入已有存储到指定的命名空间。当前支持导入EVS(云硬盘卷,块存储)、SFS(文件存储卷)、SFS Turbo(极速文件存储卷)、OBS(对象存储卷),使用时 spec.storageClassName 参数的取值如下:sata:普通I/O云硬盘卷sas:高I/O云硬盘卷ssd:超高I/O云硬盘卷nfs-rw:标准文件协议类型文件存储卷e - [查询导入的PVC](https://support.huaweicloud.com/api-cci/cci_02_2022.md): 查询指定命名空间下的PVC。GET /api/v1/namespaces/{namespace}/extended-persistentvolumeclaimsN/A响应参数响应示例更多状态码请参见状态码。 - [创建TFJob](https://support.huaweicloud.com/api-cci/cci_02_3141.md): 创建TFJob。TFJob即Tensorflow任务,是基于Tensorflow开源框架的kubernetes自定义资源类型,有多种角色可以配置,能够帮助您更简单地实现Tensorflow的单机或分布式训练。Tensorflow开源框架的信息详见:https://www.tensorflow.org 。POST /apis/kubeflo - [查询TFJob](https://support.huaweicloud.com/api-cci/cci_02_3142.md): 查询TFJob的详细信息。GET /apis/kubeflow.org/v1/namespaces/{namespace}/tfjobs/{name}N/A响应参数:响应参数的详细描述请参考表154。响应示例: - [查询指定namespace下的所有TFJob](https://support.huaweicloud.com/api-cci/cci_02_3143.md): 查询Namespace下所有TFJob的详细信息。GET /apis/kubeflow.org/v1/namespaces/{namespace}/tfjobsN/A响应参数:响应参数的详细描述请参见表168。响应示例: - [删除namespace下的所有TFJob](https://support.huaweicloud.com/api-cci/cci_02_3144.md): 删除命名空间下的所有TFJob。DELETE /apis/kubeflow.org/v1/namespaces/{namespace}/tfjobs请求参数:N/A响应参数:响应参数的详细描述请参考表168。响应示例: - [删除TFJob](https://support.huaweicloud.com/api-cci/cci_02_3145.md): 删除TFJob。DELETE /apis/kubeflow.org/v1/namespaces/{namespace}/tfjobs/{name}N/A响应参数:响应参数的详细描述请参见表72。响应示例: - [更新TFJob](https://support.huaweicloud.com/api-cci/cci_02_3146.md): 更新TFJob。如下字段可被更新:metadata.labelsmetadata.annotationsspec.activeDeadlineSecondsspec.ttlSecondsAfterFinishedspec.cleanPodPolicyPATCH /apis/kubeflow.org/v1/namespaces/{names - [替换TFJob](https://support.huaweicloud.com/api-cci/cci_02_3147.md): 替换TFJob。如下字段可被替换:metadata.labelsmetadata.annotationsspec.activeDeadlineSecondsspec.ttlSecondsAfterFinishedspec.cleanPodPolicyPUT /apis/kubeflow.org/v1/namespaces/{namespa - [创建MXJob](https://support.huaweicloud.com/api-cci/cci_02_3151.md): 创建MXJob。MXJob即MXNet任务,是基于MXNet开源框架的kubernetes自定义资源类型,有多种角色可以配置,能够帮助您更简单地实现MXNet的训练。MXNet开源框架的信息详见:https://mxnet.incubator.apache.org/。POST /apis/kubeflow.org/v1/namespace - [查询MXJob](https://support.huaweicloud.com/api-cci/cci_02_3152.md): 查询MXJob的详细信息。GET /apis/kubeflow.org/v1/namespaces/{namespace}/mxjobs/{name}N/A响应参数:响应参数的详细描述请参考表162。响应示例: - [查询指定namespace下的所有MXJob](https://support.huaweicloud.com/api-cci/cci_02_3153.md): 查询Namespace下所有MXJob的详细信息。GET /apis/kubeflow.org/v1/namespaces/{namespace}/mxjobsN/A响应参数:响应参数的详细描述请参见表169。响应示例: - [删除namespace下的所有MXJob](https://support.huaweicloud.com/api-cci/cci_02_3154.md): 删除命名空间下的所有MXJob。DELETE /apis/kubeflow.org/v1/namespaces/{namespace}/mxjobsN/A响应参数:响应参数的详细描述请参见表72。响应示例:表3 状态码描述API的状态码。 - [删除MXJob](https://support.huaweicloud.com/api-cci/cci_02_3155.md): 删除MXJob。DELETE /apis/kubeflow.org/v1/namespaces/{namespace}/mxjobs/{name}N/A响应参数:响应参数的详细描述请参见表72。响应示例: - [更新MXJob](https://support.huaweicloud.com/api-cci/cci_02_3156.md): 更新MXJob。如下字段可被更新:metadata.labelsmetadata.annotationsspec.activeDeadlineSecondsspec.ttlSecondsAfterFinishedspec.cleanPodPolicyPATCH /apis/kubeflow.org/v1/namespaces/{names - [替换MXJob](https://support.huaweicloud.com/api-cci/cci_02_3157.md): 替换MXJob。如下字段可被替换:metadata.labelsmetadata.annotationsspec.activeDeadlineSecondsspec.ttlSecondsAfterFinishedspec.cleanPodPolicyPUT /apis/kubeflow.org/v1/namespaces/{namespa - [创建PyTorchJob](https://support.huaweicloud.com/api-cci/cci_02_3161.md): 创建PyTorchJob。PyTorchJob即PyTorch任务,是基于PyTorch开源框架的kubernetes自定义资源类型,有多种角色可以配置,能够帮助您更简单地实现PyTorch的训练。POST /apis/kubeflow.org/v1/namespaces/{namespace}/pytorchjobs请求参数:请求参数的 - [查询PyTorchJob](https://support.huaweicloud.com/api-cci/cci_02_3162.md): 查询PyTorchJob的详细信息。GET /apis/kubeflow.org/v1/namespaces/{namespace}/pytorchjobs/{name}N/A响应参数:响应参数的详细描述请参见表165。响应示例: - [查询指定namespace下的所有PyTorchJob](https://support.huaweicloud.com/api-cci/cci_02_3163.md): 查询Namespace下所有PyTorchJob的详细信息。GET /apis/kubeflow.org/v1/namespaces/{namespace}/pytorchjobsN/A响应参数:响应参数的详细描述请参见表170。响应示例: - [删除namespace下的所有PyTorchJob](https://support.huaweicloud.com/api-cci/cci_02_3164.md): 删除命名空间下的所有PyTorchJob。DELETE /apis/kubeflow.org/v1/namespaces/{namespace}/pytorchjobsN/A响应参数:响应参数的详细描述请参见表170。响应示例: - [删除PyTorchJob](https://support.huaweicloud.com/api-cci/cci_02_3165.md): 删除PyTorchJob。DELETE /apis/kubeflow.org/v1/namespaces/{namespace}/pytorchjobs/{name}N/A响应参数:响应参数的详细描述请参见表72。响应示例: - [更新PyTorchJob](https://support.huaweicloud.com/api-cci/cci_02_3166.md): 更新PyTorchJob。如下字段可被更新:metadata.labelsmetadata.annotationsspec.activeDeadlineSecondsspec.ttlSecondsAfterFinishedspec.cleanPodPolicyPATCH /apis/kubeflow.org/v1/namespaces/{ - [替换PyTorchJob](https://support.huaweicloud.com/api-cci/cci_02_3167.md): 替换PyTorchJob。如下字段可被替换:metadata.labelsmetadata.annotationsspec.activeDeadlineSecondsspec.ttlSecondsAfterFinishedspec.cleanPodPolicyPUT /apis/kubeflow.org/v1/namespaces/{na ## SDK参考 - [使用client-go访问CCI](https://support.huaweicloud.com/sdkreference-cci/cci_09_0001.md): 本节将介绍如何将CCI认证工具cci-iam-authenticator与client-go结合使用以调用API。下载安装及设置cci-iam-authenticator。详情请参考Installing client-go 。当前CCI服务开放的API对应的Kubernetes版本为1.19,根据Compatibility: client - [使用client-go访问CCI的CRD资源Network](https://support.huaweicloud.com/sdkreference-cci/cci_09_0002.md): 您可以前往开发体验馆Codelabs / Namespace生命周期代码示例(Go)下载相关代码,并在线调试。创建项目examples.com/cci-examples。项目依赖k8s.io/client-go、k8s.io/code-generator,以下版本可供参考k8s.io/client-go@kubernetes-1.15.0 - [使用kubernetes官方Python SDK访问CCI](https://support.huaweicloud.com/sdkreference-cci/cci_09_0003.md): 本节介绍如何将cci认证工具cci-iam-authenticator与kubernetes-client/python结合使用以调用API。下载安装及设置cci-iam-authenticator。您可参考Installation,下载安装kubernetes-client/python。当前CCI的kubernetes API对应社区 - [使用kubernetes官方Java SDK访问CCI](https://support.huaweicloud.com/sdkreference-cci/cci_09_0004.md): 本节将介绍如何将CCI认证工具cci-iam-authenticator与kubernetes-client/java结合使用以调用API。下载安装及设置cci-iam-authenticator。详情请参考Installation 。当前CCI服务开放的API对应的Kubernetes版本为1.19,根据Versioning-and-C ## 常见问题 - [CCI服务的开源第三方中包含的公网地址声明是什么](https://support.huaweicloud.com/cci_faq/cci_faq_0106.md): CCI服务提供 Serverless Container(无服务器容器)引擎,让用户无需创建和管理服务器集群即可直接运行容器。在CCI服务组件开源依赖中,包含三方开源依赖k8s.io/kubernetes、go.etcd.io/etcd,其中涉及"http://metadata.google.internal."、"https://www - [CCI服务的开源第三方中包含的公网地址声明是什么](https://support.huaweicloud.com/cci_faq/cci_faq_0106.md): CCI服务提供 Serverless Container(无服务器容器)引擎,让用户无需创建和管理服务器集群即可直接运行容器。在CCI服务组件开源依赖中,包含三方开源依赖k8s.io/kubernetes、go.etcd.io/etcd,其中涉及"http://metadata.google.internal."、"https://www - [什么是云容器实例?](https://support.huaweicloud.com/cci_faq/cci_faq_0001.md): 云容器实例(Cloud Container Instance,CCI)服务提供 Serverless Container(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。Serverless 是一种架构理念,是指不用创建和管理服务器、不用担心服务器的运行状态(服务器是否在工作等),只需动态申请应用需要的资源,把服务器留给 - [云容器实例和云容器引擎有什么区别?](https://support.huaweicloud.com/cci_faq/cci_faq_0041.md): 华为云提供高性能、高可用、高安全的企业级容器服务,通过CNCF官方认证的两种Kubernetes服务供用户选择,包括云容器引擎(CCE)与云容器实例(CCI)。云容器引擎(Cloud Container Engine,简称CCE)提供高度可扩展的、高性能的企业级Kubernetes集群,支持运行容器,提供了Kubernetes集群管理、容 - [什么是环境变量?](https://support.huaweicloud.com/cci_faq/cci_faq_0002.md): 环境变量是指容器运行环境中设定的一个变量。环境变量可以在工作负载部署后修改,为工作负载提供了极大的灵活性。在CCI中设置环境变量与Dockerfile中的ENV效果相同。 - [什么是服务?](https://support.huaweicloud.com/cci_faq/cci_faq_0003.md): 服务定义了实例及访问实例的途径,如单个稳定的IP地址和相应的DNS名称。为了解决组件间的通信问题,CCI使用服务名称代替IP地址,从而实现组件间的相互访问。在创建工作负载时会指定服务名称。 - [什么是mcore?](https://support.huaweicloud.com/cci_faq/cci_faq_0037.md): mcore是CPU使用单位,为千分之一个核。通常容器工作负载的CPU用量以mcore为单位衡量。 - [镜像、容器、工作负载的关系是什么?](https://support.huaweicloud.com/cci_faq/cci_faq_0005.md): 镜像、容器、工作负载之间的关系请参见下图。镜像、容器、工作负载的关系镜像:容器镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。容器:镜像(Image)和容器(Container)的关系,就 - [什么是安全容器?](https://support.huaweicloud.com/cci_faq/cci_faq_0009.md): 安全容器这个概念主要与普通容器进行比较的。和普通容器相比,它最主要的区别是每个容器(准确地说是pod)都运行在一个单独的微型虚拟机中,拥有独立的操作系统内核,以及虚拟化层的安全隔离。因为云容器实例采用的是共享多租集群,因此容器的安全隔离比用户独立拥有私有Kubernetes集群有更严格的要求。通过安全容器,不同租户之间的容器之间,内核、计 - [能否使用kubectl管理容器实例?](https://support.huaweicloud.com/cci_faq/cci_faq_0004.md): 支持。 - [CCI资源包中的核时怎么理解?](https://support.huaweicloud.com/cci_faq/cci_faq_0099.md): 1 核*时 = 1 * 3600(核*秒)1 核*时 :1核的CPU连续跑1个小时所用的资源量1 核*秒: 1核的CPU连续跑1秒所用的资源量案例一:假设用户的Deployment是2.5核的,连续运行了2个小时,那么它所消耗的资源量为:2.5 * 2 = 5(核*时)= 5* 3600(核*秒)。案例二:假设当前是730核*时,那么最大 - [什么是云容器实例?](https://support.huaweicloud.com/cci_faq/cci_faq_0001.md): 云容器实例(Cloud Container Instance,CCI)服务提供 Serverless Container(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。Serverless 是一种架构理念,是指不用创建和管理服务器、不用担心服务器的运行状态(服务器是否在工作等),只需动态申请应用需要的资源,把服务器留给 - [云容器实例和云容器引擎有什么区别?](https://support.huaweicloud.com/cci_faq/cci_faq_0041.md): 华为云提供高性能、高可用、高安全的企业级容器服务,通过CNCF官方认证的两种Kubernetes服务供用户选择,包括云容器引擎(CCE)与云容器实例(CCI)。云容器引擎(Cloud Container Engine,简称CCE)提供高度可扩展的、高性能的企业级Kubernetes集群,支持运行容器,提供了Kubernetes集群管理、容 - [什么是环境变量?](https://support.huaweicloud.com/cci_faq/cci_faq_0002.md): 环境变量是指容器运行环境中设定的一个变量。环境变量可以在工作负载部署后修改,为工作负载提供了极大的灵活性。在CCI中设置环境变量与Dockerfile中的ENV效果相同。 - [什么是服务?](https://support.huaweicloud.com/cci_faq/cci_faq_0003.md): 服务定义了实例及访问实例的途径,如单个稳定的IP地址和相应的DNS名称。为了解决组件间的通信问题,CCI使用服务名称代替IP地址,从而实现组件间的相互访问。在创建工作负载时会指定服务名称。 - [什么是mcore?](https://support.huaweicloud.com/cci_faq/cci_faq_0037.md): mcore是CPU使用单位,为千分之一个核。通常容器工作负载的CPU用量以mcore为单位衡量。 - [镜像、容器、工作负载的关系是什么?](https://support.huaweicloud.com/cci_faq/cci_faq_0005.md): 镜像、容器、工作负载之间的关系请参见下图。镜像、容器、工作负载的关系镜像:容器镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。容器:镜像(Image)和容器(Container)的关系,就 - [什么是安全容器?](https://support.huaweicloud.com/cci_faq/cci_faq_0009.md): 安全容器这个概念主要与普通容器进行比较的。和普通容器相比,它最主要的区别是每个容器(准确地说是pod)都运行在一个单独的微型虚拟机中,拥有独立的操作系统内核,以及虚拟化层的安全隔离。因为云容器实例采用的是共享多租集群,因此容器的安全隔离比用户独立拥有私有Kubernetes集群有更严格的要求。通过安全容器,不同租户之间的容器之间,内核、计 - [能否使用kubectl管理容器实例?](https://support.huaweicloud.com/cci_faq/cci_faq_0004.md): 支持。 - [CCI资源包中的核时怎么理解?](https://support.huaweicloud.com/cci_faq/cci_faq_0099.md): 1 核*时 = 1 * 3600(核*秒)1 核*时 :1核的CPU连续跑1个小时所用的资源量1 核*秒: 1核的CPU连续跑1秒所用的资源量案例一:假设用户的Deployment是2.5核的,连续运行了2个小时,那么它所消耗的资源量为:2.5 * 2 = 5(核*时)= 5* 3600(核*秒)。案例二:假设当前是730核*时,那么最大 - [定位思路](https://support.huaweicloud.com/cci_faq/cci_faq_0035.md): 当工作负载状态异常时,建议先查看事件。在CCI控制台中,单击左侧导航栏的工作负载,单击异常工作负载名称,进入详情页面,在Pod列表中,单击异常实例左边的,显示该实例的详情,单击事件页签。工作负载详情中,如果事件中提示重新拉取镜像失败,请参照如下方式来排查原因。Kubectl创建工作负载时未指定ImagePullSecret以创建一个名为N - [事件一:重新拉取镜像失败](https://support.huaweicloud.com/cci_faq/cci_faq_0033.md): 工作负载详情中,如果事件中提示重新拉取镜像失败,请参照如下方式来排查原因。以创建一个名为nginx的deployment为例,请排查yaml文件中是否存在imagePullSecrets字段(如下yaml示例中的加粗字段),表示pull镜像时的secret名称。需要使用容器镜像服务的镜像时,参数值固定为imagepull-secret。C - [事件二:重新启动容器失败](https://support.huaweicloud.com/cci_faq/cci_faq_0010.md): 工作负载详情中,如果事件中提示重新启动容器失败,请按照如下方式来排查原因。kubectl describe pod $name -n $namespace | grep "Error syncing pod failed to"kubectl logs $podName -n $namespace -c $containerName此种问 - [定位思路](https://support.huaweicloud.com/cci_faq/cci_faq_0035.md): 当工作负载状态异常时,建议先查看事件。在CCI控制台中,单击左侧导航栏的工作负载,单击异常工作负载名称,进入详情页面,在Pod列表中,单击异常实例左边的,显示该实例的详情,单击事件页签。工作负载详情中,如果事件中提示重新拉取镜像失败,请参照如下方式来排查原因。Kubectl创建工作负载时未指定ImagePullSecret以创建一个名为N - [事件一:重新拉取镜像失败](https://support.huaweicloud.com/cci_faq/cci_faq_0033.md): 工作负载详情中,如果事件中提示重新拉取镜像失败,请参照如下方式来排查原因。以创建一个名为nginx的deployment为例,请排查yaml文件中是否存在imagePullSecrets字段(如下yaml示例中的加粗字段),表示pull镜像时的secret名称。需要使用容器镜像服务的镜像时,参数值固定为imagepull-secret。C - [事件二:重新启动容器失败](https://support.huaweicloud.com/cci_faq/cci_faq_0010.md): 工作负载详情中,如果事件中提示重新启动容器失败,请按照如下方式来排查原因。kubectl describe pod $name -n $namespace | grep "Error syncing pod failed to"kubectl logs $podName -n $namespace -c $containerName此种问 - [为什么业务运行性能不达预期?](https://support.huaweicloud.com/cci_faq/cci_faq_0100.md): 由于CCI服务底层资源是多租户共享的,为了保障用户业务稳定,CCI服务底层对于磁盘IO等是有流控限制的。体现在容器内,主要影响是负载对根目录rootfs的读写、负载标准日志输出数据量都会受到一定限制。如果您的业务运行性能不达预期,可以从以下几个可能的原因进行排查:原因一:用户业务容器存在日志打印至标准输出,且日志量较大的场景。详情说明:C - [如何设置实例(Pod)数?](https://support.huaweicloud.com/cci_faq/cci_faq_0012.md): 创建负载的时候直接设置实例(Pod)数量。在负载详情页伸缩部分,选择手动伸缩,单击,调整实例数量。 - [如何查看资源配额?](https://support.huaweicloud.com/cci_faq/cci_faq_0104.md): 云容器实例对单个用户的资源数量和容量限定了配额,配额的详细信息请参见关于配额。系统进入“服务配额”页面。 - [如何设置应用的探针?](https://support.huaweicloud.com/cci_faq/cci_faq_0036.md): 云容器实例基于Kubernetes,提供了应用存活探针和应用业务探针,您可以在创建工作负载的时候设置。 - [弹性伸缩策略如何配置?](https://support.huaweicloud.com/cci_faq/cci_faq_0014.md): 云容器实例支持告警、定时、周期三种弹性伸缩策略。 - [使用sample镜像创建工作负载无法运行](https://support.huaweicloud.com/cci_faq/cci_faq_0013.md): 当您使用过容器镜像服务(SWR)但没有上传过镜像时,容器镜像服务会为您预置一个名为sample的镜像,该镜像无法运行,建议您直接使用开源镜像中心的镜像创建负载。 - [调用接口删除Deployment后怎么还能查看到Pod?](https://support.huaweicloud.com/cci_faq/cci_faq_0015.md): Deployment接口提供级联删除Pod的选项propagationPolicy,可以设置propagationPolicy的值为Orphan、Foreground和Background。 - [为什么exec进入容器后执行GPU相关的操作报错?](https://support.huaweicloud.com/cci_faq/cci_faq_0040.md): 问题现象:exec进入容器后执行GPU相关的操作(例如nvidia-smi、使用tensorflow运行GPU训练任务等)报错“cannot open shared object file: No such file or directory”。问题原因:安全容器内的cuda库位置为/usr/local/nvidia/lib64,您需要添 - [使用CCI集群,在容器内部执行systemctl命令,需要以特权模式(--privileged=true)来启动容器是否支持?](https://support.huaweicloud.com/cci_faq/cci_faq_0044.md): 目前,CCI尚不支持特权模式。特权容器主要场景是让容器共享、操作宿主机的设备,CCI是基于kata的hypervisor虚拟化级别隔离,所以宿主机的资源对容器完全隔离。其他场景,推荐通过k8s原生SecurityContext中更细粒度的权限策略来控制,按需使用,保障客户容器运行环境安全可靠。 - [Intel oneAPI Toolkit运行VASP任务,为什么概率性运行失败?](https://support.huaweicloud.com/cci_faq/cci_faq_0110.md): Intel oneAPI Toolkit(Intel并行计算平台)运行的VASP(用于电子结构计算和量子力学-分子动力学模拟)任务对CPU硬件版本有深度依赖,在小规格Pod场景下概率性运行失败,建议切换oneAPI版本或使用4核以上Pod运行。 - [容器实例被驱逐](https://support.huaweicloud.com/cci_faq/cci_faq_0098.md): 如果节点超负荷运行,无法承受的话,系统会自动清理一些任务。建议根据实际使用量来申请资源。 - [为什么界面不显示工作负载终端?](https://support.huaweicloud.com/cci_faq/cci_faq_0097.md): 工作负载终端,显示异常。请先排除欠费因素。 - [删除工作负载后,会持续扣费。](https://support.huaweicloud.com/cci_faq/cci_faq_0096.md): 创建的工作负载,在删除后,“我的资源”中显示依然存在,且会持续扣费,建议您确认下该命名空间下是否还有Pod在运行,如需停用,请删除Pod,后台会停止计费。 - [为什么业务运行性能不达预期?](https://support.huaweicloud.com/cci_faq/cci_faq_0100.md): 由于CCI服务底层资源是多租户共享的,为了保障用户业务稳定,CCI服务底层对于磁盘IO等是有流控限制的。体现在容器内,主要影响是负载对根目录rootfs的读写、负载标准日志输出数据量都会受到一定限制。如果您的业务运行性能不达预期,可以从以下几个可能的原因进行排查:原因一:用户业务容器存在日志打印至标准输出,且日志量较大的场景。详情说明:C - [如何设置实例(Pod)数?](https://support.huaweicloud.com/cci_faq/cci_faq_0012.md): 创建负载的时候直接设置实例(Pod)数量。在负载详情页伸缩部分,选择手动伸缩,单击,调整实例数量。 - [如何查看资源配额?](https://support.huaweicloud.com/cci_faq/cci_faq_0104.md): 云容器实例对单个用户的资源数量和容量限定了配额,配额的详细信息请参见关于配额。系统进入“服务配额”页面。 - [如何设置应用的探针?](https://support.huaweicloud.com/cci_faq/cci_faq_0036.md): 云容器实例基于Kubernetes,提供了应用存活探针和应用业务探针,您可以在创建工作负载的时候设置。 - [弹性伸缩策略如何配置?](https://support.huaweicloud.com/cci_faq/cci_faq_0014.md): 云容器实例支持告警、定时、周期三种弹性伸缩策略。 - [使用sample镜像创建工作负载无法运行](https://support.huaweicloud.com/cci_faq/cci_faq_0013.md): 当您使用过容器镜像服务(SWR)但没有上传过镜像时,容器镜像服务会为您预置一个名为sample的镜像,该镜像无法运行,建议您直接使用开源镜像中心的镜像创建负载。 - [调用接口删除Deployment后怎么还能查看到Pod?](https://support.huaweicloud.com/cci_faq/cci_faq_0015.md): Deployment接口提供级联删除Pod的选项propagationPolicy,可以设置propagationPolicy的值为Orphan、Foreground和Background。 - [为什么exec进入容器后执行GPU相关的操作报错?](https://support.huaweicloud.com/cci_faq/cci_faq_0040.md): 问题现象:exec进入容器后执行GPU相关的操作(例如nvidia-smi、使用tensorflow运行GPU训练任务等)报错“cannot open shared object file: No such file or directory”。问题原因:安全容器内的cuda库位置为/usr/local/nvidia/lib64,您需要添 - [使用CCI集群,在容器内部执行systemctl命令,需要以特权模式(--privileged=true)来启动容器是否支持?](https://support.huaweicloud.com/cci_faq/cci_faq_0044.md): 目前,CCI尚不支持特权模式。特权容器主要场景是让容器共享、操作宿主机的设备,CCI是基于kata的hypervisor虚拟化级别隔离,所以宿主机的资源对容器完全隔离。其他场景,推荐通过k8s原生SecurityContext中更细粒度的权限策略来控制,按需使用,保障客户容器运行环境安全可靠。 - [Intel oneAPI Toolkit运行VASP任务,为什么概率性运行失败?](https://support.huaweicloud.com/cci_faq/cci_faq_0110.md): Intel oneAPI Toolkit(Intel并行计算平台)运行的VASP(用于电子结构计算和量子力学-分子动力学模拟)任务对CPU硬件版本有深度依赖,在小规格Pod场景下概率性运行失败,建议切换oneAPI版本或使用4核以上Pod运行。 - [容器实例被驱逐](https://support.huaweicloud.com/cci_faq/cci_faq_0098.md): 如果节点超负荷运行,无法承受的话,系统会自动清理一些任务。建议根据实际使用量来申请资源。 - [为什么界面不显示工作负载终端?](https://support.huaweicloud.com/cci_faq/cci_faq_0097.md): 工作负载终端,显示异常。请先排除欠费因素。 - [删除工作负载后,会持续扣费。](https://support.huaweicloud.com/cci_faq/cci_faq_0096.md): 创建的工作负载,在删除后,“我的资源”中显示依然存在,且会持续扣费,建议您确认下该命名空间下是否还有Pod在运行,如需停用,请删除Pod,后台会停止计费。 - [公有镜像是否可以导出?](https://support.huaweicloud.com/cci_faq/cci_faq_0017.md): 您无法导出或下载其他用户上传的镜像。 - [如何制作容器镜像?](https://support.huaweicloud.com/cci_faq/cci_faq_0018.md): 本节指导用户通过Dockerfile定制一个简单的Web工作负载程序的容器镜像。如果使用官方的Nginx镜像来创建容器工作负载,在浏览器访问时则会看到默认的Nginx欢迎页面,本节以Nginx镜像为例,修改Nginx镜像的欢迎页面,定制一个新的镜像,将欢迎页面改为Hello, CCI!。mkdir mynginxcd mynginxtou - [如何上传镜像?](https://support.huaweicloud.com/cci_faq/cci_faq_0019.md): 镜像的管理是由容器镜像服务(SoftWare Repository)提供的,当前容器镜像服务提供如下两种上传镜像的方法:客户端上传镜像页面上传镜像 - [CCI是否提供基础容器镜像的下载服务?](https://support.huaweicloud.com/cci_faq/cci_faq_0020.md): CCI中的镜像仓库是由容器镜像服务(SoftWare Repository)提供,容器镜像服务提供基础容器镜像的下载。 - [CCI Administrator有上传镜像包的权限吗?](https://support.huaweicloud.com/cci_faq/cci_faq_0021.md): 当前在CCI中上传镜像使用的是华为云的SWR容器镜像服务。您还需要为账号添加Tenant Administrator权限。 - [CCI 上传镜像包需要开通什么权限?](https://support.huaweicloud.com/cci_faq/cci_faq_0101.md): 当前在CCI中上传镜像使用的是华为云的SWR容器镜像服务。需要为账号添加Tenant Administrator权限。SWR权限的详细内容可参考SWR权限。上传镜像的具体步骤可参考客户端上传镜像或页面上传镜像。 - [CCI上传镜像时提示需要认证怎么办?](https://support.huaweicloud.com/cci_faq/cci_faq_0022.md): 当前在CCI中上传镜像使用的是SWR容器镜像服务。使用SWR上传镜像,您需要先获取访问权限,请参见下图。如果需了解上传镜像详细步骤,请参见客户端上传镜像。 - [公有镜像是否可以导出?](https://support.huaweicloud.com/cci_faq/cci_faq_0017.md): 您无法导出或下载其他用户上传的镜像。 - [如何制作容器镜像?](https://support.huaweicloud.com/cci_faq/cci_faq_0018.md): 本节指导用户通过Dockerfile定制一个简单的Web工作负载程序的容器镜像。如果使用官方的Nginx镜像来创建容器工作负载,在浏览器访问时则会看到默认的Nginx欢迎页面,本节以Nginx镜像为例,修改Nginx镜像的欢迎页面,定制一个新的镜像,将欢迎页面改为Hello, CCI!。mkdir mynginxcd mynginxtou - [如何上传镜像?](https://support.huaweicloud.com/cci_faq/cci_faq_0019.md): 镜像的管理是由容器镜像服务(SoftWare Repository)提供的,当前容器镜像服务提供如下两种上传镜像的方法:客户端上传镜像页面上传镜像 - [CCI是否提供基础容器镜像的下载服务?](https://support.huaweicloud.com/cci_faq/cci_faq_0020.md): CCI中的镜像仓库是由容器镜像服务(SoftWare Repository)提供,容器镜像服务提供基础容器镜像的下载。 - [CCI Administrator有上传镜像包的权限吗?](https://support.huaweicloud.com/cci_faq/cci_faq_0021.md): 当前在CCI中上传镜像使用的是华为云的SWR容器镜像服务。您还需要为账号添加Tenant Administrator权限。 - [CCI 上传镜像包需要开通什么权限?](https://support.huaweicloud.com/cci_faq/cci_faq_0101.md): 当前在CCI中上传镜像使用的是华为云的SWR容器镜像服务。需要为账号添加Tenant Administrator权限。SWR权限的详细内容可参考SWR权限。上传镜像的具体步骤可参考客户端上传镜像或页面上传镜像。 - [CCI上传镜像时提示需要认证怎么办?](https://support.huaweicloud.com/cci_faq/cci_faq_0022.md): 当前在CCI中上传镜像使用的是SWR容器镜像服务。使用SWR上传镜像,您需要先获取访问权限,请参见下图。如果需了解上传镜像详细步骤,请参见客户端上传镜像。 - [如何查看虚拟私有云VPC的网段?](https://support.huaweicloud.com/cci_faq/cci_faq_0024.md): 在虚拟私有云页面,可查看虚拟私有云的名称/ID和VPC网段。用户可以调整已创建的VPC或通过重新创建VPC调整网段。 - [CCI是否支持负载均衡?](https://support.huaweicloud.com/cci_faq/cci_faq_0025.md): CCI支持负载均衡,当前在CCI创建工作负载的访问设置页面中,内网访问和公网访问中的配置都是负载均衡方式。通常所说的负载均衡一般指的是公网负载均衡,CCI对接负载均衡服务。通过CCI创建工作负载时,在设置访问设置的页面,可以根据需要选择内网访问和外网访问,然后配置负载均衡。 - [CCI如何配置DNS服务?](https://support.huaweicloud.com/cci_faq/cci_faq_0026.md): 如果用户负载需要使用k8s内部域名解析,则需要安装coredns插件。此时pod的dnsPolicy需要设置为ClusterFirst。在插件市场界面可以单击,将coredns插件安装在指定的namesapce下。如果用户负载不需要k8s内部域名解析服务,但是需要使用域名解析服务,此时pod的dnsPolicy需要设置为Default。除 - [CCI是否支持高速IB(Infiniband)网络?](https://support.huaweicloud.com/cci_faq/cci_faq_0027.md): 不支持。 - [如何从公网访问容器?](https://support.huaweicloud.com/cci_faq/cci_faq_0028.md): 负载支持绑定ELB。用户可以给负载绑定ELB实例,通过ELB的地址从外部访问容器负载。 - [如何从容器访问公网?](https://support.huaweicloud.com/cci_faq/cci_faq_0006.md): 您可以使用公有云平台提供的NAT网关服务。该服务能够为虚拟私有云内的容器提供网络地址转换(Network Address Translation)服务,使虚拟私有云内的容器可以共享使用弹性公网IP访问Internet。通过NAT网关的SNAT功能,可以直接访问Internet,提供超大并发数的连接服务,适用于请求量大、连接数多的服务。 - [如何处理公网无法访问负载?](https://support.huaweicloud.com/cci_faq/cci_faq_0007.md): 公网能正常访问的前提是负载已处于运行中状态,如果您的负载处于未就绪或异常状态,公网访问将无法正常使用。从负载开始创建到公网可以正常访问可需要1分钟到3分钟的时间,在此时间内网络路由尚未完成配置,请稍作等待。负载创建3分钟以后仍然无法访问。在工作负载 -> 查看您创建的负载详情-> 选择访问配置 -> 选择访问事件,查看访问事件,查看是否有 - [负载访问504问题定位思路](https://support.huaweicloud.com/cci_faq/cci_faq_0029.md): 负载访问504问题一般是因为ELB实例绑定的Port到后端 CCI 负载Pod的安全组没有放通。查看CCI负载Pod使用的安全组,确保安全组规则放通ELB实例绑定的Port。Pod绑定的安全组可以通过查看负载对应Network获得,调用Network接口,响应里面metadata.annotations中的network.alpha.ku - [如何解决Connection timed out问题?](https://support.huaweicloud.com/cci_faq/cci_faq_0043.md): 问题现象:CCI实例创建正常,使用python django smtp服务发送邮件时,一直提示“[Errno 110] Connection timed out”错误。问题原因:客户仅购买了ELB服务未购买NAT网关服务,故只能从外部访问容器。购买NAT网关后,才可以从容器内部访问外部网络。为了确保良好的网络安全环境,华为云对25端口对外 - [如何查看虚拟私有云VPC的网段?](https://support.huaweicloud.com/cci_faq/cci_faq_0024.md): 在虚拟私有云页面,可查看虚拟私有云的名称/ID和VPC网段。用户可以调整已创建的VPC或通过重新创建VPC调整网段。 - [CCI是否支持负载均衡?](https://support.huaweicloud.com/cci_faq/cci_faq_0025.md): CCI支持负载均衡,当前在CCI创建工作负载的访问设置页面中,内网访问和公网访问中的配置都是负载均衡方式。通常所说的负载均衡一般指的是公网负载均衡,CCI对接负载均衡服务。通过CCI创建工作负载时,在设置访问设置的页面,可以根据需要选择内网访问和外网访问,然后配置负载均衡。 - [CCI如何配置DNS服务?](https://support.huaweicloud.com/cci_faq/cci_faq_0026.md): 如果用户负载需要使用k8s内部域名解析,则需要安装coredns插件。此时pod的dnsPolicy需要设置为ClusterFirst。在插件市场界面可以单击,将coredns插件安装在指定的namesapce下。如果用户负载不需要k8s内部域名解析服务,但是需要使用域名解析服务,此时pod的dnsPolicy需要设置为Default。除 - [CCI是否支持高速IB(Infiniband)网络?](https://support.huaweicloud.com/cci_faq/cci_faq_0027.md): 不支持。 - [如何从公网访问容器?](https://support.huaweicloud.com/cci_faq/cci_faq_0028.md): 负载支持绑定ELB。用户可以给负载绑定ELB实例,通过ELB的地址从外部访问容器负载。 - [如何从容器访问公网?](https://support.huaweicloud.com/cci_faq/cci_faq_0006.md): 您可以使用公有云平台提供的NAT网关服务。该服务能够为虚拟私有云内的容器提供网络地址转换(Network Address Translation)服务,使虚拟私有云内的容器可以共享使用弹性公网IP访问Internet。通过NAT网关的SNAT功能,可以直接访问Internet,提供超大并发数的连接服务,适用于请求量大、连接数多的服务。 - [如何处理公网无法访问负载?](https://support.huaweicloud.com/cci_faq/cci_faq_0007.md): 公网能正常访问的前提是负载已处于运行中状态,如果您的负载处于未就绪或异常状态,公网访问将无法正常使用。从负载开始创建到公网可以正常访问可需要1分钟到3分钟的时间,在此时间内网络路由尚未完成配置,请稍作等待。负载创建3分钟以后仍然无法访问。在工作负载 -> 查看您创建的负载详情-> 选择访问配置 -> 选择访问事件,查看访问事件,查看是否有 - [负载访问504问题定位思路](https://support.huaweicloud.com/cci_faq/cci_faq_0029.md): 负载访问504问题一般是因为ELB实例绑定的Port到后端 CCI 负载Pod的安全组没有放通。查看CCI负载Pod使用的安全组,确保安全组规则放通ELB实例绑定的Port。Pod绑定的安全组可以通过查看负载对应Network获得,调用Network接口,响应里面metadata.annotations中的network.alpha.ku - [如何解决Connection timed out问题?](https://support.huaweicloud.com/cci_faq/cci_faq_0043.md): 问题现象:CCI实例创建正常,使用python django smtp服务发送邮件时,一直提示“[Errno 110] Connection timed out”错误。问题原因:客户仅购买了ELB服务未购买NAT网关服务,故只能从外部访问容器。购买NAT网关后,才可以从容器内部访问外部网络。为了确保良好的网络安全环境,华为云对25端口对外 - [CCI支持的云存储有哪些,哪种存储需要设置备份?](https://support.huaweicloud.com/cci_faq/cci_faq_0031.md): 当前CCI支持使用如下几种云存储:云硬盘(EVS)文件存储(SFS)极速文件存储(SFS Turbo)对象存储(OBS)其中云硬盘存储需要人工配置备份策略,详情请参见云硬盘备份管理。 - [如何使用云存储?](https://support.huaweicloud.com/cci_faq/cci_faq_0032.md): 如果您使用控制台界面创建,请参见存储概述。您还可以使用kubectl创建云存储,具体请参见使用PersistentVolumeClaim申请持久化存储。 - [如果不挂载云存储的话,容器运行产生的数据存储在哪里?](https://support.huaweicloud.com/cci_faq/cci_faq_0008.md): 如果没有挂载EVS等磁盘,应用数据存储在容器的物理机磁盘,每个Pod存储空间限制为CPU物理机磁盘为20G,GPU物理机磁盘为20G,如果为专属节点可根据客户需求进行调整。如果您的数据存储需要更大的空间,可以使用PVC挂载EVS到容器上,详情请参见存储概述。为了确保数据的安全性,在创建容器时容器引擎会从devicemapper获取虚拟化盘 - [job的pod已经执行完成的情况下,为什么依然有实例在挂卷等事件,并且事件信息是失败的?](https://support.huaweicloud.com/cci_faq/cci_faq_0039.md): 问题现象:job的Pod已经执行完成的情况下,依然有实例在挂卷等事件,并且事件信息是失败的。问题原因:各种类型的Pod(Deployment/StatefulSet/Job/CronJob)在Node上启动时:由kubelet针对该Pod创建podWorker(独立协程)负责检测Pod与关联volume的挂载情况:每隔0.3s检测当前Po - [使用OBS存储挂载失败](https://support.huaweicloud.com/cci_faq/cci_faq_0072.md): 问题现象:问题原因:上传的AK/SK失效。解决方法:重新上传有效的AK/SK。 - [CCI支持的云存储有哪些,哪种存储需要设置备份?](https://support.huaweicloud.com/cci_faq/cci_faq_0031.md): 当前CCI支持使用如下几种云存储:云硬盘(EVS)文件存储(SFS)极速文件存储(SFS Turbo)对象存储(OBS)其中云硬盘存储需要人工配置备份策略,详情请参见云硬盘备份管理。 - [如何使用云存储?](https://support.huaweicloud.com/cci_faq/cci_faq_0032.md): 如果您使用控制台界面创建,请参见存储概述。您还可以使用kubectl创建云存储,具体请参见使用PersistentVolumeClaim申请持久化存储。 - [如果不挂载云存储的话,容器运行产生的数据存储在哪里?](https://support.huaweicloud.com/cci_faq/cci_faq_0008.md): 如果没有挂载EVS等磁盘,应用数据存储在容器的物理机磁盘,每个Pod存储空间限制为CPU物理机磁盘为20G,GPU物理机磁盘为20G,如果为专属节点可根据客户需求进行调整。如果您的数据存储需要更大的空间,可以使用PVC挂载EVS到容器上,详情请参见存储概述。为了确保数据的安全性,在创建容器时容器引擎会从devicemapper获取虚拟化盘 - [job的pod已经执行完成的情况下,为什么依然有实例在挂卷等事件,并且事件信息是失败的?](https://support.huaweicloud.com/cci_faq/cci_faq_0039.md): 问题现象:job的Pod已经执行完成的情况下,依然有实例在挂卷等事件,并且事件信息是失败的。问题原因:各种类型的Pod(Deployment/StatefulSet/Job/CronJob)在Node上启动时:由kubelet针对该Pod创建podWorker(独立协程)负责检测Pod与关联volume的挂载情况:每隔0.3s检测当前Po - [使用OBS存储挂载失败](https://support.huaweicloud.com/cci_faq/cci_faq_0072.md): 问题现象:问题原因:上传的AK/SK失效。解决方法:重新上传有效的AK/SK。 - [日志出现重复/丢失的原因](https://support.huaweicloud.com/cci_faq/cci_faq_0108.md): 日志出现重复原因一:日志文件转储,且转储文件仍被匹配到。详细说明:如果配置日志路径文件名中有通配符,如配置为/tmp/*.log,当/tmp/test.log文件转储为/tmp/test.001.log后,因仍被通配规则匹配到,会被视为新文件,则会被重新采集。日志出现丢失原因一:日志文件的存在时间小于5秒。详细说明:CCI感知日志文件的周 - [日志出现重复/丢失的原因](https://support.huaweicloud.com/cci_faq/cci_faq_0108.md): 日志出现重复原因一:日志文件转储,且转储文件仍被匹配到。详细说明:如果配置日志路径文件名中有通配符,如配置为/tmp/*.log,当/tmp/test.log文件转储为/tmp/test.001.log后,因仍被通配规则匹配到,会被视为新文件,则会被重新采集。日志出现丢失原因一:日志文件的存在时间小于5秒。详细说明:CCI感知日志文件的周 - [账户有余额,仍提示欠费](https://support.huaweicloud.com/cci_faq/cci_faq_0102.md): 问题现象:账户重置后有余额,在CCI中新建命名空间仍然提示欠费,无法操作。解决方法:退出账号,重新登录或清理浏览器缓存。 - [资源无法删除](https://support.huaweicloud.com/cci_faq/cci_faq_0103.md): 问题现象:资源无法删除。解决方案:当前账号欠费,账号欠费会导致部分资源权限受限,需要补交欠费后再删除相关资源。 - [账户有余额,仍提示欠费](https://support.huaweicloud.com/cci_faq/cci_faq_0102.md): 问题现象:账户重置后有余额,在CCI中新建命名空间仍然提示欠费,无法操作。解决方法:退出账号,重新登录或清理浏览器缓存。 - [资源无法删除](https://support.huaweicloud.com/cci_faq/cci_faq_0103.md): 问题现象:资源无法删除。解决方案:当前账号欠费,账号欠费会导致部分资源权限受限,需要补交欠费后再删除相关资源。