• k8s —— 创建资源的两种方式(转发)


    k8s创建资源的两种方式

     

    命令 vs 配置文件

    Kubernetes 支持两种方式创建资源:

    1. 用 kubectl 命令直接创建

    kubectl run nginx-deployment --image=nginx:1.7.9 --replicas=2

    在命令行中通过参数指定资源的属性。

    2. 通过配置文件和 kubectl apply 创建

    要完成前面同样的工作,可执行命令:

    [root@k8s-master k8s]# kubectl apply -f nginx.yaml
    deployment.extensions/nginx-deployment configured

    3.nginx.yml 的内容说明

    复制代码
    apiVersion: extensions/v1beta1 #api的版本
    kind: Deployment          #资源的类型
    metadata:                 #资源的元数据
      name: nginx-deployment  #资源的名称
    spec:                     #资源的说明
      replicas: 2             #副本2个,缺省为1
      template:               #pod模板
        metadata:             #pod元数据
          labels:            #标签
            app: web_server    #标签选择器
        spec:
          containers:
          - name: nginx
            image: nginx:1.79
    复制代码

    资源的属性写在配置文件中,文件格式为 YAML。

     这种配置文件对格式的要求极为严格,缩进不能错,空格不能少打,vim编辑器的高亮提示会对我们写配置文件有帮助,如果语法错误会检测到。

    4.这两种方式进行比较

    基于命令的方式:

    1. 简单直观快捷,上手快。

    2. 适合临时测试或实验。

    基于配置文件的方式:

    1. 配置文件描述了 What,即应用最终要达到的状态。

    2. 配置文件提供了创建资源的模板,能够重复部署。

    3. 可以像管理代码一样管理部署。

    4. 适合正式的、跨环境的、规模化部署。

    5. 这种方式要求熟悉配置文件的语法,有一定难度。

    kubectl apply 不但能够创建 Kubernetes 资源,也能对资源进行更新,非常方便。不过 Kubernets 还提供了几个类似的命令,例如 kubectl createkubectl replacekubectl edit 和 kubectl patch

    为避免造成不必要的困扰,我们会尽量只使用 kubectl apply
    此命令已经能够应对超过 90% 的场景,事半功倍。

    5.资源的删除

    配置文件创建的资源 也可以用之前的方式删除

    [root@k8s-master k8s]# kubectl apply -f  nginx.yaml  
    deployment.extensions/nginx-deployment created

    指定配置删除

    [root@k8s-master k8s]# kubectl delete -f  nginx.yaml      
    deployment.extensions "nginx-deployment" deleted
  • 相关阅读:
    eclipse常用的快捷键
    如何保留小数点后N位?
    EditText设置/隐藏光标位置、选中文本和获取/清除焦点(转)
    java.lang.RuntimeException: Unable to instantiate activity ComponentInfo异常(转)
    STL优先队列 hdu1896
    工作排序问题 poj2376
    STL存储邻接表
    二叉树的遍历
    快速排序
    并查集 并查集来判断是否存在环路
  • 原文地址:https://www.cnblogs.com/panpanwelcome/p/13633876.html
Copyright © 2020-2023  润新知