mirror of https://github.com/kubernetes/kops.git
				
				
				
			
		
			
				
	
	
		
			543 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			543 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
{{- $etcd_scheme := EtcdScheme }}
 | 
						|
# This ConfigMap is used to configure a self-hosted Calico installation.
 | 
						|
kind: ConfigMap
 | 
						|
apiVersion: v1
 | 
						|
metadata:
 | 
						|
  name: calico-config
 | 
						|
  namespace: kube-system
 | 
						|
data:
 | 
						|
  # The calico-etcd PetSet service IP:port
 | 
						|
  etcd_endpoints: "{{ $cluster := index .EtcdClusters 0 -}}
 | 
						|
                      {{- range $j, $member := $cluster.Members -}}
 | 
						|
                          {{- if $j }},{{ end -}}
 | 
						|
                          {{ $etcd_scheme }}://etcd-{{ $member.Name }}.internal.{{ ClusterName }}:4001
 | 
						|
                      {{- end }}"
 | 
						|
 | 
						|
  # Configure the Calico backend to use.
 | 
						|
  calico_backend: "bird"
 | 
						|
 | 
						|
  # The CNI network configuration to install on each node.
 | 
						|
  cni_network_config: |-
 | 
						|
    {
 | 
						|
      "name": "k8s-pod-network",
 | 
						|
      "cniVersion": "0.3.0",
 | 
						|
      "plugins": [
 | 
						|
        {
 | 
						|
          "type": "calico",
 | 
						|
          "etcd_endpoints": "__ETCD_ENDPOINTS__",
 | 
						|
          {{- if eq $etcd_scheme "https" }}
 | 
						|
          "etcd_ca_cert_file": "/srv/kubernetes/calico/ca.pem",
 | 
						|
          "etcd_cert_file": "/srv/kubernetes/calico/calico-client.pem",
 | 
						|
          "etcd_key_file": "/srv/kubernetes/calico/calico-client-key.pem",
 | 
						|
          "etcd_scheme": "https",
 | 
						|
          {{- end }}
 | 
						|
          "log_level": "info",
 | 
						|
          {{- if .Networking.Calico.MTU }}
 | 
						|
          "mtu": {{- or .Networking.Calico.MTU }},
 | 
						|
          {{- end }}
 | 
						|
          "ipam": {
 | 
						|
            "type": "calico-ipam"
 | 
						|
          },
 | 
						|
          "policy": {
 | 
						|
            "type": "k8s",
 | 
						|
            "k8s_api_root": "https://__KUBERNETES_SERVICE_HOST__:__KUBERNETES_SERVICE_PORT__",
 | 
						|
            "k8s_auth_token": "__SERVICEACCOUNT_TOKEN__"
 | 
						|
          },
 | 
						|
          "kubernetes": {
 | 
						|
            "kubeconfig": "/etc/cni/net.d/__KUBECONFIG_FILENAME__"
 | 
						|
          }
 | 
						|
        },
 | 
						|
        {
 | 
						|
          "type": "portmap",
 | 
						|
          "snat": true,
 | 
						|
          "capabilities": {"portMappings": true}
 | 
						|
        }
 | 
						|
      ]
 | 
						|
    }
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
kind: ClusterRole
 | 
						|
apiVersion: rbac.authorization.k8s.io/v1beta1
 | 
						|
metadata:
 | 
						|
  name: calico
 | 
						|
  labels:
 | 
						|
    role.kubernetes.io/networking: "1"
 | 
						|
rules:
 | 
						|
- apiGroups:
 | 
						|
  - ""
 | 
						|
  resources:
 | 
						|
  - pods
 | 
						|
  - namespaces
 | 
						|
  - nodes
 | 
						|
  verbs:
 | 
						|
  - get
 | 
						|
  - list
 | 
						|
  - watch
 | 
						|
- apiGroups:
 | 
						|
  - extensions
 | 
						|
  resources:
 | 
						|
  - networkpolicies
 | 
						|
  verbs:
 | 
						|
  - get
 | 
						|
  - list
 | 
						|
  - watch
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
apiVersion: v1
 | 
						|
kind: ServiceAccount
 | 
						|
metadata:
 | 
						|
  name: calico
 | 
						|
  namespace: kube-system
 | 
						|
  labels:
 | 
						|
    role.kubernetes.io/networking: "1"
 | 
						|
