Helm系列(1)- Helm3部署安装

Helm3移除了Tiller组件,支持新版Helm图表和库图表,增加了资源合并策略及JSON模式验证。 Helm3的安装需要Kubernetes集群,并提供了二进制版本下载。建议使用微软或阿里云镜像仓库,通过`helm repo add`添加。安装完成后,可使用`helm help`等命令进行操作。
摘要由CSDN通过智能技术生成

一、新的功能     1.版本以新格式存储

    2.没有群集内(tiller)组件

    3.Helm 3包括对新版Helm图表的支持(图表v2)

    4.Helm 3还支持库图表-图表主要用作其他图表的资源。

    5.用于在OCI注册表中存储Helm图表的实验支持(例如Docker Distribution)可以进行测试。

    6.现在在升级Kubernetes资源时将应用3向战略合并补丁。

    7.现在可以根据JSON模式验证图表提供的值

    8.为了使Helm更安全,可用和健壮,已进行了许多小的改进。

二、 Helm3的内部实现已从 Helm2发生了很大变化,使其与 Helm2不兼容

该版本主要变化如下

1、最明显的变化是 Tiller的删除

2、Release 不再是全局资源,而是存储在各自命名空间内

3、Values 支持 JSON Schema校验器,自动检查所有输入的变量格式

4、移除了用于本地临时搭建 Chart Repository 的 helm serve 命令。

5、helm install 不再默认生成一个 Release 的名称,除非指定了 --generate-name。

6、Helm CLI 个别更名

helm delete更名为 helm uninstall
helm inspect更名为 helm show
helm fetch更名为 helm pull

但以上旧的命令当前仍能使用。

三、先决条件

要成功且正确地确保使用Helm,必须满足以下先决条件。

  1. Kubernetes集群
  2. 确定要应用于安装的安全性配置(如果有)
  3. 安装和配置Helm。

四、安装Kubernetes或有权访问集群

  • 必须安装Kubernetes。对于Helm的最新版本,我们建议使用Kubernetes的最新稳定版本,在大多数情况下,它是第二最新的次要版本。
  • 还应该具有的本地配置副本kubectl。

注意:1.6之前的Kubernetes版本对基于角色的访问控制(RBAC)的支持有限或不支持。

五、 使用二进制版本安装

每一个[版本](https://github.com/helm/helm/releases)

helm提供多种操作系统的二进制版本。这些二进制版本可以手动下载和安装。

  1. 下载[所需版本]

https://github.com/helm/helm/releases

  2. 打开包装

tar -zxvf helm-v3.0.0-linux-amd64.tgz

  3.helm在解压后的目录中找到二进制文件,然后将其移至所需的目标位置

mv linux-amd64/helm /usr/local/bin/helm

4.在客户端运行:

helm help

5.配置国内Chart仓库

微软仓库(http://mirror.azure.cn/kubernetes/charts/)这个仓库强烈推荐,基本上官网有的chart这里都有。

阿里云仓库(https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts )

官方仓库(https://hub.kubeapps.com/charts/incubator)官方chart仓库,国内有点不好使

6. 添加存储库:

helm repo add stable http://mirror.azure.cn/kubernetes/charts
helm repo add aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
helm repo update

7.查看配置的存储库:

helm repo list
helm search repo stable

一直在stable存储库中安装charts,你可以配置其他存储库。

8.删除存储库:

helm repo remove aliyu


附:

比较好的helm文章参考:

简化Kubernetes应用部署工具-Helm简介:简化Kubernetes应用部署工具-Helm简介 - DockOne.io

简化Kubernetes应用部署工具-Helm安装:简化Kubernetes应用部署工具-Helm安装 - DockOne.io

安装 · Helm用户与开发者指南

简化Kubernetes应用部署工具-Helm之应用部署:简化Kubernetes应用部署工具-Helm之应用部署 - DockOne.io

简化Kubernetes应用部署工具-Helm之Release配置:简化Kubernetes应用部署工具-Helm之Release配置 - DockOne.io

简化Kubernetes应用部署工具-Helm之Hook:简化Kubernetes应用部署工具-Helm之Hook - DockOne.io

其他参考:
https://docs.helm.sh/
https://www.kubernetes.org.cn/2711.html
https://hackernoon.com/the-missing-ci-cd-kubernetes-component-helm-package-manager-1fe002aac680

https://github.com/kubernetes/helm
https://github.com/kubernetes/charts
https://github.com/kubernetes/charts/tree/master/stable/wordpress
http://docs.heptio.com/content/tutorials/aws-qs-helm-wordpress.html
https://github.com/feiskyer/kubernetes-handbook/blob/master/apps/basic.md
https://www.youtube.com/watch?v=uXaNh4Mrhdc (视频演示)
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用 Helm 命令来安装 logstash-input-kubernetes,步骤如下: 1. 添加 Elastic 官方的 Helm 仓库: ``` helm repo add elastic https://helm.elastic.co ``` 2. 创建一个 Helm chart: ``` helm create my-logstash-kubernetes ``` 3. 打开 my-logstash-kubernetes/values.yaml 文件,添加以下配置: ``` esHost: "elasticsearch-master.elasticsearch.svc.cluster.local" esPort: "9200" image: "docker.elastic.co/logstash/logstash-oss:7.11.2" ``` 这些配置项指定了 Elasticsearch 的主机和端口,以及使用的 Logstash 镜像。 4. 打开 my-logstash-kubernetes/templates/deployment.yaml 文件,添加以下部分: ``` - name: logstash-input-kubernetes image: {{ .Values.image }} env: - name: LOGSTASH_JAVA_OPTS value: "-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.rmi.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=localhost" args: - "-f" - "/usr/share/logstash/pipeline/logstash.conf" - "--config.reload.automatic" - "--config.reload.interval=5s" volumeMounts: - name: config mountPath: /usr/share/logstash/pipeline/logstash.conf subPath: logstash.conf ports: - containerPort: 5044 resources: limits: cpu: 1000m memory: 2Gi requests: cpu: 500m memory: 1Gi ``` 这个部分定义了一个名为 logstash-input-kubernetes 的容器,使用了之前指定的 Logstash 镜像,并挂载了一个名为 config 的 ConfigMap。 5. 打开 my-logstash-kubernetes/templates/service.yaml 文件,添加以下部分: ``` - name: logstash-input-kubernetes port: 5044 targetPort: 5044 ``` 这个部分定义了一个名为 logstash-input-kubernetes 的服务,使用了之前定义的端口。 6. 创建一个 ConfigMap,用于存储 Logstash 的配置文件: ``` kubectl create configmap my-logstash-config --from-file=logstash.conf=./logstash.conf ``` 7. 使用 Helm 命令安装 Logstash: ``` helm install my-logstash-kubernetes elastic/logstash --values=my-logstash-kubernetes/values.yaml ``` 这个命令会创建一个名为 my-logstash-kubernetes 的 Kubernetes 部署,并启动一个名为 logstash-input-kubernetes 的容器。容器会使用之前创建的 ConfigMap 中的配置文件来处理 Kubernetes 的日志数据,并将数据发送到 Elasticsearch。 以上就是使用 Helm 安装 logstash-input-kubernetes 的步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值