zoukankan      html  css  js  c++  java
  • .net core i上 K8S(三)Yaml文件运行.netcore程序

    上一章我们通过kubectl run简单运行了一个.netcore网站,但实际的开发中,我们都是通过yaml来实现的。

    1.编写yaml文件

    关于yaml文件的格式在此就不多描述了,不熟悉的可以去网上搜一下示例。

    apiVersion: apps/v1beta2    #指定版本,支持的版本可以通过kubectl api-versions查询
    kind: Deployment          #指定类型,这一次我们要创建一个Deployment
    metadata:              #元数据
      name: cys-netcore        #delpoyment的名称,必须在deployment中保持唯一
    spec:                #deployment的详细内容
      replicas: 1            #副本数量
      selector:            #选择器,选择label中的app=cys-netcore的
        matchLabels:
          app: cys-netcore
      template:            
        metadata:
          labels:        
            app: cys-netcore    #指定一个label名为app,值为cys-netcore,对应上面的selector
        spec:
          containers:
          - name: cys-netcore    #容器名
            image: chenyishi/webdocker_s_provider  #镜像
            ports:
            - containerPort: 1000    #暴漏的端口
            env:            #环境变量
            - name: serverport
              value: "1000"

    2.运行yaml

    kubectl create -f netcore.yaml 

    我们可以查看创建出来的资源

    我们可以查看一下我们指定的label

    kubectl get pod cys-netcore-5ffd8bd66b-t5r5x --show-labels

    我们也可以根据label查询pod

    kubectl get pod -l app=cys-netcore

    3.滚动升级kubectl set

    kubectl set命令可以执行滚动升级命令模板如下

    kubectl set env deployment/cys-netcore serverport=1000    #kubectl set env deployment名  环境变量key=value  

    查看历史版本

    kubectl rollout history deployment.apps/cys-netcore

    查看指定版本信息

    kubectl rollout history deployment.apps/cys-netcore --revision=5

    4.kubectl edit编辑更多信息

    kubectl edit deploy/cys-netcore

    打开文件后,编辑环境变量,保存退出,即可通过kubectl rollout history查看记录

    5.kubectl rollout undo回滚

    kubectl rollout undo deploy/cys-netcore                #回滚到上一版本
    kubectl rollout undo deploy/cys-netcore --to-revision=2      #回滚到指定版本

    6.扩容kubectl scale

    kubectl scale deployment cys-netcore --replicas=2

    7.自动扩容

    kubectl autoscale deployment cys-netcore --min=10 --max=20 --cpu-precent=70

    8.yaml创建service

    创建配置文件

    apiVersion: v1
    kind: Service
    metadata:
      name: netcore-service
      labels:
        app: netcore
    spec:
      ports:
      - port: 1001
        targetPort: 1000
      selector:
        app: cys-netcore
      type: NodePort
    kubectl create -f netcore-service.yaml

    访问测试

    9.查看日志 kubectl logs

    kubectl logs pod/cys-netcore-5ffd8bd66b-q4b7j

    10.查看service的ip节点

    kubectl get ep netcore-service

  • 相关阅读:
    实验 7 综合练习一
    实验或作业模版: 实验 6-1 最大公约数 最小公倍数
    实验 6 数组1
    Pro
    作业 4 函数应用
    老大
    双端队列
    zxa and leaf
    Baby Ming and Matrix games
    The more, The Better
  • 原文地址:https://www.cnblogs.com/chenyishi/p/10094923.html
Copyright © 2011-2022 走看看