---
 | 
						|
 | 
						|
kind: ClusterRoleBinding
 | 
						|
apiVersion: rbac.authorization.k8s.io/v1beta1
 | 
						|
metadata:
 | 
						|
  name: calico
 | 
						|
  labels:
 | 
						|
    role.kubernetes.io/networking: "1"
 | 
						|
roleRef:
 | 
						|
  apiGroup: rbac.authorization.k8s.io
 | 
						|
  kind: ClusterRole
 | 
						|
  name: calico
 | 
						|
subjects:
 | 
						|
- kind: ServiceAccount
 | 
						|
  name: calico
 | 
						|
  namespace: kube-system
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
# This manifest installs the calico/node container, as well
 | 
						|
# as the Calico CNI plugins and network config on
 | 
						|
# each master and worker node in a Kubernetes cluster.
 | 
						|
kind: DaemonSet
 | 
						|
apiVersion: extensions/v1beta1
 | 
						|
metadata:
 | 
						|
  name: calico-node
 | 
						|
  namespace: kube-system
 | 
						|
  labels:
 | 
						|
    k8s-app: calico-node
 | 
						|
    role.kubernetes.io/networking: "1"
 | 
						|
spec:
 | 
						|
  selector:
 | 
						|
    matchLabels:
 | 
						|
      k8s-app: calico-node
 | 
						|
  updateStrategy:
 | 
						|
    rollingUpdate:
 | 
						|
      maxUnavailable: 1
 | 
						|
    type: RollingUpdate
 | 
						|
  template:
 | 
						|
    metadata:
 | 
						|
      labels:
 | 
						|
        k8s-app: calico-node
 | 
						|
        role.kubernetes.io/networking: "1"
 | 
						|
      annotations:
 | 
						|
        scheduler.alpha.kubernetes.io/critical-pod: ''
 | 
						|
    spec:
 | 
						|
      hostNetwork: true
 | 
						|
      serviceAccountName: calico
 | 
						|
      tolerations:
 | 
						|
      - key: CriticalAddonsOnly
 | 
						|
        operator: Exists
 | 
						|
      - effect: NoExecute
 | 
						|
        operator: Exists
 | 
						|
      - effect: NoSchedule
 | 
						|
        operator: Exists
 | 
						|
      # Minimize downtime during a rolling upgrade or deletion; tell Kubernetes to do a "force
 | 
						|
      # deletion": https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods.
 | 
						|
      terminationGracePeriodSeconds: 0
 | 
						|
      containers:
 | 
						|
        # Runs calico/node container on each Kubernetes node.  This
 | 
						|
        # container programs network policy and routes on each
 | 
						|
        # host.
 | 
						|
        - name: calico-node
 | 
						|
          image: quay.io/calico/node:v2.6.7
 | 
						|
          resources:
 | 
						|
            requests:
 | 
						|
              cpu: 10m
 | 
						|
          env:
 | 
						|
            # The location of the Calico etcd cluster.
 | 
						|
            - name: ETCD_ENDPOINTS
 | 
						|
              valueFrom:
 | 
						|
                configMapKeyRef:
 | 
						|
                  name: calico-config
 | 
						|
                  key: etcd_endpoints
 | 
						|
            {{- if eq $etcd_scheme "https" }}
 | 
						|
            - name: ETCD_CERT_FILE
 | 
						|
              value: /certs/calico-client.pem
 | 
						|
            - name: ETCD_KEY_FILE
 | 
						|
              value: /certs/calico-client-key.pem
 | 
						|
            - name: ETCD_CA_CERT_FILE
 | 
						|
              value: /certs/ca.pem
 | 
						|
            {{- end }}
 | 
						|
            # Enable BGP.  Disable to enforce policy only.
 | 
						|
            - name: CALICO_NETWORKING_BACKEND
 | 
						|
              valueFrom:
 | 
						|
                configMapKeyRef:
 | 
						|
                  name: calico-config
 | 
						|
                  key: calico_backend
 | 
						|
            # Configure the IP Pool from which Pod IPs will be chosen.
 | 
						|
            - name: CALICO_IPV4POOL_CIDR
 | 
						|
              value: "{{ .KubeControllerManager.ClusterCIDR }}"
 | 
						|
            - name: CALICO_IPV4POOL_IPIP
 | 
						|
              value: "{{- if and (eq .CloudProvider "aws") (.Networking.Calico.CrossSubnet) -}}cross-subnet{{- else -}}always{{- end -}}"
 | 
						|
            # Cluster type to identify the deployment type
 | 
						|
            - name: CLUSTER_TYPE
 | 
						|
              value: "kops,bgp"
 | 
						|
            # Disable file logging so `kubectl logs` works.
 | 
						|
            - name: CALICO_DISABLE_FILE_LOGGING
 | 
						|
              value: "true"
 | 
						|
            # Set noderef for node controller.
 | 
						|
            - name: CALICO_K8S_NODE_REF
 | 
						|
              valueFrom:
 | 
						|
                fieldRef:
 | 
						|
                  fieldPath: spec.nodeName
 | 
						|
            # Auto-detect the BGP IP address.
 | 
						|
            - name: IP
 | 
						|
              value: ""
 | 
						|
            # Disable IPv6 on Kubernetes.
 | 
						|
            - name: FELIX_IPV6SUPPORT
 | 
						|
              value: "false"
 | 
						|
            # Set Felix logging to the desired level
 | 
						|
            - name: FELIX_LOGSEVERITYSCREEN
 | 
						|
              value: "{{- or .Networking.Calico.LogSeverityScreen "info" }}"
 | 
						|
            # Set to enable the experimental Prometheus metrics server
 | 
						|
            - name: FELIX_PROMETHEUSMETRICSENABLED
 | 
						|
              value: "{{- or .Networking.Calico.PrometheusMetricsEnabled "false" }}"
 | 
						|
            # TCP port that the Prometheus metrics server should bind to
 | 
						|
            - name: FELIX_PROMETHEUSMETRICSPORT
 | 
						|
              value: "{{- or .Networking.Calico.PrometheusMetricsPort "9091" }}"
 | 
						|
            # Enable Prometheus Go runtime metrics collection
 | 
						|
            - name: FELIX_PROMETHEUSGOMETRICSENABLED
 | 
						|
              value: "{{- or .Networking.Calico.PrometheusGoMetricsEnabled "true" }}"
 | 
						|
            # Enable Prometheus process metrics collection
 | 
						|
            - name: FELIX_PROMETHEUSPROCESSMETRICSENABLED
 | 
						|
              value: "{{- or .Networking.Calico.PrometheusProcessMetricsEnabled "true" }}"
 | 
						|
            - name: FELIX_HEALTHENABLED
 | 
						|
              value: "true"
 | 
						|
            {{- if .Networking.Calico.MTU }}
 | 
						|
            - name: FELIX_IPINIPMTU
 | 
						|
              value: "{{- or .Networking.Calico.MTU }}"
 | 
						|
            {{- end}}
 | 
						|
          securityContext:
 | 
						|
            privileged: true
 | 
						|
          volumeMounts:
 | 
						|
            - mountPath: /lib/modules
 | 
						|
              name: lib-modules
 | 
						|
              readOnly: true
 | 
						|
            - mountPath: /var/run/calico
 | 
						|
              name: var-run-calico
 | 
						|
              readOnly: false
 | 
						|
            # Necessary for gossip based DNS
 | 
						|
            - mountPath: /etc/hosts
 | 
						|
              name: etc-hosts
 | 
						|
              readOnly: true
 | 
						|
            {{- if eq $etcd_scheme "https" }}
 | 
						|
            - mountPath: /certs
 | 
						|
              name: calico
 | 
						|
              readOnly: true
 | 
						|
            {{- end }}
 | 
						|
        # This container installs the Calico CNI binaries
 | 
						|
        # and CNI network config file on each node.
 | 
						|
        - name: install-cni
 | 
						|
          image: quay.io/calico/cni:v1.11.2
 | 
						|
          resources:
 | 
						|
            requests:
 | 
						|
              cpu: 10m
 | 
						|
          imagePullPolicy: Always
 | 
						|
          command: ["/install-cni.sh"]
 | 
						|
          env:
 | 
						|
            # The name of calico config file
 | 
						|
            - name: CNI_CONF_NAME
 | 
						|
              value: 10-calico.conflist
 | 
						|
            # The location of the Calico etcd cluster.
 | 
						|
            - name: ETCD_ENDPOINTS
 | 
						|
              valueFrom:
 | 
						|
                configMapKeyRef:
 | 
						|
                  name: calico-config
 | 
						|
                  key: etcd_endpoints
 | 
						|
            # The CNI network config to install on each node.
 | 
						|
            - name: CNI_NETWORK_CONFIG
 | 
						|
              valueFrom:
 | 
						|
                configMapKeyRef:
 | 
						|
                  name: calico-config
 | 
						|
                  key: cni_network_config
 | 
						|
          volumeMounts:
 | 
						|
            - mountPath: /host/opt/cni/bin
 | 
						|
              name: cni-bin-dir
 | 
						|
            - mountPath: /host/etc/cni/net.d
 | 
						|
              name: cni-net-dir
 | 
						|
            # Necessary for gossip based DNS
 | 
						|
            - mountPath: /etc/hosts
 | 
						|
              name: etc-hosts
 | 
						|
              readOnly: true
 | 
						|
      volumes:
 | 
						|
        # Used by calico/node.
 | 
						|
        - name: lib-modules
 | 
						|
          hostPath:
 | 
						|
            path: /lib/modules
 | 
						|
        - name: var-run-calico
 | 
						|
          hostPath:
 | 
						|
            path: /var/run/calico
 | 
						|
        # Used to install CNI.
 | 
						|
        - name: cni-bin-dir
 | 
						|
          hostPath:
 | 
						|
            path: /opt/cni/bin
 | 
						|
        - name: cni-net-dir
 | 
						|
          hostPath:
 | 
						|
            path: /etc/cni/net.d
 | 
						|
        - name: etc-hosts
 | 
						|
          hostPath:
 | 
						|
            path: /etc/hosts
 | 
						|
        {{- if eq $etcd_scheme "https" }}
 | 
						|
        - name: calico
 | 
						|
          hostPath:
 | 
						|
            path: /srv/kubernetes/calico
 | 
						|
        {{- end }}
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
# This manifest deploys the Calico Kubernetes controllers.
 | 
						|
