美文网首页
原创:kubernetes(k8s)离线安装helm和tille

原创:kubernetes(k8s)离线安装helm和tille

作者: NLBSN | 来源:发表于2019-01-19 21:32 被阅读0次

(备注:helm官方已更新,此文章已过期)

大纲:
一、为什么要安装
二、helm的安装
三、tiller的安装
四、检验是否安装的正确
五、tiller删除

一、为什么要安装

    1、helm的作用:像centos7中的yum命令一样,管理软件包,只不过helm这儿管理的是在k8s上安装的各种容器。
    2、tiller的作用:像centos7的软件仓库一样,简单说类似于/etc/yum.repos.d目录下的xxx.repo。

二、helm的安装

    helm的安装非常的简单,首先在github上下载helm的二进制安装包,然后直接将二进制文件移动到相关目录下就可以了。
    下载url:https://github.com/helm/helm/releases

[root@cma-cluster-slave5 k8s]# tar -zxvf helm-v2.11.0-linux-amd64.tar.gz
[root@cma-cluster-slave5 k8s]# cd linux-amd64/
[root@cma-cluster-slave5 linux-amd64]# mv helm /usr/bin/

    测试一下:

[root@cma-cluster-slave5 linux-amd64]# helm

看见出现一大推提示就是安装成功了

三、tiller的安装

    Tiller有多种安装方式,比如本地安装或以pod形式部署到Kubernetes集群中。本文以pod安装为例,安装Tiller的最简单方式是helm init, 该命令会检查helm本地环境设置是否正确,helm init会连接kubectl默认连接的kubernetes集群(可以通过kubectl config view查看),一旦连接集群成功,tiller会被安装到kube-system namespace中。

    为了安装服务端tiller,还需要在这台机器上配置好kubectl工具和kubeconfig文件,确保kubectl工具可以在这台机器上访问apiserver且正常使用。 这里的node1节点以及配置好了kubectl。

    因为Kubernetes APIServer开启了RBAC访问控制,所以需要创建tiller使用的service account: tiller并分配合适的角色给它。 详细内容可以查看helm文档中的Role-based Access Control。 这里简单起见直接分配cluster-admin这个集群内置的ClusterRole给它。

创建rbac-config.yaml文件:

[root@cma-cluster-slave5 linux-amd64]# vim rbac-config.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: tiller
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: tiller
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
  - kind: ServiceAccount
    name: tiller
    namespace: kube-system

创建rbac服务

[root@cma-cluster-slave5 linux-amd64]# kubectl create -f rbac-config.yaml
serviceaccount/tiller created
clusterrolebinding.rbac.authorization.k8s.io/tiller created
1、一种博主未知的安装方式
[root@cma-cluster-slave5 linux-amd64]# pwd
/opt/k8s/linux-amd64
[root@cma-cluster-slave5 linux-amd64]# ls
helm  LICENSE  README.md  tiller

    这个目录下的tiller二进制是一个本地安装的文件,怒在下愚钝,暂不知如何使用。

2、博主采用的安装方式

直接使用docker拉取这个镜像,查看dockerfile文件就可以知道这是直接从谷歌镜像库拉取过来的了,感谢这位热心的网友哈。

[root@cma-cluster-slave5 linux-amd64]# docker pull fishead/gcr.io.kubernetes-helm.tiller:v2.11.0

    因为 helm init 初始化的时候会在k8s集群中安装tiller的服务端,用到了此镜像。

安装tiller
    helm init --upgrade --service-account tiller --tiller-image fishead/gcr.io.kubernetes-helm.tiller:v2.11.0 --stable-repo-url http://10.16.48.44/
    备注:上面命令中的--stable-repo-url http://10.16.48.44/这个是我用apache http做的,这儿下面放了一个文件index.yaml文件,可以从这儿下载到https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts/index.yaml

    在浏览器中输入http://10.16.48.44/index.yaml,将显示刚刚下载的页面(冒充的,嘿嘿)

四、检验是否安装的正确

    检验tiller是否安装上

[root@cma-cluster-slave5 home]# kubectl get pod -n kube-system|grep tiller
tiller-deploy-7d574cfdcc-px2wh          1/1       Running   0          1d

    查看tiller的repo仓库

[root@cma-cluster-slave5 home]# helm repo list
NAME    URL                         
stable  http://10.16.48.44/         
local   http://127.0.0.1:8879/charts

    检查客户端和服务端是否一致

[root@cma-cluster-slave5 home]# helm version
Client: &version.Version{SemVer:"v2.11.0", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.11.0", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}

上面中的GitCommit两个值相同,就是版本一致(博主猜测,因为碰见过报版本不一致的错误,这里就不做错误的复现了)

五、tiller删除

    可能会发生安装后需要删除或者安装不成功的情况

[root@cma-cluster-slave5 home]# helm reset -f
[root@cma-cluster-slave5 home]# rm -rf /root/.helm

    然后重新安装即可

相关文章

  • 原创:kubernetes(k8s)离线安装helm和tille

    (备注:helm官方已更新,此文章已过期) 大纲:一、为什么要安装二、helm的安装三、tiller的安装四、检验...

  • istio入门教程

    广告 | kubernetes各版本离线安装包 安装 安装k8s 强势插播广告 三步安装,不多说 安装helm, ...

  • istio使用教程

    kubernetes各版本离线安装包 安装 安装k8s 强势插播广告 三步安装,不多说 安装helm, 推荐生产环...

  • k8s 中部署harbor

    要求: 要求Kubernetes cluster 1.16+Helm 2.10.0+ 部署k8s 安装docker...

  • 享受helm

    Helm是什么? The package manager for Kubernetes helm之于k8s就类似于...

  • (原创)kubernetes(k8s)之使用helm离线安装zo

    前提:搭建好了helm和tiller这两个软件,这里将使用helm来安装zookeeper和kafka(主要是ka...

  • Istio 1.2.3 安装部署

    先决条件 安装Kubernetes 安装 Helm ( 版本高于 2.10)。 部署步骤 使用 Helm 部署 I...

  • 【k8s学习】Helm安装及Hello-world示例

    关于Helm的介绍,查看之前写的文章(务必要先看):【k8s学习】Kubernetes打包工具Helm介绍[htt...

  • helm安装

    helm 是什么 k8s 包管理工具 类似centos中yum 安装helm 下载安装包,并解压 安装helm服务...

  • helm安装教程

    Helm 帮助您管理 Kubernetes 应用程序——Helm Charts 帮助您定义、安装和升级最复杂的 K...

网友评论

      本文标题:原创:kubernetes(k8s)离线安装helm和tille

      本文链接:https://www.haomeiwen.com/subject/riozdqtx.html