apiVersion: apps/v1 kind: Deployment metadata: name: {{ .Chart.Name }} labels: {{- include "oai-amf.labels" . | nindent 4 }} spec: replicas: {{ .Values.replicaCount }} selector: matchLabels: {{- include "oai-amf.selectorLabels" . | nindent 6 }} strategy: type: Recreate template: metadata: labels: {{- include "oai-amf.selectorLabels" . | nindent 8 }} {{- if .Values.multus.create }} annotations: k8s.v1.cni.cncf.io/networks: >- [{ "name": "{{ .Chart.Name }}-{{ .Values.namespace }}-n1-net1", "default-route": ["{{ .Values.multus.n1Gateway }}"] }] {{- end }} spec: securityContext: {{- toYaml .Values.podSecurityContext | nindent 8 }} containers: - name: tcpdump image: "{{ .Values.tcpdumpimage.repository }}:{{ .Values.tcpdumpimage.version }}" {{- if .Values.start.tcpdump}} command: - /bin/sh - -c - /usr/sbin/tcpdump -i any -w /pcap/{{ .Chart.Name }}_`date +%Y-%m-%d_%H_%M-%S-%Z`.pcap {{- else}} command: - /bin/sleep - infinity {{- end}} {{- if .Values.persistence.sharedvolume}} volumeMounts: - mountPath: "/pcap" name: cn5g-pv {{- end}} - name: amf image: "{{ .Values.nfimage.repository }}:{{ .Values.nfimage.version }}" {{- if .Values.resources.define}} resources: requests: memory: {{ .Values.resources.requests.memory | quote }} cpu: {{ .Values.resources.requests.cpu | quote }} limits: memory: {{ .Values.resources.limits.memory | quote }} cpu: {{ .Values.resources.limits.cpu | quote }} {{- end}} securityContext: {{- toYaml .Values.securityContext | nindent 12 }} volumeMounts: - mountPath: /scripts name: scripts {{- if .Values.readinessProbe}} readinessProbe: exec: command: - sh - /scripts/live-ready.sh initialDelaySeconds: 5 periodSeconds: 5 {{- end}} {{- if .Values.livenessProbe}} livenessProbe: exec: command: - sh - /scripts/live-ready.sh initialDelaySeconds: 5 periodSeconds: 5 {{- end}} ports: - containerPort: {{ .Values.service.sctpPort }} name: oai-amf protocol: SCTP - containerPort: {{ .Values.service.http1Port }} name: http1 protocol: TCP - containerPort: {{ .Values.service.http2Port }} name: http2 protocol: TCP {{- if .Values.start.amf}} {{- else}} command: - /bin/sleep - infinity {{- end}} env: - name: INSTANCE valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: instance - name: PID_DIRECTORY valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: pidDirectory - name: MCC valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: mcc - name: MNC valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: mnc - name: REGION_ID valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: regionId - name: AMF_SET_ID valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: amfsetId - name: SERVED_GUAMI_MCC_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: servedGuamiMcc0 - name: SERVED_GUAMI_MNC_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: servedGuamiMnc0 - name: SERVED_GUAMI_REGION_ID_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: servedGuamiRegionId0 - name: SERVED_GUAMI_AMF_SET_ID_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: servedGuamiAmfSetId0 - name: SERVED_GUAMI_MCC_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: servedGuamiMcc1 - name: SERVED_GUAMI_MNC_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: servedGuamiMnc1 - name: SERVED_GUAMI_REGION_ID_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: servedGuamiRegionId1 - name: SERVED_GUAMI_AMF_SET_ID_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: servedGuamiAmfSetId1 - name: PLMN_SUPPORT_MCC valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: plmnSupportMcc - name: PLMN_SUPPORT_MNC valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: plmnSupportMnc - name: PLMN_SUPPORT_TAC valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: plmnSupportTac - name: SST_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: sst0 - name: SD_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: sd0 - name: SST_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: sst1 - name: SD_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: sd1 - name: AMF_INTERFACE_NAME_FOR_NGAP valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: amfInterfaceNameForNGAP - name: AMF_INTERFACE_NAME_FOR_N11 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: amfInterfaceNameForN11 - name: SMF_INSTANCE_ID_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: smfInstanceId0 - name: SMF_IPV4_ADDR_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: smfIpv4Addr0 - name: SMF_HTTP_VERSION_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: smfHttpVersion0 - name: SMF_FQDN_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: smfFqdn0 - name: SELECTED_0 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: selected0 - name: SMF_INSTANCE_ID_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: smfInstanceId1 - name: SMF_IPV4_ADDR_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: smfIpv4Addr1 - name: SMF_HTTP_VERSION_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: smfHttpVersion1 - name: SMF_FQDN_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: smfFqdn1 - name: SELECTED_1 valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: selected1 - name: NRF_IPV4_ADDRESS valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: nrfIpv4Addr - name: NRF_PORT valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: nrfPort - name: NRF_API_VERSION valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: nrfApiVersion - name: NRF_FQDN valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: nrfFqdn - name: AUSF_IPV4_ADDRESS valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: ausfIpv4Addr - name: AUSF_PORT valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: ausfPort - name: AUSF_API_VERSION valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: ausfApiVersion - name: AUSF_FQDN valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: ausfFqdn - name: NF_REGISTRATION valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: nfRegistration - name: SMF_SELECTION valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: smfSelection - name: USE_FQDN_DNS valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: useFqdnDns - name: EXTERNAL_AUSF valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: externalAusf - name: MYSQL_SERVER valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: mySqlServer - name: MYSQL_USER valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: mySqlUser - name: MYSQL_PASS valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: mySqlPass - name: MYSQL_DB valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: mySqlDb - name: OPERATOR_KEY valueFrom: configMapKeyRef: name: {{ .Chart.Name }}-configmap key: operatorKey volumes: {{- if .Values.persistence.sharedvolume}} - name: cn5g-pv persistenceVolumeClaim: claimName: cn5g-pvc {{- end }} - name: scripts configMap: name: {{ .Chart.Name }}-health-cm dnsPolicy: ClusterFirst restartPolicy: Always serviceAccountName: {{ .Values.serviceAccount.name }} terminationGracePeriodSeconds: {{ .Values.terminationGracePeriodSeconds }} {{- if .Values.nodeSelector}} nodeSelector: {{- toYaml .Values.nodeSelector | nindent 4 }} {{- end }} {{- if .Values.nodeName}} nodeName: {{ .Values.nodeName }} {{- end }}