Helm installation and configuration

I. Overview

helm is kubernetes package management tools to simplify application deployment and management Kubernetes. Charts-- used to manage resources preconfigured installation package.
The main role of the charts and Helm:
Application Package
Version Management
dependency checking
to facilitate application distribution
helm is a C / S software framework, a client helm corresponds, Tiller is a server
Helm Helm is the CLI client, the local execution
Tiller is a server-side component, on Kubernetes cluster is running, and management Kubernetes application lifecycle
Repository is Chart warehouse, Helm client to access the repository Chart via HTTP protocol index file and archive
Helm works
Helm installation and configuration
Chart Install process:
Helm Chart parsing the configuration information from the specified directory or file tgz
Helm specified configuration and Values Chart information is transmitted to gRPC Tiller
Tiller and generates a Release Values the Chart
Tiller sends to Kubernetes for generating Release Release

Chart the Update process:
Helm parsed from the specified directory or tgz file the Chart configuration information
Helm to be updated Release names and Chart structure, Values information to Tiller
Release Tiller generating Release and updating the specified name History
Tiller sent to Release Kubernetes for updating Release

Chart Rollback procedure:
Helm, Release name passed to roll back to Tiller
Tiller History The name lookup Release of
Tiller obtaining a Release from the History
Tiller Release sent to the one used to replace the current Release Kubernetes

Second, install the client Helm

curl -LO https://www.cnrancher.com/download/helm/helm-v2.14.3-linux-amd64.tar.gz
tar -xvf helm-v2.14.3-linux-amd64.tar.gz
sudo cp linux-amd64/helm /usr/local/bin/

View version information

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

Third, the installation tiller Server

Create a service account

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

Initialization tiller
Note: offline environment requires an explicit declaration --tiller-image, and needs to be consistent with the helm client version, as in the above v2.14.3, automatically select the appropriate version of the following by way of an environment variable

helm init --service-account tiller --tiller-image rancher/tiller:v2.14.3 --skip-refresh 

$ kubectl get pods --namespace kube-system  | grep tiller
tiller-deploy-65cff4d7bc-g9gzm            1/1     Running     0          11d
$ helm version
Client: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}

Guess you like

Origin blog.51cto.com/10880347/2434647