k8s学习--helm的详细解释及安装和常用命令

简介: k8s学习--helm的详细解释及安装和常用命令

@TOC


Helm简介

什么是Helm

Helm 是 Kubernetes 的一个包管理工具,它允许用户定义、安装和升级复杂的 Kubernetes 应用程序。Helm 通过使用 "Charts" 的概念来简化应用程序的管理和配置。

主要组件

Helm 客户端:
这是命令行工具,用户使用它来与 Helm 仓库交互,并管理本地的 Chart 和 Release。
Tiller 服务器:

在 Helm 2 中,Tiller 是部署在 Kubernetes 集群中的服务器端组件,负责接收 Helm 客户端的请求并执行相应的操作。

注意:从 Helm 3 开始,Tiller 已经被移除,所有操作都由 Helm 客户端直接与 Kubernetes API 交互完成。

核心概念

Chart:
Chart 是一个包含 Kubernetes 资源定义模板的打包文件。它描述了一个可以被 Helm 管理的应用程序的所有必要资源。

一个 Chart 包括:
Chart.yaml:包含 Chart 的元数据。
values.yaml:包含 Chart 的默认配置值。
模板文件夹:包含资源的模板文件(通常是 Kubernetes 的 YAML 文件)。
其他文件:例如 README 文件等。

Release:
每个 Chart 安装到 Kubernetes 集群中就生成一个 Release。
Release 是一个 Chart 的运行实例,可以多次安装相同的 Chart,从而生成多个 Release,每个都有自己独立的配置和状态。

chart结构

在这里插入图片描述

总结

Helm是一个为K8s进行包管理的工具。
Helm将yaml作为一个整体管理并实现了这些yaml的高效复用,
就像Linux中的yum或apt-get,它使我们能够在K8s中方便快捷的安装、管理、卸载K8s应用。

应用

环境

虚拟机

Ip 主机名 cpu 内存 硬盘
192.168.10.11 master01 2cpu双核 4G 100G
192.168.10.12 worker01 2cpu双核 4G 100G
192.168.10.13 worker02 2cpu双核 4G 100G

版本 centos7.9
已部署k8s-1.27

一、helm部署

wget https://get.helm.sh/helm-v3.13.2-linux-amd64.tar.gz
tar xf helm-v3.13.2-linux-amd64.tar.gz
mv linux-amd64/helm /usr/bin/
helm version

二、helm基础使用

查看仓库

helm repo list

Error是因为还没有添加仓库

添加新的仓库地址
微软源

helm repo add stable http://mirror.azure.cn/kubernetes/charts/

添加成功会提示"stable"已经添加到你的库中

bitnami源

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

prometheus源

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts

查看已经添加的仓库

helm repo list

更新仓库
用于更新本地的 Helm 仓库缓存,以确保你能够获取到最新的 charts 列表

helm repo update

再查看

helm repo list

删除仓库

helm repo remove stable
helm repo list

查看charts
使用helm search repo 关键字可以查看相关charts

helm search repo nginx

安装charts(nginx)

helm install nginx bitnami/nginx
helm list
kubectl get all

可以看到nginx已经运行起来了

删除charts

helm uninstall nginx
helm list
相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
存储 Kubernetes 持续交付
k8s学习
【10月更文挑战第1天】
501 4
|
9月前
|
人工智能 运维 Kubernetes
2025 超详细!Lens Kubernetes IDE 多平台下载安装与集群管理教程
Lens 是一款企业级 Kubernetes 可视化操作平台,2025版实现了三大技术革新:AI智能运维(异常检测准确率98.7%)、多云联邦管理(支持50+集群)和实时3D拓扑展示。本文介绍其安装环境、配置流程、核心功能及高阶技巧,帮助用户快速上手并解决常见问题。适用于 Windows、macOS 和 Ubuntu 系统,需满足最低配置要求并前置依赖组件如 kubectl 和 Helm。通过 Global Cluster Hub 实现多集群管理,AI辅助故障诊断提升运维效率,自定义监控看板和插件生态扩展提供更多功能。
|
12月前
|
Kubernetes 应用服务中间件 nginx
二进制安装Kubernetes(k8s)v1.32.0
本指南提供了一个详细的步骤,用于在Linux系统上通过二进制文件安装Kubernetes(k8s)v1.32.0,支持IPv4+IPv6双栈。具体步骤包括环境准备、系统配置、组件安装和配置等。
4246 11
|
Kubernetes Ubuntu Docker
从0开始搞K8S:使用Ubuntu进行安装(环境安装)
通过上述步骤,你已经在Ubuntu上成功搭建了一个基本的Kubernetes单节点集群。这只是开始,Kubernetes的世界广阔且深邃,接下来你可以尝试部署应用、了解Kubernetes的高级概念如Services、Deployments、Ingress等,以及探索如何利用Helm等工具进行应用管理,逐步提升你的Kubernetes技能树。记住,实践是最好的老师,不断实验与学习,你将逐渐掌握这一强大的容器编排技术。
2230 1
|
存储 Kubernetes 调度
|
Kubernetes Linux 开发工具
centos7通过kubeadm安装k8s 1.27.1版本
centos7通过kubeadm安装k8s 1.27.1版本
|
Kubernetes Ubuntu Linux
我应该如何安装Kubernetes
我应该如何安装Kubernetes
|
2月前
|
人工智能 算法 调度
阿里云ACK托管集群Pro版共享GPU调度操作指南
本文介绍在阿里云ACK托管集群Pro版中,如何通过共享GPU调度实现显存与算力的精细化分配,涵盖前提条件、使用限制、节点池配置及任务部署全流程,提升GPU资源利用率,适用于AI训练与推理场景。
273 1
|
2月前
|
弹性计算 监控 调度
ACK One 注册集群云端节点池升级:IDC 集群一键接入云端 GPU 算力,接入效率提升 80%
ACK One注册集群节点池实现“一键接入”,免去手动编写脚本与GPU驱动安装,支持自动扩缩容与多场景调度,大幅提升K8s集群管理效率。
245 89
|
7月前
|
资源调度 Kubernetes 调度
从单集群到多集群的快速无损转型:ACK One 多集群应用分发
ACK One 的多集群应用分发,可以最小成本地结合您已有的单集群 CD 系统,无需对原先应用资源 YAML 进行修改,即可快速构建成多集群的 CD 系统,并同时获得强大的多集群资源调度和分发的能力。
288 9

推荐镜像

更多