CKA [Networking] – Helm的使用

我们在安装一个软件的时候会牵涉到多个Kubernetes的组件比如有Deployment / Ingress / Secret 等等,这些都需要手写和维护大量 YAML 文件容易出错,也不利于复用和版本管理。所以Helm方案就是将相关资源模板化并打包为 Chart,只需一次 helm install 即可在集群中创建所有资源;升级时只要 helm upgrade,回滚时 helm rollback,极大简化了操作流程

这些Helm Chart都能在public repo当中下载到本地,然后使用这个helm模版来安装,也能直接安装在多个kubernetes cluster当中。

这些Helm Chart Repo 都能这里找到 : https://artifacthub.io

根据自己的系统需要预先在本地安装Helm : https://helm.sh/docs/intro/install/

使用案例 – 使用Helm安装Nginx

1. 去到artifacthub找到bitnami管理的nginx,在右边,你会看到这个chart当中有什么漏洞, 漏洞严重的话需要关注以下before安装。而且也能看到安装的步骤和这个软件有用到哪些Kubernetes的资源模版。

https://artifacthub.io/packages/helm/bitnami/nginx

2. 把bitnami repo加到本地

    helm repo add bitnami https://charts.bitnami.com/bitnami

    3. 使用chart来安装,资源名称为my-nginx

    helm install my-nginx bitnami/nginx --version 20.0.0
    
    【把资源都创建在nginx namespace当中,但是必须以前创建NS】
    helm install my-nginx bitnami/nginx -n nginx--version 20.0.0

    其他命令行

    1. 检查这个NS底下有哪些资源是helm安装的

    helm list -n nginx

    2. 列出当前 Helm 客户端已添加并缓存的所有 Chart 仓库及其地址,方便你后续进行 Chart 搜索、更新或安装等操作

    helm repo list

    3. 除了在artifacthub搜寻之外,也能通过命令行搜寻

    【在本地的repo资源当中寻找】
    helm search repo zipkin
    
    【在artifacthub 整个网站当中寻找】
    helm search hub zipkin

    4. 把需要创建的资源输出yaml

    【把yaml输出在terminal当中】
    helm template bitnami/nginx
    
    【把yaml输出到nginx.yaml当中】
    helm template bitnami/nginx > nginx.yaml
    
    【把需要创建的资源,使用custom-ns的namespace,然后输出到nginx.yaml当中】
    helm template bitnami/nginx -n custom-ns > nginx.yaml

    5. 删除helm所安装的资源, 在nginx的namespace内

    helm uninstall my-nginx -n nginx

    Loading

    Facebook评论