更新时间:2023-12-22 gmt 08:00
快速入门-凯发k8国际娱乐官网入口
概述
本文通过调用一系列云容器实例的api使用nginx镜像创建一个工作负载,介绍使用云容器实例api的基本流程。
其中,镜像直接使用开源镜像中心的nginx镜像,容器的资源规格为0.25核cpu、512m内存,并绑定一个负载均衡实例,通过负载均衡实例从外网访问容器负载。
api的调用方法请参见。
创建流程
- 调用接口创建命名空间。
- 调用接口创建网络,与vpc和子网关联。
- 调用接口创建nginx容器负载。
创建nginx负载
- 调用接口创建命名空间,并指定使用gpu型资源。
{ "apiversion": "v1", "kind": "namespace", "metadata": { "name": "namespace-test", "annotations": { "namespace.kubernetes.io/flavor": "gpu-accelerated" } }, "spec": { "finalizers": [ "kubernetes" ] } }
您需要指定如下参数。
- name:命名空间的名称。
- namespace.kubernetes.io/flavor:命名空间的类型,当前支持gpu加速型(gpu-accelerated)和通用计算型(general-computing)。gpu加速型命名空间中可以使用gpu显卡。
- 调用接口创建网络,与vpc与子网关联。
{ "apiversion": "networking.cci.io/v1beta1", "kind": "network", "metadata": { "name": "test-network", "annotations": { "network.alpha.kubernetes.io/default-security-group": "security-group-id", "network.alpha.kubernetes.io/domain-id": "domain-id", "network.alpha.kubernetes.io/project-id": "project-id" } }, "spec": { "cidr": "192.168.0.0/24", "attachedvpc": "vpc-id", "networkid": "network-id", "subnetid": "subnet-id", "networktype": "underlay_neutron" } }
您需要指定如下参数。
- name:网络对象的名称。
- network.alpha.kubernetes.io/default-security-group:安全组id,您可以在查看。
- network.alpha.kubernetes.io/domain-id:账号id,获取方法请参见。
- network.alpha.kubernetes.io/project-id:项目id,获取方法请参见。
- cidr:网段地址,虚拟私有云下可用子网的范围。
- attachedvpc:命名空间所在vpc(虚拟私有云)的id,您可以在中查询,也可以通过api查询。
- networkid:vpc内子网的网络id,您可以在中查询,也可以通过api查询。
- subnetid:vpc内子网的id,您可以在中查询,也可以通过api查询。
- 调用接口创建nginx容器负载。
负载名称为nginx,使用开源镜像中心的nginx:latest镜像,容器的资源规格为0.25核cpu、1g内存。调用接口后,云容器实例会创建一个运行nginx的容器。
{ "apiversion": "apps/v1", "kind": "deployment", "metadata": { "name": "nginx" }, "spec": { "replicas": 1, "selector": { "matchlabels": { "app": "nginx" } }, "template": { "metadata": { "labels": { "app": "nginx" } }, "spec": { "containers": [ { "image": "nginx:latest", "name": "container-0", "resources": { "limits": { "cpu": "250m", "memory": "1gi" }, "requests": { "cpu": "250m", "memory": "1gi" } } } ], "imagepullsecrets": [ { "name": "imagepull-secret" } ] } } } }
您需要指定如下参数。
- name:deployment的名称。
- replicas:pod的数量,即deployment下有几个pod。
- selector.matchlabels:deployment使用哪些标签选择pod,例如这里设置的标签app=nginx,当pod有这个标签时,就会被deployment选中管理。
- template:pod的模板,定义pod的各种配置和规格。
- metadata.labels:pod的标签。
- spec.containers:pod中容器的定义。
- image:创建容器使用的镜像。
- resources.limits:容器使用资源的大小限制,即容器使用的资源不能超过这个限制。
- resources.requests:容器申请使用资源的大小。
nginx负载创建完后,您可以在云容器实例控制台查看到负载。
图1 nginx
意见反馈
文档内容是否对您有帮助?
提交成功!非常感谢您的反馈,我们会继续努力做到更好!
您可在查看反馈及问题处理状态。
系统繁忙,请稍后重试
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