如何使kubernetes服务在JAVA中处理多个端口?

如何使kubernetes服务在JAVA中处理多个端口?,java,service,kubernetes,port,Java,Service,Kubernetes,Port,我正在尝试使我的服务侦听多个端口: V1Service service = new V1Service(); service.setMetadata(new V1ObjectMeta().name("tests")); V1ServiceSpec spec = new V1ServiceSpec(); spec.setType("NodePort"); spec.putSelectorItem("name", "tests"); spec.addPortsItem(new V1ServicePo

我正在尝试使我的服务侦听多个端口:

V1Service service = new V1Service();
service.setMetadata(new V1ObjectMeta().name("tests"));
V1ServiceSpec spec = new V1ServiceSpec();
spec.setType("NodePort");
spec.putSelectorItem("name", "tests");
spec.addPortsItem(new V1ServicePort().port(25452));

// WHEN I ADD ANY OF THE 3 LINES BELOW, THE CODE CRASHES, WHY?
spec.addPortsItem(new V1ServicePort().port(24932));
spec.addPortsItem(new V1ServicePort().port(25445));
spec.addPortsItem(new V1ServicePort().port(25432));

service.setSpec(spec);

mmaService = api.createNamespacedService(namespace, service, null);
但是,代码仅在包含一个端口时执行,否则执行 例外

io.kubernetes.client.ApiException: Unprocessable Entity
at io.kubernetes.client.ApiClient.handleResponse(ApiClient.java:882)
at io.kubernetes.client.ApiClient.execute(ApiClient.java:798)
at io.kubernetes.client.apis.CoreV1Api.createNamespacedServiceWithHttpInfo(CoreV1Api.java:9237)
at io.kubernetes.client.apis.CoreV1Api.createNamespacedService(CoreV1Api.java:9221)

调用
createNamespacedService
方法时引发。如何解决此问题?

如果要公开多个服务端口,必须为每个端口分配一个唯一的名称。使用具有名称的构造函数或对引用变量调用
.setName()
,因为这不是生成器方法。

如果要公开多个服务端口,必须为每个端口分配唯一的名称。使用具有名称的构造函数或对引用变量调用
.setName()
,因为这不是一个生成器方法