2022年10月更文挑战16-k8s中helm相关知识

102 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第16天,点击查看活动详情

helm相关知识

前文

本文内容主要是关于在k8s中,helm应用的相关知识的总结。文章内容不全面,属于初级的入门总结方式,其中也可能存在描述不当之处。

什么是helm

helm可以认为是k8s的包管理器,相当于node中的npm、linux中的yum等等,主要是对helm chart进行管理。而helm chart则是对于yaml文件的一系列封装,也就可以认为helm是对yaml文件的管理。

如何进行helm安装

helm是一个开源程序,因此安装helm我们首先需要到helm的官网上查看,也就是github上,<https://github.com/helm/helm>,进行helm安装文件的下载。根据网站上的提示,我们可以直接通过homebrew等包管理工具进行安装,也可以直接进行二进制文件的下载及安装。当然在安装时要注意进行系统的选择。

通过helm安装harbor示例

下面以harbor的安装为例,展示一下helm的使用方式。

  • 首先进行仓库的添加,helm repo add harbor helm.goharbor.io
  • 其次,进行harbor内容的获取 helm fetch harbor/harbor
  • 下一步,我们在启动前需要进行一部分配置内容的修改,例如https、启动方式、启动端口等等,这部分我们需要修改的是values.yaml文件
  • 修改后,我们就可以进行helm进行harbor程序的部署 helm install my-harbor harbor -n harbor,这里我们进行了namespace的指定,也就是可能要事先创建,取决于该ns是否存在。 经过上述的一系列操作,我们就已经成功的通过helm部署了harbor。

利用helm进行应用的创建

  • helm create 目录名 首先需要创建我们的helm包名
    • chart.yaml 声明当前chart的信息
    • values.yaml 声明安装的参数
    • templates/文件夹主要是包含部署应用所需要的各种yaml文件
    • charts文件夹则是针对于对其他以存在helm的依赖,相当于其他语言的import等
  • helm template 包名 进行chart内容的渲染
  • helm package 包名 实际helm包的打包 经过上述的一系列操作,我们也就成功创建了helm包,可以将它推送到远程的仓库中

后记

  • 千古兴亡多少事?悠悠。不尽长江滚滚流。