• chart 目录结构【转】


    chart 是 Helm 的应用打包格式。chart 由一系列文件组成,这些文件描述了 Kubernetes 部署应用时所需要的资源,比如 Service、Deployment、PersistentVolumeClaim、Secret、ConfigMap 等。

    单个的 chart 可以非常简单,只用于部署一个服务,比如 Memcached;chart 也可以很复杂,部署整个应用,比如包含 HTTP Servers、 Database、消息中间件、cache 等。

    chart 将这些文件放置在预定义的目录结构中,通常整个 chart 被打成 tar 包,而且标注上版本信息,便于 Helm 部署。

    下面我们将详细讨论 chart 的目录结构以及包含的各类文件。

    chart 目录结构

    以前面 MySQL chart 为例。一旦安装了某个 chart,我们就可以在 ~/.helm/cache/archive 中找到 chart 的 tar 包。

    解压后,MySQL chart 目录结构如下:

    目录名就是 chart 的名字(不带版本信息),这里是 mysql,包含如下内容:

    Chart.yaml 
    YAML 文件,描述 chart 的概要信息。

    name 和 version 是必填项,其他都是可选。

    README.md 
    Markdown 格式的 README 文件,相当于 chart 的使用文档,此文件为可选。

    LICENSE 
    文本文件,描述 chart 的许可信息,此文件为可选。

    requirements.yaml 
    chart 可能依赖其他的 chart,这些依赖关系可通过 requirements.yaml 指定,比如:

    在安装过程中,依赖的 chart 也会被一起安装。

    values.yaml 
    chart 支持在安装的时根据参数进行定制化配置,而 values.yaml 则提供了这些配置参数的默认值。

    templates 目录 
    各类 Kubernetes 资源的配置模板都放置在这里。Helm 会将 values.yaml 中的参数值注入到模板中生成标准的 YAML 配置文件。

    模板是 chart 最重要的部分,也是 Helm 最强大的地方。模板增加了应用部署的灵活性,能够适用不同的环境,我们后面会详细讨论。

    templates/NOTES.txt 
    chart 的简易使用文档,chart 安装成功后会显示此文档内容。

    与模板一样,可以在 NOTE.txt 中插入配置参数,Helm 会动态注入参数值。

    下一节我们详细讨论 chart 模板的用法

  • 相关阅读:
    轻松理解https,So easy!
    都 9102 年了,一起来攻克 Linux 吧!
    8种常见SQL错误用法,你中招了吗?
    如何写出让同事无法维护的代码?
    Spring Boot 2.1.6 发布了!
    推荐一款 MyBatis 开发神器,为简化而生!
    vs2015制作一个超级简单的MVC项目
    解析ASP.NET WebForm和Mvc开发的区别
    asp.net 的 web form 过时了吗
    Asp.net的WebForm的落后技术
  • 原文地址:https://www.cnblogs.com/twobrother/p/11132507.html
Copyright © 2020-2023  润新知