本篇内容主要讲解“如何使用java kustomize”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用java kustomize”吧!
Windows下载
Linux:
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编排为基础,自定义其余的内容。
在项目根目录创建kustomize
文件夹,其中包含lan,test,prod
三个子文件夹(内网,线上测试,正式环境),
每个文件夹下必须有一个kustomization.yaml
文件,可选的env.yaml
用于配置环境变量,volume.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处配置可相同。
自定义配置用于更新及增加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 # 自定义编排,如配置环境变量
使用kustomize build <path>
命令,生成最终编排文件。以下是按照上图文件结构,生成lan环境下编排。
kustomize build lan
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”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。