本篇内容主要讲解“如何使用java kustomize”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用java kustomize”吧!
下载安装
curl -s "https://raw.githubusercontent.com/ \
kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" | bash
linux环境下,为方便命令行调用,可将文件移动到PATH变量下的bin目录:sudo mv kustomize /usr/local/bin
为什么使用
统一规范容器编排文件。
复用通用配置。
分环境管理编排文件。
专注于环境变量,存储卷等本地化的配置,无需关心端口,监控,发布等细节。
使用方式
使用前提:理解base编排的概念:base编排在远程git仓库,提供基础的约定好的配置,如端口,监控,健康监测,环境变量等。各应用程序以base编排为基础,自定义其余的内容。
1.创建目录结构

2.修改kustomization.yaml配置说明
以下以学服系统(lmss-system)中的lan环境为例子

ref的值为lan/test/master,分别对应内网,测试,正式环境,表示引用base编排
为基础。
用于替换标签app的name,即 labels下app: java 替换为app: lmss-system。
用于替换metadata的name,同理。
用于替换容器名称,同理。
镜像地址,同理。
用于声明扩展的自定义文件,图中示例是用于修改环境变量的env.yml,存储卷volume.yml。
综上,在同一个项目,三种不同的环境下,1处,5处不同,env.yml和volume.yml内容不同,2,3,4,6处配置可相同。
3.增加自定义配置(可选的)
自定义配置用于更新及增加base编排的配置,可以声明独立的yml文件,然后在上图中第6处列出。自定义的yml需要配置metadata的name和containers的name,用以匹配并更新。在base编排中,metadata的name为java,第一个containers的name为java。可以按照如下格式来填写自定义字段:
apiVersion: apps/v1
kind: Deployment
metadata:
name: java
spec:
template:
spec:
# 自定义编排,如声明存储卷
containers:
- name: java
# 自定义编排,如配置环境变量
4.生成最终的编排文件
使用kustomize build <path>
命令,生成最终编排文件。以下是按照上图文件结构,生成lan环境下编排。
kustomize build lan
附录:base编排的deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: java
name: java
spec:
selector:
matchLabels:
app: java
template:
metadata:
labels:
app: java
spec:
containers:
- image: java
name: java
ports:
- containerPort: 8080
name: web
- containerPort: 8081
name: actuator
imagePullSecrets:
- name: docker-secret
到此,相信大家对“如何使用java kustomize”有了更深的了解,不妨来实际操作一番吧!这里是天达云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!