使用 Helm - 每天5分钟玩转 Docker 容器技术(163)

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: Helm 的使用方法像极了 apt 和 yum,用 Helm 来管理 Kubernetes 应用非常方便。

Helm 安装成功后,可执行 helm search 查看当前可安装的 chart。

这个列表很长,这里只截取了一部分。大家不禁会问,这些 chart 都是从哪里来的?

前面说过,Helm 可以像 apt 和 yum 管理软件包一样管理 chart。apt 和 yum 的软件包存放在仓库中,同样的,Helm 也有仓库。

Helm 安装时已经默认配置好了两个仓库:stable 和 localstable 是官方仓库,local 是用户存放自己开发的 chart 的本地仓库。

helm search 会显示 chart 位于哪个仓库,比如 local/cool-chart 和 stable/acs-engine-autoscaler

用户可以通过 helm repo add 添加更多的仓库,比如企业的私有仓库,仓库的管理和维护方法请参考官网文档 https://docs.helm.sh

与 apt 和 yum 一样,helm 也支持关键字搜索:

包括 DESCRIPTION 在内的所有信息,只要跟关键字匹配,都会显示在结果列表中。

安装 chart 也很简单,执行如下命令可以安装 MySQL。

helm install stable/mysql

如果看到如下报错,通常是因为 Tiller 服务器的权限不足。

执行如下命名添加权限:

kubectl create serviceaccount --namespace kube-system tiller
kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'

然后再次执行

helm install stable/mysql

输出分为三部分:

① chart 本次部署的描述信息:

NAME 是 release 的名字,因为我们没用 -n 参数指定,Helm 随机生成了一个,这里是 fun-zorse

NAMESPACE 是 release 部署的 namespace,默认是 default,也可以通过 --namespace 指定。

STATUS 为 DEPLOYED,表示已经将 chart 部署到集群。

② 当前 release 包含的资源:Service、Deployment、Secret 和 PersistentVolumeClaim,其名字都是 fun-zorse-mysql,命名的格式为 ReleasName-ChartName

③ NOTES 部分显示的是 release 的使用方法。比如如何访问 Service,如何获取数据库密码,以及如何连接数据库等。

通过 kubectl get 可以查看组成 release 的各个对象:

因为我们还没有准备 PersistentVolume,当前 release 还不可用。

helm list 显示已经部署的 release,helm delete 可以删除 release。

Helm 的使用方法像极了 apt 和 yum,用 Helm 来管理 Kubernetes 应用非常方便。

chart 是 Helm 的应用打包格式,下节我们详细介绍。

书籍:

1.《每天5分钟玩转Kubernetes》
https://item.jd.com/26225745440.html

2.《每天5分钟玩转Docker容器技术》
https://item.jd.com/16936307278.html

3.《每天5分钟玩转OpenStack》
https://item.jd.com/12086376.html

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1天前
|
Prometheus 监控 Cloud Native
容器化技术的性能调优与监控
【6月更文挑战第29天】本文探讨了容器(如Docker)的性能优化与监控,强调了其在云和微服务中的重要性。调优涉及资源限制设定、代码优化,通过性能测试、瓶颈分析进行迭代优化。监控目标是确保稳定性和可用性,使用工具如Portainer、CAdvisor、Prometheus来跟踪状态、性能指标和日志。监控内容涵盖容器状态、资源使用、日志和限制,策略包括设定阈值和告警机制。调优监控的优化有助于提升应用性能和企业价值。
|
1天前
|
运维 Kubernetes 安全
《阿里云产品四月刊》—享道出行:容器弹性技术驱动下的智慧出行稳定性实践(1)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
|
1天前
|
弹性计算 Cloud Native 数据库
《阿里云产品四月刊》—享道出行:容器弹性技术驱动下的智慧出行稳定性实践(2)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
|
1天前
|
弹性计算 Serverless 调度
《阿里云产品四月刊》—享道出行:容器弹性技术驱动下的智慧出行稳定性实践(3)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
|
1天前
|
弹性计算 Kubernetes 调度
《阿里云产品四月刊》—享道出行:容器弹性技术驱动下的智慧出行稳定性实践(4)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
|
3天前
|
jenkins 持续交付 开发者
利用Docker容器化部署应用的实战指南
【6月更文挑战第27天】本文详述Docker应用部署,涵盖Docker基本概念、安装、镜像制作及运行。通过编写Dockerfile构建镜像,使用`docker build`、`run`、`push`及`stop`命令管理。集成CI/CD工具如Jenkins,实现自动化构建、测试和部署,提升开发效率与部署质量。Docker助力轻量级、可移植的微服务架构。
|
1天前
|
Kubernetes Cloud Native Docker
云原生技术演进之路:从微服务到容器化
在数字化浪潮的推动下,云原生技术不断演进,为现代软件开发带来革命性变化。本文将深入探讨云原生技术的核心要素—微服务和容器化,揭示它们如何促进软件的快速迭代、可扩展性和可靠性提升。通过分析相关数据和案例研究,我们旨在阐明云原生技术在加速企业数字化转型中的关键作用。
|
2天前
|
Java API Docker
使用Spring Boot和Docker进行容器化部署
使用Spring Boot和Docker进行容器化部署
|
2天前
|
运维 Serverless 文件存储
函数计算产品使用问题之在利用Docker镜像部署应用时,容器内的应用如何能访问函数计算配置的NAS挂载
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
4天前
|
Docker 容器
技术经验分享:Docker安装及更换源
技术经验分享:Docker安装及更换源
28 0