Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save Pothulapati/ed109b88944f4f2574679e67bcc62e7d to your computer and use it in GitHub Desktop.
Save Pothulapati/ed109b88944f4f2574679e67bcc62e7d to your computer and use it in GitHub Desktop.
{{with .Values -}}
---
###
### Proxy Injector
###
---
kind: Deployment
apiVersion: apps/v1
metadata:
name: linkerd-proxy-injector
namespace: {{.Namespace}}
labels:
{{.ControllerComponentLabel}}: proxy-injector
annotations:
{{.CreatedByAnnotation}}: {{.CliVersion}}
spec:
replicas: {{.ControllerReplicas}}
selector:
matchLabels:
{{.ControllerComponentLabel}}: proxy-injector
template:
metadata:
labels:
{{.ControllerComponentLabel}}: proxy-injector
annotations:
{{.CreatedByAnnotation}}: {{.CliVersion}}
spec:
serviceAccountName: linkerd-proxy-injector
containers:
- name: proxy-injector
image: {{.ControllerImage}}
imagePullPolicy: {{.ImagePullPolicy}}
args:
- "proxy-injector"
- "-log-level={{.ControllerLogLevel}}"
ports:
- name: proxy-injector
containerPort: 8443
volumeMounts:
- name: config
mountPath: /var/run/linkerd/config
- name: tls
mountPath: /var/run/linkerd/tls
readOnly: true
livenessProbe:
httpGet:
path: /ping
port: 9995
initialDelaySeconds: 10
readinessProbe:
httpGet:
path: /ready
port: 9995
failureThreshold: 7
{{ with .ProxyInjectorResources -}}
{{- template "resources" . }}
{{ end -}}
securityContext:
runAsUser: {{.ControllerUID}}
volumes:
- name: config
configMap:
name: linkerd-config
- name: tls
secret:
secretName: linkerd-proxy-injector-tls
{{- if .HighAvailability}}
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchExpressions:
- key: {{.ControllerComponentLabel}}
operator: In
values:
- proxy-injector
topologyKey: failure-domain.beta.kubernetes.io/zone
{{- if .RequiredHostAntiAffinity}}
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: {{.ControllerComponentLabel}}
operator: In
values:
- proxy-injector
topologyKey: kubernetes.io/hostname
{{- else}}
- weight: 100
podAffinityTerm:
labelSelector:
matchExpressions:
- key: {{.ControllerComponentLabel}}
operator: In
values:
- proxy-injector
topologyKey: kubernetes.io/hostname
{{ end }}
{{ end }}
---
kind: Service
apiVersion: v1
metadata:
name: linkerd-proxy-injector
namespace: {{.Namespace}}
labels:
{{.ControllerComponentLabel}}: proxy-injector
annotations:
{{.CreatedByAnnotation}}: {{.CliVersion}}
spec:
type: ClusterIP
selector:
{{.ControllerComponentLabel}}: proxy-injector
ports:
- name: proxy-injector
port: 443
targetPort: proxy-injector
{{end -}}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment