web-dev-qa-db-fra.com

Erreur: erreur d'installation: le serveur n'a pas pu trouver la ressource demandée HELM Kubernetes

Ce que j'ai fait:
J'ai installé Helm avec

curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get | bash
helm init --history-max 200


Obtenir une erreur:

$HELM_HOME has been configured at /root/.helm.
Error: error installing: the server could not find the requested resource
  1. que signifie cette erreur?
  2. Comment dois-je installer Helm et tiller?

Version Ubuntu: 18.04
Version Kubernetes: 1.16
Version casque:

helm version
Client: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
Error: could not find tiller

Mise à jour:
J'ai essayé la réponse de @ shawndodo mais la barre n'est toujours pas installée

helm init --service-account tiller --override spec.selector.matchLabels.'name'='tiller',spec.selector.matchLabels.'app'='helm'
--output yaml | sed 's@apiVersion: extensions/v1beta1@apiVersion: apps/v1@' | kubectl apply -f -

Mise à jour 2:
helm init --history-max 200 travailler dans kubernetes version 1.15

10
AATHITH RAJENDRAN

J'ai rencontré le même problème, puis j'ai trouvé cette réponse sur ici .

helm init --service-account tiller --override spec.selector.matchLabels.'name'='tiller',spec.selector.matchLabels.'app'='helm' --output yaml | sed 's@apiVersion: extensions/v1beta1@apiVersion: apps/v1@' | kubectl apply -f -

Ça marche pour moi. Vous pouvez voir les détails dans ce numéro.

19
shawndodo

Malheureusement, Helm ne fonctionne pas avec la version actuelle de Kubernetes (1.16.0) comme nous pouvons le voir sur la question # 6374

Pour l'instant, nous pouvons contourner l'incompatibilité en sélectionnant une ancienne version de Kubernetes.

Démarrage de minikube avec une version précédente de kubernetes

Pour résoudre ce problème, démarrez simplement le minikube en définissant la version à l'aide du --kubernetes-version param ( Réf. ):

minikube delete

minikube start --kubernetes-version=1.15.4

Essayez de redémarrer le Helm aussi avec la commande suivante:

helm init

Après cela, vous pourrez utiliser le casque sans problème.

6
valdeci

J'ai essayé toutes les suggestions sur la modification manuelle de la version de l'api pour résoudre ce problème, cela s'est débarrassé des erreurs mais les choses n'ont pas fonctionné correctement par la suite. dans mon cas, j'ai supprimé ma dernière installation de minicube et installé une ancienne sur mon mac en utilisant la commande ci-dessous, remplacez minikube-darwin-AMD64 par minikube-linux-AMD64 si nécessaire:

curl -LO https://storage.googleapis.com/minikube/releases/v1.3.0/minikube-darwin-AMD64 \
  && Sudo install minikube-darwin-AMD64 /usr/local/bin/minikube

Cela a rétrogradé mes kubernetes en v1.15.2 que Helm prend actuellement en charge.

1
Gth lala

Tiller est donc le composant côté serveur auquel votre client Helm parle (tiller doit être supprimé dans Helm 3 en raison de divers problèmes de sécurité). Lors de l'exécution helm init le client helm installe tiller sur le cluster avec lequel votre kubectl est actuellement configuré pour se connecter (gardez à l'esprit que pour installer tiller, vous avez besoin d'un accès administrateur au cluster car tiller a besoin d'un accès administrateur à l'échelle du cluster) Cependant, il existe de nombreuses stratégies différentes pour travailler avec tiller:

  • tiller per namespace: c'est lorsque vous installez tiller dans un seul espace de noms et ne lui donnez accès qu'à cet espace de noms (beaucoup plus sûr que de lui donner une administration à l'échelle du cluster), vous pouvez trouver un article sur la façon de ici
  • tillerless: lorsque vous exécutez tiller localement, vous devrez exporter HELM_Host pour poiunt à cette barre et la barre utilisera la configuration kube configurée à KUBECONFIG plus d'informations trouvées ici
1
Spazzy757

Je suis tombé sur le même problème - exactement la même configuration que la question initiale: Version Ubuntu: 18.04 Version Kubernetes: 1.16

La réponse de @ shawndodo n'a pas fonctionné pour moi. Il y avait quelques problèmes avec le déploiement de tiller et le pod de tiller n'était pas du tout créé!

J'ai essayé d'installer la version de Canary comme décrit dans Helm docs - https://helm.sh/docs/using_helm/#from-canary-builds

helm init --canary-image --upgrade

Cela n'a pas fonctionné il y a quelques jours, mais a essayé à nouveau (avec une version canari plus récente) et cela a fonctionné aujourd'hui (20191005).

Reste à savoir si je rencontre d'autres problèmes à l'aide de la construction de canaris, mais j'ai dépassé le problème d'initialisation ...

1
Ryan.Bartsch

Nous devons avoir tiller installé dans le cluster avant de commencer à utiliser Helm. helm init commande installe tiller dans le cluster et nous devons également avoir RBAC configuré dans le cluster pour tiller également. Ici vous découvrirez les règles RBAC requises selon vos besoins pour votre cluster k8s.

0
Tyto
  • version de kubectl: v1.16.0
  • version de la barre: v2.14.3

    minikube start --memory=16384 --cpus=4
    
    helm init --service-account tiller --output yaml | sed 's@apiVersion: extensions/v1beta1@apiVersion: apps/v1@' | sed 's@  replicas: 1@  replicas: 1\n  selector: {"matchLabels": {"app": "helm", "name": "tiller"}}@' | kubectl apply -f -
    
    helm template istio-1.3.3/install/kubernetes/helm/istio-init --name istio-init --namespace istio-system | kubectl apply -f - 
    
    helm template istio-1.3.3/install/kubernetes/helm/istio --name istio --namespace istio-system | kubectl apply -f -
    
0
Dumindu Madunuwan

essayer

apt-get upgrade helm dans mon cas cela a fonctionné.

0
Karthik Reddy