上一章我们通过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

.net core i上 K8S(三)Yaml文件运行.netcore程序的更多相关文章

  1. K8s简单yaml文件运行例子deployment

    kubectl run 创建并运行一个或多个容器镜像. 创建一个deployment 或job 来管理容器. kubectl run 语法: $ run NAME --image=image [--e ...

  2. .net core i上 K8S(四).netcore程序的pod管理,重启策略与健康检查

    上一章我们已经通过yaml文件将.netcore程序跑起来了,但还有一下细节问题可以分享给大家. 1.pod管理 1.1创建pod kubectl create -f netcore-pod.yaml ...

  3. Kubernetes实战指南(三十三):都0202了,你还在手写k8s的yaml文件?

    目录 1. k8s的yaml文件到底有多复杂 2. 基于图形化的方式自动生成yaml 2.1 k8s图形化管理工具Ratel安装 2.2 使用Ratel创建生成yaml文件 2.2.1 基本配置 2. ...

  4. k8s之yaml文件书写格式

    k8s之yaml文件书写格式 1 # yaml格式的pod定义文件完整内容: 2 apiVersion: v1 #必选,版本号,例如v1 3 kind: Pod #必选,Pod 4 metadata: ...

  5. k8s之yaml文件详解

    k8s之yaml文件详解 目录 k8s之yaml文件详解 1. k8s支持的文件格式 2. YAML语言格式 3. 查看api资源版本标签 4. 编写nginx-test.yaml资源配置清单 4.1 ...

  6. .net core i上 K8S(二)运行简单.netcore程序

    上一章我们搭建了k8s集群,这一章我们开始在k8s集群上运行.netcore程序 1.kubectl run 在我的Docker系列教程里,我曾往docker hub中推送过一个镜像“webdokce ...

  7. .net core i上 K8S(六).netcore程序的service网络代理模式

    上一章我们讲了pod的hostip模式,但在生产环境中,我们都是通过service来访问k8s集群的,service有两种模式来暴漏端口,今天我们来分享一下 1.clusterIP模式 我们在创建se ...

  8. .net core i上 K8S(一)集群搭建

    1.前言 以前搭建集群都是使用nginx反向代理,但现在我们有了更好的选择——K8S.我不打算一上来就讲K8S的知识点,因为知识点还是比较多,我打算先从搭建K8S集群讲起,我也是在搭建集群的过程中熟悉 ...

  9. .net core i上 K8S(五).netcore程序的hostip模式

    上一章讲了pod的管理,今天再分享一个pod的访问方式 1.Pod的HostIP模式 Pod的HostIP模式,可以通过宿主机访问pod内的服务,创建yaml文件如下 apiVersion: v1 k ...

随机推荐

  1. mysql 随机查询 记录集

    有时候需求需要随机从数据库查询若干条记录集,网上搜了一下,几篇博文都是些重复的.....不知道他们谁抄的谁的,这里除了介绍提供一种笔者自己想到的方法,本质都是利用mysql 的rand() 第一种方法 ...

  2. MVC项目不同域之间的UrlRouting

    一.DomainAction,方便生成不同域下的url 1.新建3个MVC项目,一个公用类库WebCore Demo.WebApplication0 绑定域名 www.demo.com demo.co ...

  3. failed to open stream: No such file or directory 报错解决方法

    1.首先检查是否是文件名错误(比如有空格):是否因为路径不完整(比如缺少http://,或者缺少文件扩展名.doc等): 2.若是在本地中文名文件打开报错,我就是因为编码不一致导致: Windows中 ...

  4. 10 华电内部文档搜索系统 search03

    上一节讲解了怎么在Struts 2下面使用内置对象传值,在Struts 2下面是用Session或者Request存放对象.在Struts 2下面是用内部对象传值,和JSP页面下面稍微有些不同.但是实 ...

  5. 34. Search for a Range (Array; Divide-and-Conquer)

    Given a sorted array of integers, find the starting and ending position of a given target value. You ...

  6. C++ split

    /*************************************************Function: splitDescription: 根据空格切分字符串Calls: // 被本函 ...

  7. 525. Contiguous Array两位求和为1的对数

    [抄题]: Given a binary array, find the maximum length of a contiguous subarray with equal number of 0 ...

  8. Weblogic10.3.6部署解决CXF webService 调用报错: “Cannot create a secure XMLInputFactory”

    一,解决步骤 1.添加jar包 stax2-api-3.1.4.jar woodstox-core-asl-4.4.1.jar 2.编写监听器 package com.neusoft.cxf.list ...

  9. SpringBoot 集成Mybatis时 使用通用插件Mapper 注意事项

    1.如果在SpringBoot的启动入口类上面加入注解 @MapperScan(basePackages = "com.leecx.mapper")      使用的是   org ...

  10. 组织机构sql

    with cte as (     select vcOrganID, vcParentID, vcOrganName, 0 as lvl from tbOrgan     where vcOrgan ...