Развертывание панели управления Kubernetes существует, модуль не создается

Наша команда пыталась исправить некоторые проблемы с панелью управления Kubernetes, потому что она не могла сохранить секрет. Мы используем версию 1.8.3 приборной панели, а версию сервера Kubernetes - 1.9.

Чтобы проверить, можно ли решить эту проблему путем переустановки панели управления, я выполнил команду

kubectl delete -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.8.3/src/deploy/recommended/kubernetes-dashboard.yaml

Тогда команда

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.8.3/src/deploy/recommended/kubernetes-dashboard.yaml

Однако мне не удалось воссоздать модуль Kubernetes. Я не уверен, почему развертывание отказывается генерировать значения. Вот результат

kubectl describe deployment kubernetes-dashboard -n kube-system

показывая, что есть одна желаемая реплика, но не созданная.

Name:                   kubernetes-dashboard
Namespace:              kube-system
CreationTimestamp:      <hidden>
Labels:                 addonmanager.kubernetes.io/mode=Reconcile
                        k8s-app=kubernetes-dashboard
                        kubernetes.io/cluster-service=true
Annotations:            Selector:  k8s-app=kubernetes-dashboard
Replicas:               1 desired | 0 updated | 0 total | 0 available | 0 unavailable
StrategyType:           RollingUpdate
MinReadySeconds:        0
RollingUpdateStrategy:  25% max unavailable, 25% max surge
Pod Template:
  Labels:           k8s-app=kubernetes-dashboard
  Service Account:  kubernetes-dashboard
  Containers:
   kubernetes-dashboard:
    Image:      k8s-gcrio.azureedge.net/kubernetes-dashboard-amd64:v1.8.3
    Port:       8443/TCP
    Host Port:  0/TCP
    Args:
      --auto-generate-certificates
      --heapster-host=http://heapster.kube-system:80
    Limits:
      cpu:     500m
      memory:  500Mi
    Requests:
      cpu:        300m
      memory:     150Mi
    Liveness:     http-get https://:8443/ delay=30s timeout=30s period=10s #success=1 #failure=3
    Environment:  <none>
    Mounts:
      /certs from kubernetes-dashboard-certs (rw)
  Volumes:
   kubernetes-dashboard-certs:
    Type:        EmptyDir (a temporary directory that shares a pod's lifetime)
    Medium:
    SizeLimit:   <unset>
OldReplicaSets:  <none>
NewReplicaSet:   <none>
Events:          <none>

Как мне создать модуль и снова заставить приборную панель работать?

Обновление: я узнал, что мы создали информационную панель в пространстве имен под названием kubernetes-dashboard, поэтому я удалил все, что связано с пространством имен kubernetes-dashboard. Однако панель мониторинга все еще не создается при развертывании.

Я также обнаружил, что проблема заключается в том, что любой набор реплик или развертывание, которое должно создать модуль, не создает поды, когда они должны. Могу ли я отправить какую-либо информацию, чтобы получить помощь по этой проблеме?


person more whirlpools    schedule 12.08.2020    source источник
comment
Поды, которые не создаются после создания Deployment, обычно являются признаком kube-controller-manager неисправности. Кроме того, с приближением выпуска Kubernetes 1.19 вы используете версию (почти) на 10 версий ниже.   -  person BogdanL    schedule 13.08.2020


Ответы (1)


Советую указать на последний выпуск. То же самое и с версией Kubernetes - она ​​действительно устарела.

Попробуйте удалить панель управления Kubernetes вручную, а затем воссоздайте ее.

Выполните следующие команды:

$ kubectl delete deployment kubernetes-dashboard --namespace=kube-system

$ kubectl delete service kubernetes-dashboard --namespace=kube-system

$ kubectl delete role kubernetes-dashboard-minimal --namespace=kube-system

$ kubectl delete rolebinding kubernetes-dashboard-minimal --namespace=kube-system

$ kubectl delete sa kubernetes-dashboard --namespace=kube-system

$ kubectl delete secret kubernetes-dashboard-certs --namespace=kube-system

$ kubectl delete secret kubernetes-dashboard-key-holder --namespace=kube-system

Затем воссоздайте приборную панель.

Взгляните: kubernetes-dashboard, cluster-management.

person Malgorzata    schedule 13.08.2020
comment
Это не сработало. При развертывании модуль все еще не создается. Есть ли способ принудительно создать под? - person more whirlpools; 14.08.2020
comment
Вы можете принудительно удалить развертывания / поды с помощью флага --force. Но создание контейнеров зависит от множества различных факторов, вы не можете заставить его создать. Проверьте, проверьте событие и rs во всех пространствах имен: kubectl get event --all-namespaces kubectl get rs --all-namespaces. - person Malgorzata; 07.09.2020