• 邵涵
    2023-03-16 来自北京
    几个问题麻烦问您一下: 1. 虽然和Kustomize相比,Helm的管理粒度是在应用层面了,但是,就如同本节的例子,使用Helm将一套应用部署到多环境时,也和Kustomize一样需要持有对每个环境的特殊配置,虽然Helm的模板变量的方式比Kustomize的manifest补丁文件的方式更灵活、高效,但也避免不了对不同环境分别配置的信息的管理,Helm对这种环境特殊配置信息的管理的最佳实践是什么样的?是将不同环境的values文件通过git保管?还是其他什么方式? 2. 对于Helm仓库,是否有需要像Harbor之于docker hub那样部署一个私有的Helm仓库在公司内部用?

    作者回复: 非常棒的两个问题。 首先对于多环境的情况,一般的实践是通过多个 values.yaml 文件来实现,例如 values-dev.yaml,values-prod.yaml。 对于第二个问题,Harbor 支持存储 Helm Chart,你可以查看这个文档:https://goharbor.io/docs/1.10/working-with-projects/working-with-images/managing-helm-charts/

    
    1
  • gyl1989113
    2023-02-13 来自四川
    这一章节要部署自己镜像仓库的镜像,是不是要把value.yaml里的lyzhang1999改成自己的dockerhub用户名哦

    作者回复: 是的👍🏻

    
    1
  • Sophia-百鑫
    2023-07-28 来自上海
    问题1 的 结果, helm build.yaml 麻烦老师帮助指正 name: Build and Push Helm Chart on: push: branches: - main jobs: build-and-push-chart: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 # 拉取代码到工作目录 - name: Set up Helm uses: azure/setup-helm@v1 # 设置 Helm 环境 - name: Package Helm Chart run: helm package ./helm # 打包 Helm Chart,生成 .tgz 文件 - name: Push Helm Chart to GitHub Package run: helm push ./kubernetes-example-0.1.0.tgz oci://ghcr.io/githubusername/helm # 推送 Helm Chart 到 GitHub Package Registry env: HELM_EXPERIMENTAL_OCI: 1 with: password: ${{ secrets.GITHUB_TOKEN }} # 使用 GitHub Token 进行认证和授权
    展开

    作者回复: 非常正确👍🏻

    
    
  • Sophia-百鑫
    2023-07-28 来自上海
    kubernetes-example git:(main) ✗ helm install my-kubernetes-example ./helm --namespace helm-staging --create-namespace --set frontend.autoscaling.averageUtilization=60 --set backend.autoscaling.averageUtilization=60 Error: INSTALLATION FAILED: unable to build kubernetes objects from release manifest: [resource mapping not found for name: "frontend" namespace: "" from "": no matches for kind "HorizontalPodAutoscaler" in version "autoscaling/v2beta2" ensure CRDs are installed first, resource mapping not found for name: "backend" namespace: "" from "": no matches for kind "HorizontalPodAutoscaler" in version "autoscaling/v2beta2" ensure CRDs are installed first] “Helm install” 需要先安装 CRD,网上说 “可以在chart中创建一个名为crds的特殊目录来保存CRD” 具体要怎么处理呢? 感谢老师 "
    展开

    作者回复: 检查一下你的 k8s 集群版本,一般都有这个 crd,还可以尝试修改成 autoscaling/v2 版本。

    
    
  • 李多
    2023-02-03 来自山东
    思考1: 在 Github Actions 插件库中,有 Helm 发布相关的工具,如:Helm Chart Releaser (https://github.com/marketplace/actions/helm-chart-releaser) 。在 steps 中使用 uses: helm/chart-releaser-action@v1.5.0,利用这个工具可以实现 Helm 发布。

    作者回复: 👍🏻这个插件看起来不错~

    
    
  • 天地有雪
    2023-01-29 来自广东
    可以了,原来ubuntu系统,helm 3.11版本,换成centos7 helm 3.8.0 没有问题

    作者回复: 👍🏻

    
    
  • 天地有雪
    2023-01-29 来自广东
    你好: 1 helm registry login -u mlkkkfriend https://ghcr.io Password: Error: Get "https://ghcr.io/v2/": denied: denied 文章中 在推送之前,还需要使用 GitHub ID 和刚才创建的 Token 登录到 GitHub Package。 需要什么操作

    作者回复: 需要创建 GitHub Token,检查一下是否赋予了 Token Package 的读写权限。

    共 2 条评论
    
  • Amosヾ
    2023-01-25 来自江苏
    2、执行安装时使用不同的 helm release name,并且通过命令行参数或 values.yaml 的方式修改 deploy、service 等对象的名字

    作者回复: 👍🏻正确!

    
    
  • ghostwritten
    2023-02-02 来自北京
    我的 centos 7.9.2009 & helm v3.11.0 没有遇到拒绝问题。 $ helm version version.BuildInfo{Version:"v3.11.0", GitCommit:"472c5736ab01133de504a826bd9ee12cbe4e7904", GitTreeState:"clean", GoVersion:"go1.18.10"} $ helm registry login -u ghostwritten https://ghcr.io Password: Login Succeeded $ helm package ./helm Successfully packaged chart and saved it to: /root/github/kubernetes-example/kubernetes-example-0.1.0.tgz $ helm push kubernetes-example-0.1.0.tgz oci://ghcr.io/ghostwritten/helm Pushed: ghcr.io/ghostwritten/helm/kubernetes-example:0.1.0 Digest: sha256:46bef623e43f4525ebfd25c368dfea69e70efbe7590f1e3eccc321fbb6b16882 $ helm install my-kubernetes-example oci://ghcr.io/ghostwritten/helm/kubernetes-example --version 0.1.0 --namespace remote-helm-staging --create-namespace --set frontend.autoscaling.averageUtilization=60 --set backend.autoscaling.averageUtilization=60 Pulled: ghcr.io/ghostwritten/helm/kubernetes-example:0.1.0 Digest: sha256:46bef623e43f4525ebfd25c368dfea69e70efbe7590f1e3eccc321fbb6b16882 W0202 16:15:56.276585 3957 warnings.go:70] autoscaling/v2beta2 HorizontalPodAutoscaler is deprecated in v1.23+, unavailable in v1.26+; use autoscaling/v2 HorizontalPodAutoscaler AME: my-kubernetes-example LAST DEPLOYED: Thu Feb 2 16:15:55 2023 NAMESPACE: remote-helm-staging STATUS: deployed REVISION: 1 TEST SUITE: None $ k get pods -n remote-helm-staging NAME READY STATUS RESTARTS AGE backend-bcb7687c6-s7lxh 1/1 Running 0 29m backend-bcb7687c6-v4cx6 1/1 Running 0 29m frontend-7c59d655fb-p6lpm 1/1 Running 1 (21m ago) 29m frontend-7c59d655fb-xnl8x 1/1 Running 0 29m postgres-7745b57d5d-2nndw 1/1 Running 0 29m
    展开
    
    1
  • Sophia-百鑫
    2023-07-28 来自上海
    我的helm 版本 kubernetes-example git:(main) ✗ helm version version.BuildInfo{Version:"v3.12.2", GitCommit:"1e210a2c8cc5117d1055bfaa5d40f51bbc2e345e", GitTreeState:"clean", GoVersion:"go1.20.6"}
    
    