k8s快速生成yaml的两种方式

这篇具有很好参考价值的文章主要介绍了k8s快速生成yaml的两种方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第一. kubectl create命令

[root@k8s-master ~]# kubectl create deployment nginx --image=nginx -o yaml --dry-run #不创建pod,打印出来
W0106 16:21:43.891679   17615 helpers.go:663] --dry-run is deprecated and can be replaced with --dry-run=client.
apiVersion: apps/v1
kind: Deployment
metadata:
  creationTimestamp: null
  labels:
    app: nginx
  name: nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  strategy: {}
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: nginx
    spec:
      containers:
      - image: nginx
        name: nginx
        resources: {}
status: {}
[root@k8s-master ~]# 
ot@k8s-master ~]# kubectl create deployment nginx --image=nginx -o yaml --dry-run=client  > nginx.yaml #不创建pod,导出到文件中
[root@k8s-master ~]# ls
nginx.yaml
[root@k8s-master ~]# cat nginx.yaml 
apiVersion: apps/v1
kind: Deployment
metadata:
  creationTimestamp: null
  labels:
    app: nginx
  name: nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  strategy: {}
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: nginx
    spec:
      containers:
      - image: nginx
        name: nginx
        resources: {}
status: {}
[root@k8s-master ~]# 

第二. kubectl get(导出)

[root@k8s-master ~]# kubectl get deploy nginx -o yaml  > nginx.yaml #直接导出到文档中,没有创建pod
[root@k8s-master ~]# ls
nginx.yaml
[root@k8s-master ~]# cat nginx.yaml 
apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    deployment.kubernetes.io/revision: "1"
  creationTimestamp: "2023-01-06T08:25:22Z"
  generation: 1
  labels:
    app: nginx
  name: nginx
  namespace: default
  resourceVersion: "342363"
  uid: 680d72b2-9904-43ad-9833-62b05fad8300
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: nginx
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: nginx
    spec:
      containers:
      - image: nginx
        imagePullPolicy: Always
        name: nginx
        resources: {}
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      terminationGracePeriodSeconds: 30
status:
  availableReplicas: 1
  conditions:
  - lastTransitionTime: "2023-01-06T08:25:24Z"
    lastUpdateTime: "2023-01-06T08:25:24Z"
    message: Deployment has minimum availability.
    reason: MinimumReplicasAvailable
    status: "True"
    type: Available
  - lastTransitionTime: "2023-01-06T08:25:22Z"
    lastUpdateTime: "2023-01-06T08:25:24Z"
    message: ReplicaSet "nginx-748c667d99" has successfully progressed.
    reason: NewReplicaSetAvailable
    status: "True"
    type: Progressing
  observedGeneration: 1
  readyReplicas: 1
  replicas: 1
  updatedReplicas: 1
[root@k8s-master ~]# 

第三. 用命令创建pod

[root@k8s-master ~]# kubectl create deployment nginx --image=nginx  #直接创建pod
deployment.apps/nginx created
[root@k8s-master ~]# kubectl get pods,deployments.apps 
NAME                         READY   STATUS    RESTARTS   AGE
pod/nginx-748c667d99-nnnpz   1/1     Running   0          19s
pod/web-7b6955f56f-t8cb9     1/1     Running   0          2d7h

NAME                    READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/nginx   1/1     1            1           19s
deployment.apps/web     1/1     1            1           2d7h
[root@k8s-master ~]# 
[root@k8s-master ~]# kubectl expose deployment nginx --port=80 --type=NodePort
service/nginx exposed  #直接nginx的service服务
[root@k8s-master ~]# kubectl get pods,svc
NAME                         READY   STATUS    RESTARTS   AGE
pod/nginx-748c667d99-nnnpz   1/1     Running   0          15m
pod/web-7b6955f56f-t8cb9     1/1     Running   0          2d7h

NAME                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)        AGE
service/kubernetes   ClusterIP   10.96.0.1        <none>        443/TCP        2d23h
service/nginx        NodePort    10.109.239.113   <none>        80:21397/TCP   10s
service/web          NodePort    10.103.63.38     <none>        80:31960/TCP   2d7h
[root@k8s-master ~]# 

第四. 验证nginx的pod是否正常
k8s导出yaml文件,kubernetes,docker容器相关,kubernetes,docker,运维文章来源地址https://www.toymoban.com/news/detail-606292.html

可以正常访问,就是OK

