Применение kubectl не позволяет использовать более 63 символов для значений metadata.labels. - PullRequest
1 голос
/ 01 апреля 2020

Я пытаюсь создать LoadBalancer в моем кластере OKE (Oracle Cloud Container Engine для Kubernetes). Я делаю kubectl apply -f для файла, но он выдаёт мне эту ошибку.

Недопустимое имя_службы службы: metadata.labels: Неверное значение: "ocid1.vcn.oc1. iad.xx ... xx ": должно быть не более 63 символов.

Вот файл yaml

apiVersion: v1
kind: Service
metadata:
  name: my-nginx-svc
  labels:
    app: nginx
  annotations:
    service.beta.kubernetes.io/oci-load-balancer-internal: "true"
    service.beta.kubernetes.io/oci-load-balancer-subnet1: "ocid1.subnet.oc1..aaaaaa...xxxxx"
spec:
  type: LoadBalancer
  ports:
  - port: 8100
  selector:
    app: nginx

Я вижу, что проблема в том, что значение для service.beta.kubernetes.io/oci-load-balancer-subnet1: более 63 символов Но я не могу изменить значение OCID. Есть ли исправление для этого?

1 Ответ

0 голосов
/ 01 апреля 2020

Насколько я знаю, для этого нет решения. Имена объектов в Kubernetes (и ваша аннотация создаст объект с заданным именем) должны быть DNS RF C жалоба, которая составляет <63 знака в части имени хоста. </p>

sources: - https://tools.ietf.org/html/rfc1123 - https://kubernetes.io/docs/concepts/overview/working-with-objects/names/

...