• k8s发布文件记录


    1、环境变量配置项

    apiVersion: v1 # api版本
    kind: ConfigMap # 配置项
    metadata:
      name: common-key-svc # 名字
      namespace: default # 命名空间
    data:
      # 配置为keyValue,作为环境变量使用
      TESTKEY: testvalue

    2、文件挂载配置项,日志文件

    apiVersion: v1 # api版本
    kind: ConfigMap # 配置项
    metadata:
      name: common-key-log # 名称
      namespace: default # 命名空间
    data:
      # 配置项值为xml,用于挂载到文件目录当整个配置文件使用
      logback-spring.xml: |-
        <?xml version="1.0" encoding="UTF-8"?>
            <configuration>
                <!--输出到logstash-->
                <appender name="LOG" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
                    <destination>192.168.0.86:4560</destination>
                    <!-- encoder必须配置,有多种可选 -->
                    <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" >
                        <!-- "appname":"yang_test" 的作用是指定创建索引的名字时用,并且在生成的文档中会多了这个字段  -->
                        <customFields>{"appname":"mokn-common-service-key"}</customFields>
                    </encoder>
                </appender>
                <root level="INFO">
                    <appender-ref ref="LOG"/>
                </root>
            </configuration>

    3、发布与服务

    # 部署定义
    apiVersion: apps/v1 # api版本
    kind: Deployment # k8s部署
    metadata:
      name: mokn-common-service-key #名字
      namespace: default # 命名空间
    # 规格
    spec:
      # 副本数,Pod数
      replicas: 1
      # 选择器
      selector:
        matchLabels:
          app: mokn-common-service-key
      template:
        metadata:
          labels:
            app: mokn-common-service-key # 标签,用于服务selector
        spec:
          # 容器定义
          containers:
          - name: mokn-common-service-key # 容器名
            image: '100.125.0.31:20202/mk-develop/mokn-common-service-key:v9' # 镜像地址
            ports:
            - name: http-port
              containerPort: 8080 # 容器端口
            # 环境变量
            env:
            - name: TESTKEY # 环境变量名,对应application.properties的配置key
              valueFrom:
                configMapKeyRef: # 来自于配置项
                  name: common-key-svc # 配置项名称
                  key: TESTKEY # 配置项key
            # 文件挂载
            volumeMounts:
            - name: logback-config-volume # 挂载名称,对应下面的volumes
              mountPath: /etc/mokn # 挂载到目录,容器内部目录
            # 健康检查(容易启动用,失败一直重启)
            livenessProbe:
              httpGet:
                path: /actuator/health
                port: 8080
                scheme: HTTP
              initialDelaySeconds: 120
              timeoutSeconds: 5
              periodSeconds: 10
              successThreshold: 1
              failureThreshold: 3
            # 健康检查(失败则不加入Service)
            readinessProbe:
              httpGet:
                path: /actuator/health
                port: 8080
                scheme: HTTP
              initialDelaySeconds: 30
              timeoutSeconds: 3
              periodSeconds: 10
              successThreshold: 1
              failureThreshold: 3
          # 定义挂载
          volumes:
          - name: logback-config-volume # 名称,与上面的mount对应
            configMap: # 挂载来自于配置项
              name: common-key-log # 配置项名称
              items:
              - key: logback-spring.xml # key
                path: logback-spring.xml
      revisionHistoryLimit: 10 # 记录更新版本数,用于回滚
    ---
    
    # 服务定义
    apiVersion: v1 # 使用版本
    kind: Service # k8s服务
    metadata:
      name: mokn-common-service-key # 名称
      namespace: default # 命名空间
    #规格定义
    spec:
      ports:
      - name: http-port
        protocol: TCP # 协议
        port: 8080 # 集群端口
        targetPort: 8080 # 容器端口
        nodePort: 30000 # 节点端口
      # 选取发布,Pod
      selector:
        app: mokn-common-service-key
      type: NodePort # 端口类型(NodePort:节点映射,ClusterIP:集群绑定,)
  • 相关阅读:
    goj 来自不给标题的菜鸟出题组(巴什博弈+素数判定)
    goj 城市交通线(简单并查集)
    ACM_鸡兔同笼(二元一次方程)
    ACM_魔仙岛探险(深搜)
    ACM_螺旋填数
    ACM_开心消消乐
    构建工具是如何用 node 操作 html/js/css/md 文件的
    学习使用ExpressJS 4.0中的新Router
    请求时token过期自动刷新token
    Express的基本使用
  • 原文地址:https://www.cnblogs.com/assion/p/11269181.html
Copyright © 2020-2023  润新知