使用Helm在OpenShift上部署应用

本文详述了如何在OpenShift上使用Helm进行应用部署。首先介绍了Helm安装,然后通过创建Helm chart,定义template文件和变量,实现应用的集中管理和参数指定。示例代码展示了替换YAML文件值的过程,并提供了调试template的方法。最后,阐述了如何使用Helm进行应用的升级或卸载。
摘要由CSDN通过智能技术生成

使用Helm在OpenShift上部署应用

前言

在OpenShift上导出应用YAML配置并重新部署应用 一文中描述了如何从OpenShift中导出YAML文件,并重新部署。本文接着介绍,如何根据OpenShift的导出YAML文件来准备Helm chart,并用Helm在OpenShift上部署应用。

使用Helm部署应用的优点包括:

  • 集中管理配置文件中经常变化的部分
  • 可以在安装或升级时指定运行参数
  • 复杂的依赖管理(本文不涉及)

本文的Helm chart代码示例:

安装Helm

Helm 3只需要安装helm客户端命令工具。

在Mac OS上:

brew install helm

参见:

创建Helm chart

创建一个名为spring-db-demo-deployment的新目录。

在该目录下创建spring-db-demo的Helm chart:

helm create spring-db-demo

Helm chart目录结构

spring-db-demo的Helm chart目录结构为:

spring-db-demo
├── Chart.yaml
├── charts
├── templates
│   ├── NOTES.txt
│   ├── _helpers.tpl
│   ├── deployment.yaml
│   ├── hpa.yaml
│   ├── ingress.yaml
│   ├── service.yaml
│   ├── serviceaccount.yaml
│   └── tests
│       └── test-connection.yaml
└── values.yaml

说明:

  • spring-db-demo Chart的名称和目录名同名
  • Chart.yaml Chart信息配置文件
  • values.yaml 实例化时用来替换模板文件中的占位符的值
  • templates/ Kuberentes YAML模板文件目录
    • *.yaml Kubernetes YAML模板文件
    • _helpers.tpl 子模板,定义函数
    • NOTES.txt release notes, 运行helm install时的帮助说明
  • charts/ Chart所依赖的上游Chart目录

参见:

准备Helm template文件

删除templates/目录下的所有内容,除了_helpers.tpl

参考在OpenShift上导出应用YAML配置并重新部署应用 ,将从OpenShift上导出的YAML文件复制到templates/目录。

_helpers.tpl 中编写函数

_helpers.tpl中编写公共函数,用来替换YAML文件中的metadata.labelsselector

metadata.labels

metadata.labels内容:

app: spring-db-demo
app.kubernetes.io/component: spring-db
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值