原生编译 Java 微服务:Kubernetes 部署与测试
1. 原生编译微服务的优势与 Kubernetes 测试背景
原生编译的微服务在启动速度和内存消耗方面,相较于基于 Java VM 的替代方案表现更为出色。接下来,我们将探讨如何使用 Kubernetes 运行这些原生编译的微服务。
1.1 准备工作:Helm 图表与 Docker 镜像
为了在 Kubernetes 中部署原生编译的微服务,我们添加了一个新的环境 Helm 图表,该图表已配置为使用包含原生编译微服务的 Docker 镜像。Helm 图表可在以下文件夹中找到:
kubernetes/helm/
└── environments
└── dev-env-native
1.2 迁移 Docker 镜像到 Minikube 实例
在将原生编译的微服务部署到 Kubernetes 之前,我们需要考虑如何提供 Docker 镜像。为避免再次运行冗长的原生编译命令以在 Minikube 实例中创建新的 Docker 镜像,我们将从 Docker Desktop 中提取 Docker 镜像并导入到 Minikube 实例中。具体步骤如下:
1. 从 Docker Desktop 导出 Docker 镜像 :
eval $(minikube docker-env -u)
docker save hands-on/native-produ