# See https://github.com/projectcalico/kube-controllers
 | 
						|
apiVersion: extensions/v1beta1
 | 
						|
kind: Deployment
 | 
						|
metadata:
 | 
						|
  name: calico-kube-controllers
 | 
						|
  namespace: kube-system
 | 
						|
  labels:
 | 
						|
    k8s-app: calico-kube-controllers
 | 
						|
    role.kubernetes.io/networking: "1"
 | 
						|
spec:
 | 
						|
  # The controllers can only have a single active instance.
 | 
						|
  replicas: 1
 | 
						|
  template:
 | 
						|
    metadata:
 | 
						|
      name: calico-kube-controllers
 | 
						|
      namespace: kube-system
 | 
						|
      labels:
 | 
						|
        k8s-app: calico-kube-controllers
 | 
						|
        role.kubernetes.io/networking: "1"
 | 
						|
      annotations:
 | 
						|
        scheduler.alpha.kubernetes.io/critical-pod: ''
 | 
						|
    spec:
 | 
						|
      # The controllers must run in the host network namespace so that
 | 
						|
      # it isn't governed by policy that would prevent it from working.
 | 
						|
      hostNetwork: true
 | 
						|
      serviceAccountName: calico
 | 
						|
      tolerations:
 | 
						|
      - key: node-role.kubernetes.io/master
 | 
						|
        effect: NoSchedule
 | 
						|
      - key: CriticalAddonsOnly
 | 
						|
        operator: Exists
 | 
						|
      containers:
 | 
						|
        - name: calico-kube-controllers
 | 
						|
          image: quay.io/calico/kube-controllers:v1.0.3
 | 
						|
          resources:
 | 
						|
            requests:
 | 
						|
              cpu: 10m
 | 
						|
          env:
 | 
						|
            # By default only policy, profile, workloadendpoint are turned
 | 
						|
            # on, node controller will decommission nodes that do not exist anymore
 | 
						|
            # this and CALICO_K8S_NODE_REF in calico-node fixes #3224, but invalid nodes that are
 | 
						|
            # already registered in calico needs to be deleted manually, see
 | 
						|
            # https://docs.projectcalico.org/v2.6/usage/decommissioning-a-node
 | 
						|
            - name: ENABLED_CONTROLLERS
 | 
						|
              value: policy,profile,workloadendpoint,node
 | 
						|
            # The location of the Calico etcd cluster.
 | 
						|
            - name: ETCD_ENDPOINTS
 | 
						|
              valueFrom:
 | 
						|
                configMapKeyRef:
 | 
						|
                  name: calico-config
 | 
						|
                  key: etcd_endpoints
 | 
						|
            {{- if eq $etcd_scheme "https" }}
 | 
						|
            - name: ETCD_CERT_FILE
 | 
						|
              value: /certs/calico-client.pem
 | 
						|
            - name: ETCD_KEY_FILE
 | 
						|
              value: /certs/calico-client-key.pem
 | 
						|
            - name: ETCD_CA_CERT_FILE
 | 
						|
              value: /certs/ca.pem
 | 
						|
          volumeMounts:
 | 
						|
            - mountPath: /certs
 | 
						|
              name: calico
 | 
						|
              readOnly: true
 | 
						|
            {{- end }}
 | 
						|
      volumes:
 | 
						|
        - name: etc-hosts
 | 
						|
          hostPath:
 | 
						|
            path: /etc/hosts
 | 
						|
        {{- if eq $etcd_scheme "https" }}
 | 
						|
        - name: calico
 | 
						|
          hostPath:
 | 
						|
            path: /srv/kubernetes/calico
 | 
						|
        {{- end }}
 | 
						|
