1、环境变量配置项

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

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

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

3、发布与服务

  1. # 部署定义
  2. apiVersion: apps/v1 # api版本
  3. kind: Deployment # k8s部署
  4. metadata:
  5. name: mokn-common-service-key #名字
  6. namespace: default # 命名空间
  7. # 规格
  8. spec:
  9. # 副本数,Pod数
  10. replicas: 1
  11. # 选择器
  12. selector:
  13. matchLabels:
  14. app: mokn-common-service-key
  15. template:
  16. metadata:
  17. labels:
  18. app: mokn-common-service-key # 标签,用于服务selector
  19. spec:
  20. # 容器定义
  21. containers:
  22. - name: mokn-common-service-key # 容器名
  23. image: '100.125.0.31:20202/mk-develop/mokn-common-service-key:v9' # 镜像地址
  24. ports:
  25. - name: http-port
  26. containerPort: 8080 # 容器端口
  27. # 环境变量
  28. env:
  29. - name: TESTKEY # 环境变量名,对应application.properties的配置key
  30. valueFrom:
  31. configMapKeyRef: # 来自于配置项
  32. name: common-key-svc # 配置项名称
  33. key: TESTKEY # 配置项key
  34. # 文件挂载
  35. volumeMounts:
  36. - name: logback-config-volume # 挂载名称,对应下面的volumes
  37. mountPath: /etc/mokn # 挂载到目录,容器内部目录
  38. # 健康检查(容易启动用,失败一直重启)
  39. livenessProbe:
  40. httpGet:
  41. path: /actuator/health
  42. port: 8080
  43. scheme: HTTP
  44. initialDelaySeconds: 120
  45. timeoutSeconds: 5
  46. periodSeconds: 10
  47. successThreshold: 1
  48. failureThreshold: 3
  49. # 健康检查(失败则不加入Service)
  50. readinessProbe:
  51. httpGet:
  52. path: /actuator/health
  53. port: 8080
  54. scheme: HTTP
  55. initialDelaySeconds: 30
  56. timeoutSeconds: 3
  57. periodSeconds: 10
  58. successThreshold: 1
  59. failureThreshold: 3
  60. # 定义挂载
  61. volumes:
  62. - name: logback-config-volume # 名称,与上面的mount对应
  63. configMap: # 挂载来自于配置项
  64. name: common-key-log # 配置项名称
  65. items:
  66. - key: logback-spring.xml # key
  67. path: logback-spring.xml
  68. revisionHistoryLimit: 10 # 记录更新版本数,用于回滚
  69. ---
  70.  
  71. # 服务定义
  72. apiVersion: v1 # 使用版本
  73. kind: Service # k8s服务
  74. metadata:
  75. name: mokn-common-service-key # 名称
  76. namespace: default # 命名空间
  77. #规格定义
  78. spec:
  79. ports:
  80. - name: http-port
  81. protocol: TCP # 协议
  82. port: 8080 # 集群端口
  83. targetPort: 8080 # 容器端口
  84. nodePort: 30000 # 节点端口
  85. # 选取发布,Pod
  86. selector:
  87. app: mokn-common-service-key
  88. type: NodePort # 端口类型(NodePort:节点映射,ClusterIP:集群绑定,)

