deploy-tmp.yaml 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. ---
  2. apiVersion: apps/v1
  3. kind: StatefulSet
  4. metadata:
  5. name: abroadpay
  6. namespace: pro
  7. labels:
  8. app: abroadpay
  9. spec:
  10. serviceName: abroadpay
  11. replicas: 2
  12. selector:
  13. matchLabels:
  14. app: abroadpay
  15. template:
  16. metadata:
  17. labels:
  18. app: abroadpay
  19. spec:
  20. terminationGracePeriodSeconds: 30
  21. dnsPolicy: None
  22. dnsConfig:
  23. nameservers:
  24. - 223.5.5.5
  25. - 10.26.22.50
  26. initContainers:
  27. - name: init
  28. image: hub.evbj.easou.com/dev/busybox
  29. command: [ "chmod","777","-R","/data" ]
  30. imagePullPolicy: IfNotPresent
  31. volumeMounts:
  32. - name: volume
  33. mountPath: /data
  34. #nodeSelector:
  35. # app.touchrs: touchrs
  36. # affinity:
  37. # podAntiAffinity:
  38. # preferredDuringSchedulingIgnoredDuringExecution:
  39. # - weight: 100
  40. # podAffinityTerm:
  41. # labelSelector:
  42. # matchExpressions:
  43. # - key: app
  44. # operator: In
  45. # values:
  46. # - abroadpay
  47. # topologyKey: kubernetes.io/hostname
  48. containers:
  49. - name: abroadpay
  50. image: hub.evbj.easou.com/pro/abroadpay:1.0
  51. imagePullPolicy: IfNotPresent
  52. env:
  53. - name: MY_NODE_NAME
  54. valueFrom:
  55. fieldRef:
  56. fieldPath: spec.nodeName
  57. - name: MY_POD_IP
  58. valueFrom:
  59. fieldRef:
  60. fieldPath: status.podIP
  61. - name: MY_POD_NAME
  62. valueFrom:
  63. fieldRef:
  64. fieldPath: metadata.name
  65. - name: MY_POD_NAMESPACE
  66. valueFrom:
  67. fieldRef:
  68. fieldPath: metadata.namespace
  69. - name: JAVA_OPTS
  70. value: "-server -Xmx2g -Xms2g -Xss512k -Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom -Dspring.profiles.active=prod"
  71. ports:
  72. - containerPort: 6700
  73. name: port
  74. - containerPort: 8001
  75. name: "jvm-debug"
  76. volumeMounts:
  77. - name: volume
  78. mountPath: /data
  79. livenessProbe:
  80. httpGet:
  81. path: /common/gip
  82. port: 6700
  83. initialDelaySeconds: 40 #60s后启动第一次探测
  84. periodSeconds: 15 # 每隔10s启动一次探测
  85. timeoutSeconds: 3 # 超时时间3s
  86. successThreshold: 1 # 成功1次即表示容器健康
  87. failureThreshold: 5 # 连续5次失败,则判定容器不健康,默认3次
  88. readinessProbe:
  89. tcpSocket:
  90. port: 6700
  91. initialDelaySeconds: 40
  92. periodSeconds: 15
  93. volumeClaimTemplates:
  94. - metadata:
  95. name: volume
  96. spec:
  97. accessModes: [ "ReadWriteOnce" ]
  98. storageClassName: rbd
  99. resources:
  100. requests:
  101. storage: 100Gi
  102. ---
  103. apiVersion: v1
  104. kind: Service
  105. metadata:
  106. name: abroadpay-svc
  107. namespace: pro
  108. labels:
  109. app: abroadpay-svc
  110. spec:
  111. type: NodePort
  112. ports:
  113. - port: 80
  114. targetPort: 8080
  115. name: "main"
  116. selector:
  117. app: abroadpay
  118. ---
  119. apiVersion: networking.k8s.io/v1
  120. kind: Ingress
  121. metadata:
  122. name: abroadpay-ingress
  123. namespace: pro
  124. spec:
  125. rules:
  126. - host: pro-abroadpay.ieasou.cn
  127. http:
  128. paths:
  129. - path: /
  130. pathType: Prefix
  131. backend:
  132. service:
  133. name: abroadpay-svc
  134. port:
  135. number: 8080
  136. ingressClassName: nginx