目录

一、二进制安装helm客户端

二、安装服务端tiller

三、测试用helm安装服务

四、创建自己的chart


官方文档:https://helm.sh/docs/using_helm/#installing-helm

GitHub地址:https://github.com/Idiomroot/kubernet-helm.git

一、二进制安装helm客户端

[root@idiom-k8s ~]# cd /home/tools/ && wget https://get.helm.sh/helm-v2.14.3-linux-amd64.tar.gz

[root@idiom-k8s tools]# tar -xf helm-v2.14.3-linux-amd64.tar.gz  && mv linux-amd64/helm /usr/local/bin/helm

[root@idiom-k8s tools]# helm  help  (运行成功则表明helm客户端安装成功)

二、安装服务端tiller

[root@idiom-k8s tools]# yum -y install socat

[root@idiom-k8s tools]# kubectl create serviceaccount --namespace kube-system tiller
serviceaccount/tiller created
[root@idiom-k8s tools]# kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
clusterrolebinding.rbac.authorization.k8s.io/tiller-cluster-rule create

[root@idiom-k8s tools]# helm init --upgrade -i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.14.3 --stable-repo-url https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts (使用-i指定自己的镜像,因为官方的镜像不能直接拉取,官方镜像是gcr.io/kubernetes-helm/tiller:v2.14.3)

[root@idiom-k8s tools]# kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'
deployment.extensions/tiller-deploy patched
[root@idiom-k8s tools]#  kubectl -n kube-system get pods|grep tiller
tiller-deploy-78d6566545-7fx9p          1/1     Running   0          6s

[root@idiom-k8s tools]#  helm version       
Client: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}

注意,client和server端的版本要一致,不然安装服务会报错。

三、测试用helm安装服务

[root@idiom-k8s tools]# helm search nginx
NAME                    CHART VERSION   APP VERSION     DESCRIPTION                                                 
stable/nginx-ingress    0.9.5           0.10.2          An nginx Ingress controller that uses ConfigMap to store ...
stable/nginx-lego       0.3.1                           Chart for nginx-ingress-controller and kube-lego            
stable/gcloud-endpoints 0.1.0                           Develop, deploy, protect and monitor your APIs with Googl...
[root@idiom-k8s tools]# helm install stable/nginx-ingress --name test
NAME:   test
LAST DEPLOYED: Fri Aug  9 06:43:25 2019
NAMESPACE: default
STATUS: DEPLOYED

RESOURCES:
==> v1/ConfigMap
NAME                           DATA  AGE
test-nginx-ingress-controller  1     0s

==> v1/Pod(related)
NAME                                                 READY  STATUS             RESTARTS  AGE
test-nginx-ingress-controller-6d8b7645c8-d8l9d       0/1    ContainerCreating  0         0s
test-nginx-ingress-default-backend-5674776778-5bc9w  0/1    ContainerCreating  0         0s

==> v1/Service
NAME                                TYPE          CLUSTER-IP    EXTERNAL-IP  PORT(S)                     AGE
test-nginx-ingress-controller       LoadBalancer  10.254.65.36  <pending>    80:31557/TCP,443:31836/TCP  0s
test-nginx-ingress-default-backend  ClusterIP     10.254.48.28  <none>       80/TCP                      0s

==> v1beta1/Deployment
NAME                                READY  UP-TO-DATE  AVAILABLE  AGE
test-nginx-ingress-controller       0/1    1           0          0s
test-nginx-ingress-default-backend  0/1    1           0          0s

==> v1beta1/PodDisruptionBudget
NAME                                MIN AVAILABLE  MAX UNAVAILABLE  ALLOWED DISRUPTIONS  AGE
test-nginx-ingress-controller       1              N/A              0                    0s
test-nginx-ingress-default-backend  1              N/A              0                    0s

NOTES:
The nginx-ingress controller has been installed.
It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status by running 'kubectl --namespace default get services -o wide -w test-nginx-ingress-controller'

An example Ingress that makes use of the controller:

apiVersion: extensions/v1beta1
  kind: Ingress
  metadata:
    annotations:
      kubernetes.io/ingress.class: nginx
    name: example
    namespace: foo
  spec:
    rules:
      - host: www.example.com
        http:
          paths:
            - backend:
                serviceName: exampleService
                servicePort: 80
              path: /
    # This section is only required if TLS is to be enabled for the Ingress
    tls:
        - hosts:
            - www.example.com
          secretName: example-tls

If TLS is enabled for the Ingress, a Secret containing the certificate and key must also be provided:

apiVersion: v1
  kind: Secret
  metadata:
    name: example-tls
    namespace: foo
  data:
    tls.crt: <base64 encoded cert>
    tls.key: <base64 encoded key>
  type: kubernetes.io/tls

[root@idiom-k8s tools]# helm list
NAME    REVISION        UPDATED                         STATUS          CHART                   APP VERSION     NAMESPACE
test    1               Fri Aug  9 06:43:25 2019        DEPLOYED        nginx-ingress-0.9.5     0.10.2          default

删除安装的release

[root@idiom-k8s tools]# helm  delete test   --purge 
release "test" deleted

四、创建自己的chart

[root@idiom-k8s tools]# cd /root/ && helm create nginx

[root@idiom-k8s ~]# tree nginx         
nginx
├── charts
├── Chart.yaml
├── templates
│   ├── deployment.yaml
│   ├── _helpers.tpl
│   ├── ingress.yaml
│   ├── NOTES.txt
│   ├── service.yaml
│   └── tests
│       └── test-connection.yaml
└── values.yaml

3 directories, 8 files

可以通过修改values.yaml文件来指定自己的配置

[root@idiom-k8s ~]# vi nginx/values.yaml

验证chart配置

