KUBERNETES03_k8s对象是什么、如何管理、命名空间、代码自动补全提示(二)

简介: KUBERNETES03_k8s对象是什么、如何管理、命名空间、代码自动补全提示(二)

②. 描述k8s的对象


①. 如何会写任意资源的yaml,比如Pod


(kubectl run my-nginx666 --image=nginx #启动一个Pod)


kubectl get pod my-nginx666 -oyaml集群中挑一个同类资源,获取出他的yaml


kubectl run my-tomcat --image=tomcat --dry-run -oyaml 干跑一遍


②. 当您在Kubernetes中创建一个对象时,您必须提供


该对象的spec字段,通过该字段描述您期望的目标状态,该对象的一些基本信息,例如名字

可以使用 kubectl 命令行创建对象,也可以编写.yaml 格式的文件进行创建


[root@k8smaster ~]# kubectl run my-tomcat --image=tomcat --dry-run -oyaml  # dry-run过期了,可以使用dry-run=client
[root@k8smaster ~]# kubectl api-resources | grep pod
# tomcat干跑
#(1). apiVersion和kind称为typeMeta(基本信息)
#(2). metadata成为元数据,ObjectMeta
apiVersion: v1 # 同一个资源有可能有多个版本。看 kubectl api-resources提示的
kind: Pod # 资源类型 kubectl api-resources:可以获取到所有资源
metadata: # 每一个资源定义一些元数据信息
  labels:
    run: my-tomcat
  name: my-tomcat # 指定资源的名字
spec: # 资源的规格(镜像名、镜像的环境变量信息等等)
  containers: # 指定要启动一个什么样的容器
  - image: tomcat # 容器的镜像
    name: my-tomcat # 容器的名字
    resources: {} # 容器的资源信息(后面详解)
  dnsPolicy: ClusterFirst # dns的策略信息(后面详解)
  restartPolicy: Always
# 以上是资源的完整规格描述部分 以上是我们必须会编写的
# status不用我们写,是k8s集群实时更新的状态信息,只要资源变化,kubelet会请求api-server保存最新的资源状态信息
status: {} 


微信图片_20220109235955.png


③. 在想要创建的Kubernetes对象对应的.yaml文件中,需要配置如下的字段(必须字段)

apiVersion:创建该对象所使用的Kubernetes API的版本


kind:想要创建的对象的类别


metadata: 用于唯一确定该对象的元数据:包括name和namespace,如果namespace为空,则默认值为default


spec:你所期望的该对象的状态


不同类型的 Kubernetes,其spec对象的格式不同(含有不同的内嵌字段),通过API手册可以查看 Kubernetes对象的字段和描述。例如,假设您想了解Pod的spec定义,可以在这里找到,Deployment的spec定义可以在这里找到


微信图片_20220110000015.png




相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
18小时前
|
存储 Kubernetes 调度
Kubernetes详解(五)——Kubernetes核心对象
Kubernetes详解(五)——Kubernetes核心对象
9 4
|
1天前
|
存储 Kubernetes 关系型数据库
Kubernetes详解(二)——Kubernetes结构与资源对象
Kubernetes详解(二)——Kubernetes结构与资源对象
8 0
|
10天前
|
Kubernetes API 调度
|
16天前
|
存储 运维 Kubernetes
Docker+Kubernetes/K8s+Jenkins视频资料【干货分享】
Docker+Kubernetes/K8s+Jenkins视频资料【干货分享】
Docker+Kubernetes/K8s+Jenkins视频资料【干货分享】
|
16天前
|
Kubernetes Ubuntu Linux
Kubernetes(K8S)集群管理Docker容器(部署篇)
Kubernetes(K8S)集群管理Docker容器(部署篇)
|
16天前
|
存储 Kubernetes Docker
Kubernetes(K8S)集群管理Docker容器(概念篇)
Kubernetes(K8S)集群管理Docker容器(概念篇)
|
16天前
|
Kubernetes Shell 网络安全
Shell脚本快速部署Kubernetes(K8S v1.1版本)集群系统
Shell脚本快速部署Kubernetes(K8S v1.1版本)集群系统
|
16天前
|
Kubernetes Ubuntu Docker
Kubernetes(K8S v1.1版本) 集群管理Docker容器之部署篇
Kubernetes(K8S v1.1版本) 集群管理Docker容器之部署篇
|
16天前
|
Kubernetes 监控 调度
Kubernetes(K8s)与虚拟GPU(vGPU)协同:实现GPU资源的高效管理与利用
本文探讨了如何使用Kubernetes和虚拟GPU(vGPU)实现异构GPU的协同调度。Kubernetes是一个容器编排平台,通过设备插件、资源规格、调度器扩展和节点标签实现GPU资源管理。vGPU技术允许物理GPU资源在多个虚拟机或容器中共享。文章详细介绍了vGPU的部署配置步骤,并提出了GPU资源调度、负载均衡和监控调优的方法。强调虚拟GPU的性能取决于硬件和驱动支持,合理配置能提供高性能计算环境。参考文献包括Kubernetes和NVIDIA官方文档及相关研究论文。
|
28天前
|
Kubernetes 容器 Perl
Kubernetes命名空间
Kubernetes命名空间
22 0