命名空间(namespace)是一种在多个用户之间划分资源的方法。适用于用户中存在多个团队或项目的情况。
当前云容器实例提供“通用计算型”和“GPU加速型”两种类型的资源,创建命名空间时需要选择资源类型,后续创建的负载中容器就运行在此类型的集群上。
●通用计算型:支持创建含CPU资源的容器实例,适用于通用计算场景。
●GPU加速型:支持创建含GPU资源的容器实例,适用于深度学习、科学计算、视频处理等场景。
说明:
●目前,“华南-广州”、“华东-上海二”、“西南-贵阳一”和“华北-乌兰察布一”区域暂不支持“GPU加速型”资源。
●一个帐号在一个区域,目前只能使用5个命名空间。
●通用计算型和GPU加速型支持X86镜像。
命名空间与网络的关系
从网络角度,命名空间对应一个虚拟私有云(VPC)中一个子网,如图1所示,在创建命名空间时会关联已有VPC或创建一个新的VPC,并在VPC下创建一个子网。后续在该命名空间下创建的容器及其他资源都会在对应的VPC及子网之内。
通常情况下,如果您在同一个VPC下还会使用其他服务的资源,您需要考虑您的网络规划,如子网网段划分、IP数量规划等,确保有可用的网络资源。
图1 命名空间与VPC子网的关系
哪些情况下适合使用多个命名空间
因为namespace可以实现部分的环境隔离。当你的项目和人员众多的时候可以考虑根据项目属性,例如生产、测试、开发划分不同的namespace。
创建命名空间
1.登录云容器实例管理控制台,左侧导航栏中选择“命名空间”。
2.在对应类型的命名空间下单击“创建”。
3.填写命名空间名称。
说明:命名空间名称在云容器实例中需全局唯一。
4.设置RBAC权限。
开启RBAC鉴权后,用户使用命名空间下的资源将受到RBAC权限控制,详情请参见命名空间权限。
5.选择企业项目。CCI中每个命名空间对应一个企业项目,一个企业项目下可以有多个命名空间。
说明:
●未开通企业管理的用户页面无此参数,无需进行配置。如需开通企业管理,请参见开通企业中心功能。使用IAM用户的注意事项请参见(可选)上传镜像。
●您开通了企业项目后,自动创建的网络、存储资源与命名空间在同一企业项目中。您在企业项目页面进行资源迁移时,建议一同迁移相关资源。 例如命名空间从项目1迁移至项目2,网络和存储资源也需要一同迁移,否则可能会导致该命名空间下的负载异常。
6.设置VPC。
选择使用已有VPC或新建VPC,新建VPC需要填写VPC网段,建议使用网段:10.0.0.0/8~22,172.16.0.0/12~22,192.168.0.0/16~22。
须知:
此处VPC和子网的网段不能为10.247.0.0/16,10.247.0.0/16是云容器实例预留给负载访问的网段。如果您使用此网段,后续可能会造成IP冲突,导致负载无法创建或服务不可用;如果您不需要通过负载访问,而是直接访问Pod,则可以使用此网段。
命名空间创建完成后,在“网络管理 > 容器网络”中可查看到VPC和子网信息。
7.设置子网网段。
您需要关注子网的可用IP数,确保有足够数量的可用IP,如果没有可用IP,则会导致负载创建失败。
图2 子网设置
说明:
●创建的namespace会在设置的子网中预热部分IP,默认个数为10个。
●在高级设置中可以设置预热的个数。
●创建namespace后,由于预热了部分IP,会影响设置的subnet和VPC的删除,需要删除namespace之后才能正常删除对应的subnet和VPC。
8.高级设置。
每个命名空间下都提供了一个IP池,申请IP需要一段时间,如果需要快速创建负载,减少IP的申请时间,可通过自定义资源池大小来实现。
例如,某业务线日常的负载数为200,当达到流量高峰时,IP资源池会自动扩容,瞬间将IP资源池扩容到500(IP资源池大小),同时会在回收间隔23h(IP资源池回收间隔)之后,进行回收超过资源池大小的部分即(500-200)个。
图3 高级设置
使用kubectl创建命名空间
使用kubectl创建命名空间请参见Namespace和Network。
删除命名空间
须知:删除命名空间将会删除该命名空间相关的所有数据资源(工作负载、ConfigMap、Secret、SSL证书等)。
1.登录云容器实例管理控制台,左侧导航栏中选择“命名空间”,单击要删除的命名空间,进入命名空间详情页面。
2.单击右上角“删除”,并输入DELETE,然后单击“确认”。
说明:如需删除VPC、Subnet请前往虚拟私有云。
●预热IP资源池大小(个):为每个命名空间预热一个IP池,用来加速负载创建。预热IP资源池的大小不能超过500个。
●预热IP资源池回收间隔(h):IP资源池弹性扩容出来的空闲IP资源, 在一定时间内可进行回收。
●容器网络预准备:容器启动时,可能会没有网络连接。如果容器在启动时,需要立即连接网络, 可开启此处的“容器网络预准备”开关。
9.单击“创建”。
创建完成后,可以在命名空间详情中看到VPC、子网等信息。
为什么选择华为云云容器实例CCI
-
无服务器容器
业界领先的Serverless Container架构,用户无需感知集群和服务器,直接部署容器应用,大幅提升容器易用性
-
秒级计费
支持以微核为粒度自定义容器规格,以秒为单位计算容器费用,按实际使用量付费,大幅降低用户IT投入成本
-
安全快速
采用Kata Container安全容器技术,提供虚拟机级别的安全隔离能力,同时兼具容器的启停速度
-
开放兼容
原生支持Kubernetes、Kata Container和Docker接口,支持Docker镜像格式,兼容开源社区生态
CCI官网功能描述
-
支持用户自定义弹性伸缩策略,实现秒级弹性扩缩容
支持用户自定义弹性伸缩策略,实现秒级弹性扩缩容
-
提供任务负载、无状态负载的运行时托管,保障应用稳定运行
提供任务负载、无状态负载的运行时托管,保障应用稳定运行
-
提供X86、鲲鹏、GPU、昇腾等多种丰富的算力资源,极大丰富客户业务的算力资源选择
提供X86、鲲鹏、GPU、昇腾等多种丰富的算力资源,极大丰富客户业务的算力资源选择
-
支持一个负载对应多个Pod副本,保障用户业务高可靠
支持一个负载对应多个Pod副本,保障用户业务高可靠
-
提供容器健康状态检查和容器的运行时指标的全方位实时监控
提供容器健康状态检查和容器的运行时指标的全方位实时监控
-
支持华为云EVS、OBS和SFS云存储,保障业务数据持久化存储
支持华为云EVS、OBS和SFS云存储,保障业务数据持久化存储
什么是CCI相关文档
-
本节将以创建一个名称为2048的静态web应用(2048游戏),并将应用部署在云容器实例上运行为例,帮助您学习如何使用云容器实例。
本节将以创建一个名称为2048的静态web应用(2048游戏),并将应用部署在云容器实例上运行为例,帮助您学习如何使用云容器实例。
-
云容器实例提供了查看CPU/内存、GPU/显存的界面,您只需要在无状态负载、任务、定时任务中Pod列表的“监控”Tab下即可查看资源使用率。
云容器实例提供了查看CPU/内存、GPU/显存的界面,您只需要在无状态负载、任务、定时任务中Pod列表的“监控”Tab下即可查看资源使用率。
-
云容器实例支持多种类型的持久化存储,满足您不同场景下的存储需求。创建工作负载时,可以使用以下类型的存储。
云容器实例支持多种类型的持久化存储,满足您不同场景下的存储需求。创建工作负载时,可以使用以下类型的存储。
-
SSL(安全套接层,Secure Sockets Layer)是一种安全协议,目的是为互联网通信,提供安全及数据完整性保障。
SSL(安全套接层,Secure Sockets Layer)是一种安全协议,目的是为互联网通信,提供安全及数据完整性保障。
-
Virtual Kubelet支持用户在短时高负载场景下,将部署在CCE上的容器实例(Pod),弹性创建到云容器实例CCI服务上,以减少集群扩容带来的消耗。
Virtual Kubelet支持用户在短时高负载场景下,将部署在CCE上的容器实例(Pod),弹性创建到云容器实例CCI服务上,以减少集群扩容带来的消耗。
-
CCI服务底座使用安全容器构建了业内领先的Serverless容器平台,同物理机系统内核隔离且互不影响。对于资深业务部署场景,内核参数调优是比较通用的方式。
CCI服务底座使用安全容器构建了业内领先的Serverless容器平台,同物理机系统内核隔离且互不影响。对于资深业务部署场景,内核参数调优是比较通用的方式。
-
欢迎使用云容器实例(Cloud Container Instance)。云容器实例提供 Serverless Container(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。
欢迎使用云容器实例(Cloud Container Instance)。云容器实例提供 Serverless Container(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。
-
云容器实例(Cloud Container Instance, CCI)服务提供 ServerlessContainer(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。
云容器实例(Cloud Container Instance, CCI)服务提供 ServerlessContainer(无服务器容器)引擎,让您无需创建和管理服务器集群即可直接运行容器。
CCI官网视频教程
访问工作负载
创建工作负载
创建WordPress
在负载中使用存储