traefik-ds.yaml 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. apiVersion: apps/v1
  2. kind: DaemonSet
  3. metadata:
  4. labels:
  5. app.kubernetes.io/instance: traefik-kube-system
  6. app.kubernetes.io/name: traefik
  7. name: traefik
  8. namespace: kube-system
  9. spec:
  10. selector:
  11. matchLabels:
  12. app.kubernetes.io/instance: traefik-kube-system
  13. app.kubernetes.io/name: traefik
  14. template:
  15. metadata:
  16. labels:
  17. app.kubernetes.io/instance: traefik-kube-system
  18. app.kubernetes.io/name: traefik
  19. spec:
  20. affinity:
  21. nodeAffinity:
  22. requiredDuringSchedulingIgnoredDuringExecution:
  23. nodeSelectorTerms:
  24. - matchExpressions:
  25. - key: onecloud.yunion.io/controller
  26. operator: In
  27. values:
  28. - enable
  29. containers:
  30. - args:
  31. # - --global.checknewversion
  32. # - --global.sendanonymoususage
  33. - --entrypoints.web.address=:80/tcp
  34. - --entrypoints.websecure.address=:443/tcp
  35. - --entrypoints.web.http.redirections.entrypoint.to=websecure
  36. - --entrypoints.web.http.redirections.entrypoint.scheme=https
  37. - --entrypoints.web.http.redirections.entrypoint.permanent=true
  38. - --api.dashboard=false
  39. - --ping=false
  40. - --metrics.prometheus=true
  41. - --metrics.prometheus.entrypoint=metrics
  42. - --providers.kubernetescrd
  43. - --providers.kubernetesingress
  44. - --entrypoints.websecure.http.tls=true
  45. - --serverstransport.insecureskipverify=true
  46. env:
  47. - name: POD_NAME
  48. valueFrom:
  49. fieldRef:
  50. apiVersion: v1
  51. fieldPath: metadata.name
  52. - name: POD_NAMESPACE
  53. valueFrom:
  54. fieldRef:
  55. apiVersion: v1
  56. fieldPath: metadata.namespace
  57. image: rancher/mirrored-library-traefik:2.10.5
  58. imagePullPolicy: IfNotPresent
  59. name: traefik
  60. ports:
  61. - containerPort: 80
  62. name: web
  63. protocol: TCP
  64. - containerPort: 443
  65. name: websecure
  66. protocol: TCP
  67. resources: {}
  68. securityContext:
  69. allowPrivilegeEscalation: false
  70. capabilities:
  71. add:
  72. - NET_BIND_SERVICE
  73. drop:
  74. - ALL
  75. readOnlyRootFilesystem: true
  76. runAsGroup: 0
  77. runAsNonRoot: false
  78. runAsUser: 0
  79. terminationMessagePath: /dev/termination-log
  80. terminationMessagePolicy: File
  81. volumeMounts:
  82. - mountPath: /data
  83. name: data
  84. - mountPath: /tmp
  85. name: tmp
  86. dnsPolicy: ClusterFirst
  87. hostNetwork: true
  88. priorityClassName: system-cluster-critical
  89. restartPolicy: Always
  90. schedulerName: default-scheduler
  91. securityContext:
  92. fsGroupChangePolicy: OnRootMismatch
  93. runAsGroup: 65532
  94. runAsNonRoot: true
  95. runAsUser: 65532
  96. serviceAccount: traefik
  97. serviceAccountName: traefik
  98. terminationGracePeriodSeconds: 60
  99. tolerations:
  100. - key: CriticalAddonsOnly
  101. operator: Exists
  102. - effect: NoSchedule
  103. key: node-role.kubernetes.io/control-plane
  104. operator: Exists
  105. - effect: NoSchedule
  106. key: node-role.kubernetes.io/master
  107. operator: Exists
  108. volumes:
  109. - emptyDir: {}
  110. name: data
  111. - emptyDir: {}
  112. name: tmp
  113. updateStrategy:
  114. rollingUpdate:
  115. maxSurge: 0
  116. maxUnavailable: 1
  117. type: RollingUpdate