public class KubernetesClient extends Object implements Kubernetes, KubernetesExtensions
KubernetesFactory
and the differences between
the core Kubernetes
API and the KubernetesExtensions
Constructor and Description |
---|
KubernetesClient() |
KubernetesClient(KubernetesFactory factory) |
KubernetesClient(String url) |
public KubernetesClient()
public KubernetesClient(String url)
public KubernetesClient(KubernetesFactory factory)
public Kubernetes getKubernetes()
public KubernetesExtensions getKubernetesExtensions()
public KubernetesFactory getFactory()
public void setFactory(KubernetesFactory factory)
public String getAddress()
@GET @Path(value="pods") public PodListSchema getPods()
Kubernetes
getPods
in interface Kubernetes
@DELETE @Path(value="pods/{podId}") public String deletePod(@NotNull String podId) throws Exception
Kubernetes
deletePod
in interface Kubernetes
Exception
@GET @Path(value="replicationControllers/{controllerId}") @Produces(value="application/json") public ReplicationControllerSchema getReplicationController(@NotNull String controllerId)
Kubernetes
getReplicationController
in interface Kubernetes
@DELETE @Path(value="replicationControllers/{controllerId}") @Produces(value="application/json") public String deleteReplicationController(@NotNull String controllerId) throws Exception
Kubernetes
deleteReplicationController
in interface Kubernetes
Exception
@Path(value="replicationControllers") @GET @Produces(value="application/json") public ReplicationControllerListSchema getReplicationControllers()
Kubernetes
getReplicationControllers
in interface Kubernetes
@PUT @Path(value="replicationControllers/{controllerId}") @Consumes(value="application/json") public String updateReplicationController(@NotNull String controllerId, ReplicationControllerSchema entity) throws Exception
Kubernetes
updateReplicationController
in interface Kubernetes
entity
- e.g. {
"id": "nginxController",
"apiVersion": "v1beta1",
"kind": "ReplicationController",
"desiredState": {
"replicas": 2,
"replicaSelector": {"name": "nginx"},
"podTemplate": {
"desiredState": {
"manifest": {
"version": "v1beta1",
"id": "nginxController",
"containers": [{
"name": "nginx",
"image": "dockerfile/nginx",
"ports": [{"containerPort": 80, "hostPort": 8080}]
}]
}
},
"labels": {"name": "nginx"}
}},
"labels": {"name": "nginx"}
}Exception
@PUT @Path(value="services/{serviceId}") @Consumes(value="application/json") public String updateService(@NotNull String serviceId, ServiceSchema entity) throws Exception
Kubernetes
updateService
in interface Kubernetes
entity
- e.g. {
"kind": "Service",
"apiVersion": "v1beta1",
"id": "example",
"port": 8000,
"labels": {
"name": "nginx"
},
"selector": {
"name": "nginx"
}
}Exception
@GET @Path(value="services/{serviceId}") @Produces(value="application/json") public ServiceSchema getService(@NotNull String serviceId)
Kubernetes
getService
in interface Kubernetes
@DELETE @Path(value="services/{serviceId}") @Produces(value="application/json") public String deleteService(@NotNull String serviceId) throws Exception
Kubernetes
deleteService
in interface Kubernetes
Exception
@Path(value="services") @POST @Consumes(value="application/json") public String createService(ServiceSchema entity) throws Exception
Kubernetes
createService
in interface Kubernetes
entity
- e.g. {
"kind": "Service",
"apiVersion": "v1beta1",
"id": "example",
"port": 8000,
"labels": {
"name": "nginx"
},
"selector": {
"name": "nginx"
}
}Exception
@GET @Path(value="pods/{podId}") public PodSchema getPod(@NotNull String podId)
Kubernetes
getPod
in interface Kubernetes
@PUT @Path(value="pods/{podId}") @Consumes(value="application/json") public String updatePod(@NotNull String podId, PodSchema entity) throws Exception
Kubernetes
updatePod
in interface Kubernetes
entity
- e.g. {
"kind": "Pod",
"apiVersion": "v1beta1",
"id": "php",
"desiredState": {
"manifest": {
"version": "v1beta1",
"id": "php",
"containers": [{
"name": "nginx",
"image": "dockerfile/nginx",
"ports": [{
"containerPort": 80,
"hostPort": 8080
}],
"livenessProbe": {
"enabled": true,
"type": "http",
"initialDelaySeconds": 30,
"httpGet": {
"path": "/index.html",
"port": "8080"
}
}
}]
}
},
"labels": {
"name": "foo"
}
}Exception
@Path(value="services") @GET @Produces(value="application/json") public ServiceListSchema getServices()
Kubernetes
getServices
in interface Kubernetes
@POST @Path(value="pods") @Consumes(value="application/json") public String createPod(PodSchema entity) throws Exception
Kubernetes
createPod
in interface Kubernetes
entity
- e.g. {
"kind": "Pod",
"apiVersion": "v1beta1",
"id": "php",
"desiredState": {
"manifest": {
"version": "v1beta1",
"id": "php",
"containers": [{
"name": "nginx",
"image": "dockerfile/nginx",
"ports": [{
"containerPort": 80,
"hostPort": 8080
}],
"livenessProbe": {
"enabled": true,
"type": "http",
"initialDelaySeconds": 30,
"httpGet": {
"path": "/index.html",
"port": "8080"
}
}
}]
}
},
"labels": {
"name": "foo"
}
}Exception
@Path(value="replicationControllers") @POST @Consumes(value="application/json") public String createReplicationController(ReplicationControllerSchema entity) throws Exception
Kubernetes
createReplicationController
in interface Kubernetes
entity
- e.g. {
"id": "nginxController",
"apiVersion": "v1beta1",
"kind": "ReplicationController",
"desiredState": {
"replicas": 2,
"replicaSelector": {"name": "nginx"},
"podTemplate": {
"desiredState": {
"manifest": {
"version": "v1beta1",
"id": "nginxController",
"containers": [{
"name": "nginx",
"image": "dockerfile/nginx",
"ports": [{"containerPort": 80, "hostPort": 8080}]
}]
}
},
"labels": {"name": "nginx"}
}},
"labels": {"name": "nginx"}
}Exception
@POST @Path(value="configs") @Consumes(value="application/json") public String createConfig(Object entity) throws Exception
createConfig
in interface KubernetesExtensions
Exception
@POST @Path(value="template") @Consumes(value="application/json") public String createTemplate(Object entity) throws Exception
createTemplate
in interface KubernetesExtensions
Exception
@POST @Path(value="templateConfigs") @Consumes(value="application/json") public String createTemplateConfig(Object entity) throws Exception
createTemplateConfig
in interface KubernetesExtensions
Exception
public ReplicationControllerSchema getReplicationControllerForPod(String podId)
public ReplicationControllerSchema getReplicationControllerForPod(PodSchema pod)
Copyright © 2011–2014 Red Hat. All rights reserved.