前言 👻

这段时间一直在使用java和k8s开发项目,自然就无法避免需要java客户端去操作k8s和docker registry。这里简单介绍下,基于上一篇文章使用operator-sdk自定义k8s operator生成的crd文件,java如何使用客户端去操作crd对象。

java-client 🤔

由kubernetes官方维护的java客户端项目: java-client,虽然不是很完美,但是基本可以使用了,支持deployment,service,statefulSet等,甚至你可以使用它来开发java 版的operator,如果你想的话。

该项目不同版本的兼容性不同,截止到本文书写时,该项目兼容性列表如下:

client version1.131.141.151.161.171.18
5.0.0--xxx
6.0.1+--xx
7.0.0++--x
8.0.2+++--
9.0.2++++-
10.0.0+++++

java-client 支持基于crd自动生成java crd对象代码,详情请看:自动生成java代码

java-client 支持像命令行一样使用kubectl(大雾🤣,我开发的时候还没发布)。支持 create apply delete 等等
详情请看: Kubectl Equivalence in Java

java-client 支持泛型,可以避免unchecked警告,简直就是强迫症福音。

更多代码demo可以参考:kubernetes-java-client-example


 目录


买个卤蛋,吃根冰棒