---
 | 
						|
 | 
						|
# This deployment turns off the old "policy-controller". It should remain at 0 replicas, and then
 | 
						|
# be removed entirely once the new kube-controllers deployment has been deployed above.
 | 
						|
apiVersion: extensions/v1beta1
 | 
						|
kind: Deployment
 | 
						|
metadata:
 | 
						|
  name: calico-policy-controller
 | 
						|
  namespace: kube-system
 | 
						|
  labels:
 | 
						|
    k8s-app: calico-policy
 | 
						|
spec:
 | 
						|
  # Turn this deployment off in favor of the kube-controllers deployment above.
 | 
						|
  replicas: 0
 | 
						|
  strategy:
 | 
						|
    type: Recreate
 | 
						|
  template:
 | 
						|
    metadata:
 | 
						|
      name: calico-policy-controller
 | 
						|
      namespace: kube-system
 | 
						|
      labels:
 | 
						|
        k8s-app: calico-policy
 | 
						|
    spec:
 | 
						|
      hostNetwork: true
 | 
						|
      serviceAccountName: calico
 | 
						|
      containers:
 | 
						|
        - name: calico-policy-controller
 | 
						|
          # This shouldn't get updated, since this is the last version we shipped that should be used.
 | 
						|
          image: quay.io/calico/kube-policy-controller:v0.7.0
 | 
						|
          env:
 | 
						|
            # The location of the Calico etcd cluster.
 | 
						|
            - name: ETCD_ENDPOINTS
 | 
						|
              valueFrom:
 | 
						|
                configMapKeyRef:
 | 
						|
                  name: calico-config
 | 
						|
                  key: etcd_endpoints
 | 
						|
            {{- if eq $etcd_scheme "https" }}
 | 
						|
            - name: ETCD_CERT_FILE
 | 
						|
              value: /certs/calico-client.pem
 | 
						|
            - name: ETCD_KEY_FILE
 | 
						|
              value: /certs/calico-client-key.pem
 | 
						|
            - name: ETCD_CA_CERT_FILE
 | 
						|
              value: /certs/ca.pem
 | 
						|
            {{- end }}
 | 
						|
          volumeMounts:
 | 
						|
            # Necessary for gossip based DNS
 | 
						|
            - mountPath: /etc/hosts
 | 
						|
              name: etc-hosts
 | 
						|
              readOnly: true
 | 
						|
            {{- if eq $etcd_scheme "https" }}
 | 
						|
            - mountPath: /certs
 | 
						|
              name: calico
 | 
						|
              readOnly: true
 | 
						|
            {{ end }}
 | 
						|
      volumes:
 | 
						|
        - name: etc-hosts
 | 
						|
          hostPath:
 | 
						|
            path: /etc/hosts
 | 
						|
        {{- if eq $etcd_scheme "https" }}
 | 
						|
        - name: calico
 | 
						|
          hostPath:
 | 
						|
            path: /srv/kubernetes/calico
 | 
						|
        {{- end }}
 | 
						|
 | 
						|
{{ if and (eq .CloudProvider "aws") (.Networking.Calico.CrossSubnet) -}}
 | 
						|
