istio.io/istio@v0.0.0-20240520182934-d79c90f27776/manifests/charts/istio-control/istio-discovery/templates/service.yaml (about)

     1  apiVersion: v1
     2  kind: Service
     3  metadata:
     4    name: istiod{{- if not (eq .Values.revision "") }}-{{ .Values.revision }}{{- end }}
     5    namespace: {{ .Release.Namespace }}
     6    {{- if .Values.pilot.serviceAnnotations }}
     7    annotations:
     8  {{ toYaml .Values.pilot.serviceAnnotations | indent 4 }}
     9    {{- end }}
    10    labels:
    11      istio.io/rev: {{ .Values.revision | default "default" | quote }}
    12      install.operator.istio.io/owning-resource: {{ .Values.ownerName | default "unknown" }}
    13      operator.istio.io/component: "Pilot"
    14      app: istiod
    15      istio: pilot
    16      release: {{ .Release.Name }}
    17  spec:
    18    ports:
    19      - port: 15010
    20        name: grpc-xds # plaintext
    21        protocol: TCP
    22      - port: 15012
    23        name: https-dns # mTLS with k8s-signed cert
    24        protocol: TCP
    25      - port: 443
    26        name: https-webhook # validation and injection
    27        targetPort: 15017
    28        protocol: TCP
    29      - port: 15014
    30        name: http-monitoring # prometheus stats
    31        protocol: TCP
    32    selector:
    33      app: istiod
    34      {{- if ne .Values.revision "" }}
    35      istio.io/rev: {{ .Values.revision | quote }}
    36      {{- else }}
    37      # Label used by the 'default' service. For versioned deployments we match with app and version.
    38      # This avoids default deployment picking the canary
    39      istio: pilot
    40      {{- end }}
    41    {{- if .Values.pilot.ipFamilyPolicy }}
    42    ipFamilyPolicy: {{ .Values.pilot.ipFamilyPolicy }}
    43    {{- end }}
    44    {{- if .Values.pilot.ipFamilies }}
    45    ipFamilies:
    46    {{- range .Values.pilot.ipFamilies }}
    47    - {{ . }}
    48    {{- end }}
    49    {{- end }}
    50  ---