到了这里,关于k8s快速生成yaml的两种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • k8s(Kubernetes)中yaml文件快速阅读理解

    简言         k8s yaml中文件内容一般有kind类型之分,每种类型有不同的功能(一般用---符号隔开) 常见的kind类型:         (1)Endpoints:Endpoints可以把外部的链接到k8s系统中(可以理解为引用外部资源,如将一个外部mysql连接到k8s中)         (2)Service:部署一

    2024年02月21日
    浏览(45)
  • Kubectl-AI: 一款 OpenAI GPT 自动生成应用 K8s yaml神器

    首页: 官网 下载安装 kubectl-ai需要OpenAI API密钥或Azure OpenAI服务 API密钥和端点以及有效的Kubernetes配置 OpenAI和Azure OpenAI,您可以使用以下环境变量: 支持以下模型: code-davinci-002 text-davinci-003 gpt-3.5-turbo-0301(Azure的部署必须命名为gpt-35-turbo-0301) gpt-3.5-turbo gpt-35-turbo-0301 开始测试

    2024年02月03日
    浏览(48)
  • k8s简介、虚拟机快速搭建k8s集群、集群管理方式及K8S工作原理和组件介绍

    1.1、部署方式的变迁 传统部署时代: 在物理服务器上运行应用程序 无法为应用程序定义资源边界 导致资源分配问题 例如,如果在物理服务器上运行多个应用程序,则可能会出现一个应用程序占用大部分资源的情况, 结果可能导致其他应用程序的性能下降。 一种解决方案是

    2024年02月12日
    浏览(80)
  • 使用kubeadm方式快速部署一个K8S集群

    目录 一、环境准备 二、环境初始化  三、在所有主机上安装相关软件 1、安装docker 2、配置k8s的yum源 3、安装kubelet、kubeadm、kubectl 四、部署Kubernetes Master 五、加入Kubernets Node 六、部署CNI网络插件 七、测试k8s集群 我的是CentOS7系统,然后准备三台虚拟主机 一台master,和两台no

    2024年02月11日
    浏览(64)
  • vue实现导出excel的两种方式

    通过vue实现导出有两种方式: (1)后端返回的是一个地址,直接拼接打开下载就行 (2)后端返回的是文件流的形式,这个时候就需要在请求头还有返回值的地方设置一下 (1)设置请求头 (2)设置返回结果,处理返回我文件流 (3)附加说明 有的时候做到上述几步还是不

    2024年02月12日
    浏览(51)
  • k8s yaml

    Kubernetes 支持 YAML 和 JSON 格式管理资源对象 JSON 格式:主要用于 api 接口之间消息的传递 YAML 格式:用于配置和管理,YAML 是一种简洁的非标记性语言,内容格式人性化,较易读 YAML 语法格式: ●大小写敏感 ●使用缩进表示层级关系 ●不支持Tab键制表符缩进,只使用空格缩进

    2024年02月13日
    浏览(34)
  • [ K8S ] yaml文件讲解

    Kubernetes 支持 YAML 和 JSON 格式管理资源对象 JSON 格式:主要用于 api 接口之间消息的传递 YAML 格式:用于配置和管理,YAML 是一种简洁的非标记性语言,内容格式人性化,较易读 YAML 语法格式: ●大小写敏感 ●使用缩进表示层级关系 ●不支持Tab键制表符缩进,只使用空格缩进

    2024年02月13日
    浏览(48)
  • K8S---yaml文件详解

    目录 一、K8S支持的文件格式 1、yaml和json的主要区别 2、YAML语言格式 二、YAML 1、查看 API 资源版本标签 2、编写资源配置清单 2.1 编写 nginx-test.yaml 资源配置清单 2.2 创建资源对象 2.3 查看创建的pod资源 3、创建service服务对外提供访问并测试 3.1 编写nginx-svc-test.yaml文件 3.2 创建资

    2024年02月12日
    浏览(45)
  • K8S:Yaml文件详解

    目录 一.Yaml文件详解 1.Yaml文件格式 2.YAML 语法格式 二.Yaml文件编写及相关概念 1.查看 api 资源版本标签 2.yaml编写案例 (2)Deployment类型编写nginx服务 (3)k8s集群中的port介绍 (5)快速编写yaml文件 (6)案例:自主式创建service并关联上面的pod (7)Pod yaml文件详解 (8)deploymen

    2024年02月08日
    浏览(52)
  • 玩转k8s:yaml介绍

    (1)Kubernetes 支持 YAML 和 JSON 格式管理资源对象 (2)JSON 格式:主要用于 api 接口之间消息的传递 (3)YAML 格式:用于配置和管理,YAML 是一种简洁的非标记性语言,内容格式人性化,较易读 (1)大小写敏感 (2)使用缩进表示层级关系 (3)不支持Tab键制表符缩进,只使用

    2024年01月25日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包