k8s发布文件记录的更多相关文章

  1. Android代码混淆及项目发布方法记录

     Android代码混淆及项目发布步骤记录 本来整理了一份Android项目混淆与发布的文档,突然想到何不写篇博客,分享一下呢,如是便有了本文. Android代码混淆及项目发布步骤记录 一.清理 ...

  2. Dockerfile + Nginx.conf文件记录(用于前端项目部署)

    Dockerfile + Nginx.conf文件记录(用于前端项目部署) 本教程依据个人理解并经过实际验证为正确,特此记录下来,权当笔记. 注:基于linux操作系统(敏感信息都进行了处理),默认服 ...

  3. SVN如何查看修改的文件记录] 来源:Linux社区 作者:frogoscar

    SVN如何查看修改的文件记录 [日期:2014-11-20] 来源:Linux社区  作者:frogoscar [字体:大 中 小]     主要是有四个命令,svn log用来展示svn 的版本作者 ...

  4. Visual Studio 2010 实用功能:使用web.config发布文件替换功能

    当建立ASP.NET Web应用程序项目后,默认除了生成web.config外,还生成了web.debug.config与Web.Release.config.顾名思义,根据它们的命名我可以推测到他们 ...

  5. Web API删除JSON格式的文件记录

    Insus.NET的系列Web Api学习文章,这篇算是计划中最后一篇了,删除JSON格式的文件记录.前一篇<Web Api其中的PUT功能演示>http://www.cnblogs.co ...

  6. python发布文件(windows)

    怎样发布文件 首先发布本地文件有一个好的用处,就是省去了朋友同import的时候还要使用sys.path,省的自己出错 1.新建文件夹d:\ tool 在的d:\tool文件夹中建立login.py ...

  7. secureCRT简单上传、下载文件记录

    secureCRT简单上传.下载文件记录: 1)sz下载 -y 覆盖 2)rz上传 -y 覆盖 3)以上两个命令属于安装时包含在“Dial-up Networking Support"组中 ...

  8. DeployMan,发布文件的利器

    利用Delphi开发app,有时候需要发布文件,如果文件少还不是问题,但文件多的情况下,IDE带的发布功能,就显得捉襟见肘,效率低下了. 通过Project-Deployment,打开发布窗口,如下图 ...

  9. 零基础学python之函数与模块(附详细的代码和安装发布文件过程)

    代码重用——函数与模块 摘要:构建函数,创建模块,安装发布文件,安装pytest和PEP 8插件,确认PEP8兼容性以及纠错 重用代码是构建一个可维护系统的关键. 代码组是Python中对块的叫法. ...

随机推荐

  1. HTML 表单模板

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. 控制台提示“Invalid string length”的原因

    控制台提示“Invalid string length”,浏览器直接卡掉,是为什么呢? 答:因为在写嵌套循环时,定义的变量重名了,内层和外层用了同一个i变量. -THE END-

  3. MySQL修改数据库时区

    --查看数据库时区设置mysql> show variables like "%time_zone%"; +------------------+--------+ | Va ...

  4. WestWild: 1.1: Vulnhub Walkthorugh

    启动界面 主机层面扫描: ╰─ nmap -p1-65535 -sV -A 10.10.202.131 Starting Nmap 7.70 ( https://nmap.org ) at 2019- ...

  5. Python升级后ssl模块不可用问题解决和浅析

    在Cent0S 7.5下将Python 2.7.5升级到Python 3.6.6后,发现ssl模块不可用,具体详细信息如下所示: [root@db-server ~]# pip list Packag ...

  6. maven 上传jar包到私服仓库

    按一下形式上传jiar包 # mvn deploy:deploy-file -DgroupId=com.itextpdf -DartifactId=itextpdf -Dversion=5.5.13 ...

  7. springboot模板

    1.thymeleaf模板 2.Freemarker模板 Thymeleaf模板 首先导入依赖 <dependency> <groupId>org.springframewor ...

  8. jQuery入门和DOM对象

    jQuery入门和DOM对象 1.开发准备 1. 下载的版本: jquery-3.3.1.min.js :压缩版,发布版84.8KB jquery-3.3.1.js :常规版,开发版265KB 2. ...

  9. CSV和JSON格式相互转换

    1.为什么要进行CSV与JSON格式之间的转换 CSV格式常用于一二维数据表示和存储,他是一种纯文本形式存储表格数据的表示方式.JSON也可以表示一二维数据.在网络信息传输中,可能需要统一表示方式,因 ...

  10. 集合系列 Set(七):LinkedHashSet

    LinkedHashSet 继承了 HashSet,在此基础上维护了元素的插入顺序. public class LinkedHashSet<E> extends HashSet<E& ...