[root@idiom-k8s ~]# helm install --dry-run --debug nginx

[root@idiom-k8s ~]# helm package nginx
Successfully packaged chart and saved it to: /root/nginx-0.1.0.tgz

[root@idiom-k8s ~]# helm search nginx
NAME                    CHART VERSION   APP VERSION     DESCRIPTION                                                 
local/nginx             0.1.0           1.0             A Helm chart for Kubernetes                                 
stable/nginx-ingress    0.9.5           0.10.2          An nginx Ingress controller that uses ConfigMap to store ...
stable/nginx-lego       0.3.1                           Chart for nginx-ingress-controller and kube-lego            
stable/gcloud-endpoints 0.1.0                           Develop, deploy, protect and monitor your APIs with Googl..

打包好的chart可以通过HTTP server的方式提供,访问本机的8879端口即可看到。
[root@idiom-k8s ~]# helm  serve
Regenerating index. This may take a moment.
Now serving you on 127.0.0.1:8879[root@idiom-k8s ~]# elinks http://127.0.0.1:8879

注释:

如果要使用第三方chat库,则需要添加

比如添加fabric8库:helm repo add fabric8 https://fabric8.io/helm

kubernet安装helm相关推荐

  1. kubernetes安装Helm

    Helm可帮助用户管理Kubernetes应用程序.Helm Charts可帮助用户定义,安装和升级最复杂的Kubernetes应用程序. Helm由客户端(helm)和服务器(Tiller)构成.客 ...

  2. kubernetes 安装 helm,ingress

    1.安装helm客户端 [root@cc-k8s01 work]# wget https://storage.googleapis.com/kubernetes-helm/helm-v2.14.0-r ...

  3. mac安装helm工具_部署利器 helm v3 安装以及使用指南

    山月最近想起来自己还有一个 k8s 集群,决定输出一些云原生的文章,在我的 github 仓库 github.com/shfshanyue/- 可以看到.本篇文章主要介绍 helm,说到它,实在是太简 ...

  4. Kubernetes中安装Helm及使用

    Helm 致力于成为 Kubernetes 的包管理工具,可以方便地发现.共享和使用为 Kubernetes 构建的应用,它包含几个基本概念: Chart:一个 Helm 包,其中包含了运行一个应用所 ...

  5. helm安装postgres_安装Helm

    安装Helm 浏览 0 扫码 分享 2019-10-27 17:16:53 版权声明:本文为 码农文档 原创译文,遵循 CC 4.0 BY-NC-SA 版权协议,转载请附上原文出处链接和本声明. 公告 ...

  6. docker私有仓库harbor配置helm chart仓库(安装helm chart插件)

    harbor配置helm chart仓库 1.harbor 安装的时候 默认没有helm charts的仓库,如果已经安装过重新执行安装即可,不需要prepare docker-compose sto ...

  7. 如何在Ubuntu里安装Helm

    Helm是什么?在战网上玩过暗黑破坏神2代的程序员们应该还记得,Helm是国度的意思. 而在计算机领域,Helm是什么? Helm是Kubernetes的一个包管理工具,有点像nodejs的npm,U ...

  8. helm安装_安装 helm 包管理工具

    官方文档:helm Docs 1.下载最新稳定版本,上传至服务器. 2.解压 tar -zxvf helm-v2.0.0-linux-amd64.tgz 3.添加至运行目录:mv linux-amd6 ...

  9. 如何在Ubuntu里安装Helm 1

    Helm是什么?在战网上玩过暗黑破坏神2代的程序员们应该还记得,Helm是国度的意思. 而在计算机领域,Helm是什么? Helm是Kubernetes的一个包管理工具,有点像nodejs的npm,U ...

最新文章

  1. ping 问题网络翻滚问题小结
  2. 《MySQL tips:隐式类型转换与隐式字符编码转换对查询效率的影响》
  3. 数据库设计五要点 让数据库设计更加规范
  4. flex与flash元件交互
  5. 微信小程序 获取input输入的值
  6. 远程计算机怎么安装系统,w7系统可以远程安装吗_win7远程重装系统详细步骤
  7. 本地apk安装是什么意思_Sony电视安装第三方播放器
  8. 破解Kindle,轻松自定义字体
  9. 多电压等级计算机潮流计算,电力系统潮流计算
  10. 样本不均衡及其解决办法
  11. 深度技术Windows XP SP3 完美精简版【2合1】(转自深度论坛)
  12. 微服务使用模块化时候导入公共模块导致maven更新依赖错误问题
  13. webstorm设置黑色背景
  14. Too many re-renders. React limits the number of renderers to prevent an infinite loop...
  15. 华为资深工程师:码农很多,但程序员并不多......
  16. 二极管、三极管、晶闸管基本知识
  17. Unity3D炸弹投掷路线原理
  18. 【Unity VFX】VFX特效入门笔记-火花制作
  19. Spirng Cloud 中gateway 网关限流和熔断
  20. 2019汇智动力学院课程、服务体系震撼升级

热门文章

  1. 微信红包封面小程序源码-逢年过节非常火爆
  2. css动画中文字慢慢显示,利用定时器和css3动画制作文字依次渐变显示的效果
  3. kafka 可以脱离 zookeeper 单独使用吗
  4. 基于Python的OpenCV+TensorFlow+Keras人脸识别实现
  5. 前端基础CSS+html篇 2w字吐血总结
  6. 人脸识别广告显示屏通过人像识别、面部识别应用
  7. 用函数调用的方式实现汽车移动的例子 (python)
  8. 我在用的翻译软件,微软翻译,网易有道词典
  9. java调用excel在页面生成饼状图_Java 在 Excel 中创建饼图/环形图
  10. 用wireshark抓包疯狂聊天实验