4.3 开发验证与部署上线
Koupleless 基座、模块开发验证与部署上线
本文主要介绍动态合并部署模式,用于省资源与提高研发效率。如果你只是想节省资源,可以使用静态合并部署。
这里也提供了视频教程,可点击此处查看。
基座接入
模块接入
模块开发验证
可以有两种开发验证方式:
- 本地环境开发验证
- K8S 集群环境开发验证
本地环境开发验证
安装方法: 使用 golang 工具链
- 在 golang 官网 下载对应的 golang 版本,版本需要在 1.21 以上。
- 执行
go install github.com/koupleless/arkctl@v0.2.1
命令,安装 arkctl 工具。
安装方法: 下载二进制
- 根据实际运行操作系统,下载 arkctl 。
- 将对应的二进制解压并放到合适的系统变量 PATH 下。
- 在基座和模块已经改造完成后,启动好基座后,可以使用 arkctl 快速完成构建与部署,将模块部署到基座中。
如何找到 PATH 的值?
Linux/Mac 下在终端执行
echo $PATH
# 选择一个目录,将 arkctl 放到该目录下
Windows 下
- 右键我的电脑。
- 点击属性。
- 点击高级系统设置。
- 点击环境变量。
- 双击 Path 变量。
- 在弹出的对话框中,可以看到当前的 Path 变量值。
- 找到对应的目录,将 arkctl.exe 放到该目录下。
注意,在 Windows 环境下,如果开启 Windows Defender,浏览器下载二进制时可能会误报,提示如下:
报错原因可参考[go 官方文档](https://go.dev/doc/faq#virus)。此报错可以忽略,放心下载。
使用
快速部署构建好的模块 jar 包。
arkctl deploy ${模块构建出的 jar 包路径}
构建当前目录下的 pom 项目,并将 target 目录下的 biz jar 包部署到基座中。
arkctl deploy
查看基座目前部署的模块
arkctl status
有命令行交互地卸载模块
# 调用此命令后,会列出当前部署的模块,用户可以通过上下键选择要卸载的模块。
arkctl undeploy
指定模块名称卸载模块
arkctl undeploy ${模块名称:模块版本}
K8S 集群环境开发验证, 以 minikube 集群为例
基座发布
- 基座构建成镜像,推送到镜像中心
- 基座部署到 k8s 集群中,创建基座的 service,暴露端口, 可参考这里
- 执行 minikube service base-web-single-host-service, 访问基座的服务
模块发布
- 部署模块到 k8s 集群中
arkctl deploy ${模块构建出的 jar 包路径} --pod ${namespace}/${podname}
模块部署上线
- 使用 helm 方式部署 ModuleController 到 k8s 集群
- 使用 ModuleController 提供的模块部署能力,发布模块到集群机器上,具备可灰度、可追溯、流量无损能力,详细可参见此处
更多实验请查看 samples 用例
Feedback
Was this page helpful?
Welcome propose feedback to community!
Welcome propose feedback to community, or improve this document directly.。
最后修改 2024.20.08: Merge pull request #60 from koupleless/youji-dev (06c775f)