k8s——安装 Helm 与基本设置
k8s——安装 Helm 与基本设置Helm 架构:部署 Helm:使用 Helm:Helm 架构:Helm有两个重要概念: chart和release:Chart:是创建一个应用的集合,包涵了各种kubernetes的配置模板,参数定义,依赖关系Release:是chart运行的实例,chart能够多次安装到同一个集群,每次安装都是一个releaseHelm 是包管理工具,这里的包就是指的cha
Helm 架构:
Helm有两个重要概念: chart 和 release:
Chart:是创建一个应用的集合,包涵了各种kubernetes的配置模板,参数定义,依赖关系
Release:是chart运行的实例,chart能够多次安装到同一个集群,每次安装都是一个release
Helm 是包管理工具,这里的包就是指的chart。Helm能够:
1.从零创建新chart.
2.与存储chart的仓库交互,拉取、保存和更新chart.
3.在Kubernetes集群中安装和卸载re lase。
4.更新、回滚和测试release。
Helm包含两个组件: Helm 客户端和Tiller服务器。
Helm客户端是终端用户使用的命令行工具,用户可以:
1.在本地开发chart.
2.管理chart仓库。
3.与Tiller服务器交互。
4.在远程Kubernetes集群上安装chart。
5.查看release信息。
6.升级或卸载已有的release。
Tiller服务器运行在Kubernetes集”中,它会处理Helm客户端的请求,与Kubernetes API Server交互。Tiller服务器负责:
1.监听来自Helm客户端的请求。
2.通过chart构建release。
3.在Kubernetes中安装chart,并跟踪release的状态。
4.通过API Server升级或卸载已有的release。
部署 Helm:
[root@k8smaster]# wget https://get.helm.sh/helm-v2.16.8-linux-amd64.tar.gz
[root@k8smaster]# tar -zxf helm-v2.16.8-linux-amd64.tar.gz
[root@k8smaster]# cd linux-amd64/
[root@k8smaster linux-amd64]# cp helm /usr/local/bin/
[root@k8smaster linux-amd64]# helm version
Client: &version.Version{SemVer:"v2.16.8", GitCommit:"145206680c1d5c28e3fcf30d6f596f0ba84fcb47", GitTreeState:"clean"}
Error: could not find tiller
我们只装了客户端 服务端还没装所以会报错
helm的命令补全:
[root@k8smaster linux-amd64]# source <(helm completion bash)
[root@k8smaster linux-amd64]# echo "source <(helm completion bash)" >> ~/.bashrc
安装Tiller服务器:
[root@k8smaster linux-amd64]# helm init
下载镜像 gcr.io/kubernetes-helm/tiller:v2.16.8:
[root@k8smaster linux-amd64]# docker pull sapcc/tiller:v2.16.8
[root@k8smaster linux-amd64]# docker tag sapcc/tiller:v2.16.8 gcr.io/kubernetes-helm/tiller:v2.16.8
[root@k8smaster linux-amd64]# docker rmi sapcc/tiller:v2.16.8
查看helm的版本:
[root@k8smaster linux-amd64]# helm version
Client: &version.Version{SemVer:"v2.16.8", GitCommit:"145206680c1d5c28e3fcf30d6f596f0ba84fcb47", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.16.8", GitCommit:"145206680c1d5c28e3fcf30d6f596f0ba84fcb47", GitTreeState:"clean"}
使用 Helm:
查看当前可安装的 chart:
[root@k8smaster linux-amd64]# helm search | more
查看仓库:
[root@k8smaster linux-amd64]# helm repo list
NAME URL
stable https://kubernetes-charts.storage.googleapis.com
local http://127.0.0.1:8879/charts
修改为国内源:
移除stable(官方仓库)
[root@k8smaster linux-amd64]# helm repo remove stable
[root@k8smaster linux-amd64]# helm repo list
NAME URL
local http://127.0.0.1:8879/charts
添加国内源:
[root@k8smaster linux-amd64]# helm repo add incubator http://mirror.azure.cn/kubernetes/charts-incubator/
[root@k8smaster linux-amd64]# helm repo add stable http://mirror.azure.cn/kubernetes/charts/
[root@k8smaster linux-amd64]# helm repo list
NAME URL
local http://127.0.0.1:8879/charts
incubator http://mirror.azure.cn/kubernetes/charts-incubator/
stable http://mirror.azure.cn/kubernetes/charts/
安装 chart 需要设置 Tiller 服务器权限:
[root@k8smaster linux-amd64]# kubectl create serviceaccount --namespace kube-system tiller
[root@k8smaster linux-amd64]# kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
[root@k8smaster linux-amd64]# kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'
更多推荐
所有评论(0)