web-dev-qa-db-fra.com

Erreur Helm: Erreur: le serveur a demandé au client de fournir des informations d'identification

J'ai installé Rancher 2 et j'ai créé un groupe Kubettes de VM interne (NO AWS/GCloud).

Le cluster est opérationnel.

Je me suis connecté à l'un des nœuds.

1) Installé Kubectl et exécuté Kubectl Cluster-Info. Il a énuméré mes informations sur les cluster correctement.

2) Helm installée

curl https://raw.githubusercontent.com/helm/helm/master/scripts/get > get_helm.sh
chmod 700 get_helm.sh
./get_helm.sh

root@lnmymachine # helm version
Client: &version.Version{SemVer:"v2.12.3", GitCommit:"eecf22f77df5f65c823aacd2dbd30ae6c65f186e", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.12.3", GitCommit:"eecf22f77df5f65c823aacd2dbd30ae6c65f186e", GitTreeState:"clean"}

3) Référencement de la barre configuré Rancher Helm init

kubectl -n kube-system create serviceaccount tiller

kubectl create clusterrolebinding tiller \
  --clusterrole cluster-admin \
  --serviceaccount=kube-system:tiller

helm init --service-account tiller

Essayé d'installer Jenkins via Helm

root@lnmymachine # helm ls
Error: Unauthorized
root@lnmymachine # helm install --name initial stable/jenkins
Error: the server has asked for the client to provide credentials

Parcouru des problèmes similaires et peu d'entre eux étaient dus à plusieurs clusters. Je n'ai qu'un seul groupe. Kubectl donne toutes les informations correctement.

Toute idée de ce qui se passe.

5
VVP

Je faisais face au même problème, mais les étapes suivantes ont fonctionné pour moi.

root@node1:~# helm install --name prom-operator stable/prometheus-operator --namespace monitoring
Error: the server has asked for the client to provide credentials

Étape 1: Supprimer le compte de service

root@node1:~# kubectl delete serviceaccount --namespace kube-system tiller
serviceaccount "tiller" deleted

Étape 2: Supprimer la liaison du rôle de cluster

root@node1:~# kubectl delete clusterrolebinding tiller-cluster-rule 
clusterrolebinding.rbac.authorization.k8s.io "tiller-cluster-rule" deleted

Étape 3: supprimer le répertoire de la barre

root@node1:~# rm -rf .helm/

STEP4: Créez à nouveau le compte de service.

root@node1:~# kubectl create serviceaccount tiller --namespace kube-system
serviceaccount/tiller created

Étape 5: Créer la liaison du rôle de cluster

root@node1:~# kubectl create clusterrolebinding tiller-cluster-rule \
>  --clusterrole=cluster-admin \
>  --serviceaccount=kube-system:tiller
clusterrolebinding.rbac.authorization.k8s.io/tiller-cluster-rule created

Step6: exécuter la commande helm init

helm init --service-account=tiller

Creating /root/.helm 
Creating /root/.helm/repository 
Creating /root/.helm/repository/cache 
Creating /root/.helm/repository/local 
Creating /root/.helm/plugins 
Creating /root/.helm/starters 
Creating /root/.helm/cache/archive 
Creating /root/.helm/repository/repositories.yaml 
Adding stable repo with URL: https://kubernetes-charts.storage.googleapis.com 
Adding local repo with URL: http://127.0.0.1:8879/charts 
$HELM_HOME has been configured at /root/.helm.
Warning: Tiller is already installed in the cluster.
(Use --client-only to suppress this message, or --upgrade to upgrade Tiller to the current version.)

Étape 7: Supprimer le pod de Tiller-Déploy-xxx

kubectl delete pod -n kube-system tiller-deploy

pod "tiller-deploy-5d58456765-xlns2" deleted

Attendez que cela soit recréé.

Étape 8: Installez les tableaux de barre.

helm install --name prom-operator stable/prometheus-operator --namespace monitoring
0
Vipul Sharda