检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
CCI服务底座使用安全容器构建了业内领先的Serverless容器平台,同物理机系统内核隔离且互不影响。对于资深业务部署场景,内核参数调优是比较通用的方式。在安全范围内,CCI服务允许客户根据Kubernetes社区推荐的方案,通过Pod的安全上下文(Security Conte
云容器实例的Console控制台界面、调用API部署应用,那这些方式的使用有什么不同的地方呢?这些方法又与直接运行Docker run命令运行容器有什么区别呢? 本文将通过运行一个Wordpress + MySQL的博客为例,比较这几种方法之间的异同,以利于您挑选合适的使用方法。
ConfigMap是一种用于存储应用所需配置信息的资源类型,用于保存配置数据的键值对,可以用来保存单个属性,也可以用来保存配置文件。 通过ConfigMap可以方便地做到配置解耦,使得不同环境有不同的配置。相比环境变量,Pod中引用的ConfigMap可以做到实时更新,当您更新ConfigMap的数据后,Pod中引用的ConfigMap会同步刷新。
终端节点 终端节点(Endpoint)即调用API的请求地址,不同服务不同区域的终端节点不同,您可以从地区和终端节点中查询所有服务的终端节点。 父主题: 使用前必读
etes中一个namespace内的网络。目前CCI支持VPC网络,一个VPC网络类型的network对象对应于华为云虚拟私有云服务中的一个子网。 CCI的容器网络依赖于华为云底层VPC网络,因此在创建network对象前,需要先调用虚拟私有云的接口创建或者查询已有子网信息。 须知:
您可以使用NAT网关服务,该服务能够为VPC内的容器实例提供网络地址转换(Network Address Translation)服务,SNAT功能通过绑定弹性公网IP,实现私有IP向公有IP的转换,可实现VPC内的容器实例共享弹性公网IP访问Internet。其原理如图1所示。通过NAT网关的SNAT功能,即
如何上传镜像? 镜像的管理是由容器镜像服务(SoftWare Repository)提供的,当前容器镜像服务提供如下两种上传镜像的方法: 客户端上传镜像 页面上传镜像 父主题: 镜像仓库类
大IO的文件操作放在rootfs,例如往容器系统盘(rootfs磁盘)高频打日志,使系统盘频繁读写,您可以将业务相关的配置文件,或者一些读写不频繁的文件放在rootfs磁盘中。大IO的文件操作需要根据业务场景选择随Pod生命周期创删的日志卷、FlexVolume或者持久化的EVS
量规划等,确保有可用的网络资源。 图1 命名空间与VPC子网的关系 哪些情况下适合使用多个命名空间 因为Namespace可以实现部分的环境隔离,当您的项目和人员众多的时候可以考虑根据项目属性,例如生产、测试、开发划分不同的Namespace。 创建Namespace Names
创建一个Pod。 说明: Pod的生命周期是短暂的,Pod是用后即焚的实体。在实际使用中,请谨慎单独创建Pod,请使用Deployment、StatefulSet和Job这些控制器创建应用,从而保障应用高可用。 云容器实例中Pod规格有限制,具体的限制请参见约束限制页面的“Pod规格”部分。
为了支持查看GPU使用情况的场景,需要在镜像中注入nvidia-smi工具,根据购买的专属节点GPU驱动版本选择不同的nvidia-smi二进制文件。 nvidia-smi获取方式。 该二进制文件可以在nvidia官网,根据CUDA Toolkit版本选择下载对应版本的nvidia驱动包。
fig中配置的dns参数。 nameservers:DNS的IP地址列表。当应用的dnsPolicy设置为“None”时,列表必须至少包含一个IP地址,否则此属性是可选的。列出的DNS的IP列表将合并到基于dnsPolicy生成的域名解析文件的nameserver字段中,并删除重复的地址。
metadata.annotations data 说明: 当“type”的值为“Opaque”时,“data”的“key”和“value”都可以更新。 当“type”的值不为“Opaque”时,“data”的“value”可以更新。 调用方法 请参见如何调用API。 URI PUT
本节主要讲解工作负载弹性伸缩和手动伸缩的配置方式。请根据实际业务选择。 弹性伸缩:支持告警、定时、周期三种策略。配置完成后可基于资源变化、固定时间、固定周期自动触发实例的增减。 手动伸缩:配置完成后立即触发实例的增减。 对于挂载了云硬盘存储卷的Pod,实例缩容时不会同步删除云硬盘。且再次创建相同名称的Pod时,无法挂载云硬盘。
联已有VPC或创建一个新的VPC,并在VPC下创建一个子网。后续在该命名空间下创建的容器及其他资源都会在对应的VPC及子网之内。 通常情况下,如果您在同一个VPC下还会使用其他服务的资源,您需要考虑您的网络规划,如子网网段划分、IP数量规划等,确保有可用的网络资源。 图1 命名空间与VPC子网的关系
在Pod列表,单击失败实例后的“查看日志”,跳转到应用运维管理AOM界面。 图3 Pod列表 在应用运维管理AOM界面,单击“日志 > 日志搜索”选择组件,查看错误信息。 图4 查看日志 问题原因: 上传的AK/SK失效。 解决方法: 重新上传有效的AK/SK。 在云容器实例CCI控制台,单击“存储管理
如果去查询Kubernetes的资源,您会看到还有一个status字段,status描述kubernetes资源的实际状态,创建时不需要配置。这个示例是一个最小集,其他参数定义后面会逐步介绍。 kubernetes资源的参数定义的解释,您可以通过具体资源的API参考查询对应的解释。 Pod定义
Pod规格限制项 限制取值范围 Pod的CPU 0.25核-32核,或者自定义选择48核、64核。 CPU必须为0.25核的整数倍。 Pod的内存 1GiB-512GiB。 内存必须为1GiB的整数倍。 Pod的CPU/内存配比值 在1:2至1:8之间。 Pod的容器 一个Pod内最多支持5个容器。
钩子,在容器的生命周期的特定阶段执行调用,比如容器在停止前希望执行某项操作,就可以注册相应的钩子函数。目前提供的生命周期钩子函数如下所示。 启动后处理(PostStart):负载启动后触发。 停止前处理(PreStop):负载停止前触发。 调用接口时,只需配置pod的lifecycle
Pod是Kubernetes创建或部署的最小单位。一个Pod封装一个或多个容器(container)、存储资源(volume)、一个独立的网络IP以及管理控制容器运行方式的策略选项。 Pod使用主要分为两种方式: Pod中运行一个容器。这是Kubernetes最常见的用法,您可以将Pod视为单个封装的容器,但