# This manifest installs the k8s-ec2-srcdst container, which disables
 | 
						|
# src/dst ip checks to allow BGP to function for calico for hosts within subnets
 | 
						|
# This only applies for AWS environments.
 | 
						|
---
 | 
						|
 | 
						|
kind: ClusterRole
 | 
						|
apiVersion: rbac.authorization.k8s.io/v1beta1
 | 
						|
metadata:
 | 
						|
  name: k8s-ec2-srcdst
 | 
						|
  labels:
 | 
						|
    role.kubernetes.io/networking: "1"
 | 
						|
rules:
 | 
						|
- apiGroups:
 | 
						|
  - ""
 | 
						|
  resources:
 | 
						|
  - nodes
 | 
						|
  verbs:
 | 
						|
  - get
 | 
						|
  - list
 | 
						|
  - watch
 | 
						|
  - update
 | 
						|
  - patch
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
apiVersion: v1
 | 
						|
kind: ServiceAccount
 | 
						|
metadata:
 | 
						|
  name: k8s-ec2-srcdst
 | 
						|
  namespace: kube-system
 | 
						|
  labels:
 | 
						|
    role.kubernetes.io/networking: "1"
 | 
						|
---
 | 
						|
 | 
						|
kind: ClusterRoleBinding
 | 
						|
