From fa91b3e461d3c19a241e064375e78595113b26b4 Mon Sep 17 00:00:00 2001 From: pprokop Date: Thu, 16 Jun 2016 16:01:54 +0200 Subject: [PATCH] Adding option to deploy fluentd-elasticsearch in diffrent namespace then kube-system --- .../es-image/elasticsearch_logging_discovery.go | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/cluster/addons/fluentd-elasticsearch/es-image/elasticsearch_logging_discovery.go b/cluster/addons/fluentd-elasticsearch/es-image/elasticsearch_logging_discovery.go index fd8422f5be5..f2221112f80 100644 --- a/cluster/addons/fluentd-elasticsearch/es-image/elasticsearch_logging_discovery.go +++ b/cluster/addons/fluentd-elasticsearch/es-image/elasticsearch_logging_discovery.go @@ -19,6 +19,7 @@ package main import ( "flag" "fmt" + "os" "strings" "time" @@ -45,12 +46,20 @@ func main() { if err != nil { glog.Fatalf("Failed to make client: %v", err) } + namespace := api.NamespaceSystem + envNamespace := os.Getenv("NAMESPACE") + if envNamespace != "" { + if _, err := c.Namespaces().Get(envNamespace); err != nil { + glog.Fatalf("%s namespace doesn't exist: %v", envNamespace, err) + } + namespace = envNamespace + } var elasticsearch *api.Service // Look for endpoints associated with the Elasticsearch loggging service. // First wait for the service to become available. for t := time.Now(); time.Since(t) < 5*time.Minute; time.Sleep(10 * time.Second) { - elasticsearch, err = c.Services(api.NamespaceSystem).Get("elasticsearch-logging") + elasticsearch, err = c.Services(namespace).Get("elasticsearch-logging") if err == nil { break } @@ -67,7 +76,7 @@ func main() { // Wait for some endpoints. count := 0 for t := time.Now(); time.Since(t) < 5*time.Minute; time.Sleep(10 * time.Second) { - endpoints, err = c.Endpoints(api.NamespaceSystem).Get("elasticsearch-logging") + endpoints, err = c.Endpoints(namespace).Get("elasticsearch-logging") if err != nil { continue }