检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Service 直接访问Pod的问题 负载创建完成后,如何访问负载呢?访问负载实际上就是访问Pod,但是直接访问Pod会有如下几个问题: Pod会随时被Deployment这样的控制器删除重建,那访问Pod的结果就会变得不可预知。 Pod的IP地址是在Pod启动后才被分配,在启动前并不知道
什么是云容器实例 什么是云容器实例 云容器实例(Cloud Container Instance,CCI)服务提供Serverless Container(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。 Serverless是一种架构理念,是指不用创建和管理服务器
CCI应用进行优雅滚动升级 应用场景 用户在CCI中部署工作负载时,应用发布成了LoadBalance类型的Service或Ingress且对接的独享型ELB,经过ELB的访问流量支持直通到容器中;当应用进行滚动升级或者弹性扩缩容,通过配置容器探针,最短就绪时间等可以做到优雅升级,
调用API创建负载 云容器实例原生支持Kubernetes API,相比从控制台创建负载,使用API的粒度更细一些。 Kubernetes中,运行容器的最小资源单位是Pod,一个Pod封装一个或多个容器、存储资源、一个独立的网络IP等。实际使用中很少直接创建Pod,而是使用Kubernetes
内网访问 内网访问有如下两种情况: 使用Service方式访问:该方式适合CCI中同一个命名空间中的负载相互访问。 使用私网ELB访问:该方式适合云服务内部资源(云容器实例以外的资源,如ECS等)且与负载在同一个VPC内互相访问,另外在同一个VPC不同命名空间的负载也可以选择此种方式
伸缩负载 本节主要讲解工作负载弹性伸缩和手动伸缩的配置方式。请根据实际业务选择。 弹性伸缩:支持告警、定时、周期三种策略。配置完成后可基于资源变化、固定时间、固定周期自动触发实例的增减。 手动伸缩:配置完成后立即触发实例的增减。 对于挂载了云硬盘存储卷的Pod,实例缩容时不会同步删除云硬盘
升级负载 负载创建成功后,可以对负载更新和升级。当前支持“滚动升级”和“替换升级”两种方式。 滚动升级:将逐步用新版本的实例替换旧版本的实例,升级的过程中,业务流量会同时负载均衡分布到新老的实例上,因此业务不会中断。 替换升级:将先把您工作负载的老版本实例删除,再安装指定的新版本,
Ingress 上一节中讲了创建LoadBalancer类型的Service,使用ELB实例从外部访问Pod。 但是Service是基于四层TCP和UDP协议转发的,Ingress可以基于七层的HTTP和HTTPS协议转发,可以通过域名和路径做到更细粒度的划分,如下图所示。 图1
与其他服务的关系 云容器实例需要与其他云服务协同工作,云容器实例需要获取如下云服务资源的权限。 图1 云容器实例与其他服务的关系 容器镜像服务 容器镜像服务(Software Repository for Container,SWR)是一种支持容器镜像全生命周期管理的服务, 提供简单易用
EIP概述 为方便用户在CCI内直接为Pod关联弹性公网IP,只需在创建Pod时配置annotation,弹性公网IP就会随Pod自动绑定该Pod。 限制与约束 一个Pod只能绑定一个EIP,一个EIP只能被一个Pod绑定。 创建Pod时,可指定annotation属性,创建完成后
EIPPool概述 为方便用户在CCI内直接为Pod关联EIP,CCI新增了名为EIPPool的自定义资源对象,通过EIPPool资源对象,用户可以为Pod自动绑定EIP。EIPPool对象支持两种EIP资源管理方式:动态管理EIP资源(EIP资源由CCI自动创建)、静态管理EIP
应用场景 大数据、AI计算 当前主流的大数据、AI训练和推理等应用(如Tensorflow、Caffe)均采用容器化方式运行,并需要大量GPU、高性能网络和存储等硬件加速能力,并且都是任务型计算,需要快速申请大量资源,计算任务完成后快速释放。 云容器实例提供如下特性,能够很好的支持这类场景
命名空间 使用场景 命名空间(Namespace)是用于在多个用户间划分资源的一种方法,特别适用于拥有多个团队或项目的用户。当项目和人员数量较多时,可以根据项目属性(如生产、测试、开发等)创建不同的命名空间,以实现部分环境的隔离。 约束与限制 一个账号在同一个区域支持创建5个命名空间
请求数据结构(废弃) 表1 v1.PodTemplate数据结构说明 参数 是否必选 参数类型 描述 kind Yes String A string value representing the REST resource this object represents. Servers
查询Deployment状态 功能介绍 查询Deployment的状态。 调用方法 请参见如何调用API。 URI GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status 表1 路径参数 参数 是否必选
为Pod动态创建EIP EIP随Pod创建 创建Pod时,填写pod-with-eip的annotation后,EIP会随Pod自动创建并绑定至该Pod。 以下示例创建一个名为nginx的无状态负载,EIP将随Pod自动创建并绑定至Pod,关键参数含义见表1。 创建独占带宽类型的Deployment
创建动态EIPPool 动态EIPPool,即根据用户在EIPPool中填写的配置,动态创建底层的EIP资源,同时在CCI命名空间下创建相应的EIP对象。 以下示例创建了一个名为eippool-demo1的动态EIPPool,具体字段含义见表1。 动态创建独占带宽类型的EIPPool
查询Deployment 功能介绍 查询Deployment的详细信息。 调用方法 请参见如何调用API。 URI GET /apis/apps/v1/namespaces/{namespace}/deployments/{name} 表1 路径参数 参数 是否必选 参数类型 描述
创建Deployment 功能介绍 创建一个Deployment。 调用方法 请参见如何调用API。 URI POST /apis/apps/v1/namespaces/{namespace}/deployments 表1 路径参数 参数 是否必选 参数类型 描述 namespace
创建Job 功能介绍 创建Job。 Note: Kubernetes 只有在 Pod 结束(Terminated) 的时候才会发送 preStop 事件, 这意味着在 Pod 完成(Completed) 时 preStop 的事件处理逻辑不会被触发。这个限制在 issue #55087