apiVersion: rbac.authorization.k8s.io/v1beta1
 | 
						|
metadata:
 | 
						|
  name: k8s-ec2-srcdst
 | 
						|
  labels:
 | 
						|
    role.kubernetes.io/networking: "1"
 | 
						|
roleRef:
 | 
						|
  apiGroup: rbac.authorization.k8s.io
 | 
						|
  kind: ClusterRole
 | 
						|
  name: k8s-ec2-srcdst
 | 
						|
subjects:
 | 
						|
- kind: ServiceAccount
 | 
						|
  name: k8s-ec2-srcdst
 | 
						|
  namespace: kube-system
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
apiVersion: extensions/v1beta1
 | 
						|
kind: Deployment
 | 
						|
metadata:
 | 
						|
  name: k8s-ec2-srcdst
 | 
						|
  namespace: kube-system
 | 
						|
  labels:
 | 
						|
    k8s-app: k8s-ec2-srcdst
 | 
						|
    role.kubernetes.io/networking: "1"
 | 
						|
spec:
 | 
						|
  replicas: 1
 | 
						|
  selector:
 | 
						|
    matchLabels:
 | 
						|
      k8s-app: k8s-ec2-srcdst
 | 
						|
  template:
 | 
						|
    metadata:
 | 
						|
      labels:
 | 
						|
        k8s-app: k8s-ec2-srcdst
 | 
						|
        role.kubernetes.io/networking: "1"
 | 
						|
      annotations:
 | 
						|
        scheduler.alpha.kubernetes.io/critical-pod: ''
 | 
						|
    spec:
 | 
						|
      hostNetwork: true
 | 
						|
      tolerations:
 | 
						|
      - key: node-role.kubernetes.io/master
 | 
						|
        effect: NoSchedule
 | 
						|
      - key: CriticalAddonsOnly
 | 
						|
        operator: Exists
 | 
						|
      serviceAccountName: k8s-ec2-srcdst
 | 
						|
      containers:
 | 
						|
        - image: ottoyiu/k8s-ec2-srcdst:v0.2.1
 | 
						|
          name: k8s-ec2-srcdst
 | 
						|
          resources:
 | 
						|
            requests:
 | 
						|
              cpu: 10m
 | 
						|
              memory: 64Mi
 | 
						|
          env:
 | 
						|
            - name: AWS_REGION
 | 
						|
              value: {{ Region }}
 | 
						|
          volumeMounts:
 | 
						|
            - name: ssl-certs
 | 
						|
              mountPath: "/etc/ssl/certs/ca-certificates.crt"
 | 
						|
              readOnly: true
 | 
						|
          imagePullPolicy: "Always"
 | 
						|
      volumes:
 | 
						|
        - name: ssl-certs
 | 
						|
          hostPath:
 | 
						|
            path: "/etc/ssl/certs/ca-certificates.crt"
 | 
						|
      nodeSelector:
 | 
						|
        node-role.kubernetes.io/master: ""
 | 
						|
{{- end -}}
 |