Kuberentes - Minikube kubectl ошибка: вы должны войти в систему на сервере - PullRequest
0 голосов
/ 11 июня 2018

Я следую простому учебнику Kuberentes Minikube по Linux Mint 18.3 и пытаюсь создать том из следующего руководства по началу работы:

https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/

minikube start --vm-driver=virtualbox
Starting local Kubernetes v1.10.0 cluster...
Starting VM...
Getting VM IP address...
Moving files into cluster...
Setting up certs...
Connecting to cluster...
Setting up kubeconfig...
Starting cluster components...
Kubectl is now configured to use the cluster.
Loading cached images from config file.

kubectl config use-context minikube
Switched to context "minikube"

kubectl create -f https://k8s.io/docs/tasks/run-application/mysql-pv.yaml
error: You must be logged in to the server (the server has asked for the client to provide credentials)

Почему яполучить эту ошибку?Тщательно изучил документы и github, но не смог найти ответ.

1 Ответ

0 голосов
/ 12 июня 2018

Я мог бы успешно опробовать приведенный выше пример в minikube v0.23.0 с Kuberebtes версии 1.8.Но причина сбоя в v1.10, как я полагаю, заключается в том, что Аутентификация по умолчанию и Авторизация для API Kubelet установлены неправильно.Вы должны установить устаревшие значения по умолчанию для KubeletConfiguration, чтобы сохранить API командной строки.

Это фрагмент кода Kubernetes, который устанавливает эти стандартные значения по умолчанию.https://github.com/kubernetes/kubernetes/blob/de8cc313554b7f7d41509ca620f71439cd8729eb/cmd/kubelet/app/options/options.go#L281-L293

Выполнение приведенной ниже команды должно установить эти значения:

minikube start --extra-config=kubelet.Authentication.Anonymous.Enabled=true 
    --extra-config=kubelet.Authentication.Webhook.Enabled=false 
    --extra-config=kubelet.Authorization.Mode=AlwaysAllow
...