From 3a4d2d61e2a2a7799f55f8ea025abfea960e4dda Mon Sep 17 00:00:00 2001 From: Kenneth Evensen Date: Fri, 2 Oct 2015 20:20:40 -0400 Subject: [PATCH] A more robust improvement on the cassandra example. The Kubernetes API server can be set in the pod template or by grabbing the environment variable. Nick Sabine generated this improvement. --- .../cassandra/image/kubernetes-cassandra.jar | Bin 8449 -> 8591 bytes examples/cassandra/java/pom.xml | 2 +- .../k8s/cassandra/KubernetesSeedProvider.java | 7 +++++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/examples/cassandra/image/kubernetes-cassandra.jar b/examples/cassandra/image/kubernetes-cassandra.jar index 72a6b33a75e61625158e6dd44fd8716f41cec111..77e65b04a066c27a48fe1016910a49901250a86f 100644 GIT binary patch delta 5812 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 LJ2<*@f2RBo?xAMG delta 5598 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 diff --git a/examples/cassandra/java/pom.xml b/examples/cassandra/java/pom.xml index b7a131907e0..8a95eafd0b4 100644 --- a/examples/cassandra/java/pom.xml +++ b/examples/cassandra/java/pom.xml @@ -2,7 +2,7 @@ 4.0.0 io.k8s.cassandra kubernetes-cassandra - 0.0.4 + 0.0.5 src diff --git a/examples/cassandra/java/src/io/k8s/cassandra/KubernetesSeedProvider.java b/examples/cassandra/java/src/io/k8s/cassandra/KubernetesSeedProvider.java index e4bf73be911..b194707d480 100644 --- a/examples/cassandra/java/src/io/k8s/cassandra/KubernetesSeedProvider.java +++ b/examples/cassandra/java/src/io/k8s/cassandra/KubernetesSeedProvider.java @@ -100,7 +100,10 @@ public class KubernetesSeedProvider implements SeedProvider { public List getSeeds() { List list = new ArrayList(); - String host = getEnvOrDefault("KUBERNETES_API_HOST","https://kubernetes.default.svc.cluster.local"); + //String host = "https://kubernetes.default.svc.cluster.local"; + String proto = "https://"; + String host = getEnvOrDefault("KUBERNETES_PORT_443_TCP_ADDR", "kubernetes.default.svc.cluster.local"); + String port = getEnvOrDefault("KUBERNETES_PORT_443_TCP_PORT", "443"); String serviceName = getEnvOrDefault("CASSANDRA_SERVICE", "cassandra"); String podNamespace = getEnvOrDefault("POD_NAMESPACE", "default"); String path = String.format("/api/v1/namespaces/%s/endpoints/", podNamespace); @@ -110,7 +113,7 @@ public class KubernetesSeedProvider implements SeedProvider { SSLContext ctx = SSLContext.getInstance("SSL"); ctx.init(null, trustAll, new SecureRandom()); - URL url = new URL(host + path + serviceName); + URL url = new URL(proto + host + ":" + port + path + serviceName); logger.info("Getting endpoints from " + url); HttpsURLConnection conn = (HttpsURLConnection)url.openConnection();