继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

管理和安装 chart - 每天5分钟玩转 Docker 容器技术(168)

慕田峪9129951
关注TA
已关注
手记 337
粉丝 200
获赞 993

安装 chart

当我们觉得准备就绪,就可以安装 chart,Helm 支持四种安装方法:

  1. 安装仓库中的 chart,例如:helm install stable/nginx

  2. 通过 tar 包安装,例如:helm install ./nginx-1.2.3.tgz

  3. 通过 chart 本地目录安装,例如:helm install ./nginx

  4. 通过 URL 安装,例如:helm install https://example.com/charts/nginx-1.2.3.tgz

这里我们使用本地目录安装:

https://img1.mukewang.com/5afc21850001bd3820740720.jpg

当 chart 部署到 Kubernetes 集群,便可以对其进行更为全面的测试。

将 chart 添加到仓库

chart 通过测试后可以将其添加到仓库,团队其他成员就能够使用。任何 HTTP Server 都可以用作 chart 仓库,下面演示在 k8s-node1192.168.56.106 上搭建仓库。

  1. 在 k8s-node1 上启动一个 httpd 容器。
    https://img1.mukewang.com/5afc21920001cd6d12560180.jpg

  2. 通过 helm package 将 mychart 打包。
    https://img3.mukewang.com/5afc21a70001202010720116.jpg

  3. 执行 helm repo index 生成仓库的 index 文件。
    https://img4.mukewang.com/5afc21b80001782111940208.jpg 
    Helm 会扫描 myrepo 目录中的所有 tgz 包并生成 index.yaml--url指定的是新仓库的访问路径。新生成的 index.yaml 记录了当前仓库中所有 chart 的信息:
    https://img3.mukewang.com/5afc21c600019d0e10820398.jpg 
    当前只有 mychart 这一个 chart。        

  4. 将 mychart-0.1.0.tgz 和 index.yaml 上传到 k8s-node1 的 /var/www/charts 目录。
    https://img4.mukewang.com/5afc21d000011d4d05440118.jpg

  5. 通过 helm repo add 将新仓库添加到 Helm。
    https://img.mukewang.com/5afc21db0001856310940300.jpg 
    仓库命名为 newrepo,Helm 会从仓库下载 index.yaml。        

  6. 现在已经可以 repo search 到 mychart 了。
    https://img3.mukewang.com/5afc21e50001306c07680176.jpg 
    除了 newrepo/mychart,这里还有一个 local/mychart。这是因为在执行第 2 步打包操作的同时,mychart 也被同步到了 local 的仓库。        

  7. 已经可以直接从新仓库安装 mychart 了。
    https://img.mukewang.com/5afc21f50001481813960666.jpg

  8. 如果以后仓库添加了新的 chart,需要用 helm repo update 更新本地的 index。
    https://img3.mukewang.com/5afc22040001e84a09580236.jpg 
    这个操作相当于 Ubutun 的 apt-get update。        

小结

   本章我们学习了 Kubernetes 包管理器 Helm。

   Helm 让我们能够像 apt 管理 deb 包那样安装、部署、升级和删除容器化应用。

   Helm 由客户端和 Tiller 服务器组成。客户端负责管理 chart,服务器负责管理 release。

   chart 是 Helm 的应用打包格式,它由一组文件和目录构成。其中最重要的是模板,模板中定义了 Kubernetes 各类资源的配置信息,Helm 在部署时通过 values.yaml 实例化模板。

   Helm 允许用户开发自己的 chart,并为用户提供了调试工具。用户可以搭建自己的 chart 仓库,在团队中共享 chart。

   Helm 帮助用户在 Kubernetes 上高效地运行和管理微服务架构应用,Helm 非常重要。

   下节我们开始学习 Kubernetes 网络。

原文出处

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP