Skip to content

Collector cannot push to elasticsearch behind TLS proxy #485

@tanner-bruce

Description

@tanner-bruce

We are running a remote collector that should push to an Elasticsearch cluster behind a TLS reverse proxy.

Upon startup, the docker container will die after printing the message
{"level":"fatal","ts":1508514781.8733246,"caller":"collector/main.go:86","msg":"Unable to set up builder","error":"health check timeout: no Elasticsearch node available","errorVerbose":"no Elasticsearch node available\ngithub.com/uber/jaeger/vendor/github.com/olivere/elastic.init\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/github.com/olivere/elastic/client.go:84\ngithub.com/uber/jaeger/pkg/es/config.init\n\t/home/travis/gopath/src/github.com/uber/jaeger/pkg/es/config/config.go:102\ngithub.com/uber/jaeger/cmd/builder.init\n\t/home/travis/gopath/src/github.com/uber/jaeger/cmd/builder/doc.go:20\nmain.init\n\t/home/travis/gopath/src/github.com/uber/jaeger/cmd/collector/main.go:161\nruntime.main\n\t/home/travis/.gimme/versions/go1.7.linux.amd64/src/runtime/proc.go:172\nruntime.goexit\n\t/home/travis/.gimme/versions/go1.7.linux.amd64/src/runtime/asm_amd64.s:2086\nhealth check timeout\ngithub.com/uber/jaeger/vendor/github.com/olivere/elastic.(*Client).startupHealthcheck\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/github.com/olivere/elastic/client.go:1067\ngithub.com/uber/jaeger/vendor/github.com/olivere/elastic.NewClient\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/github.com/olivere/elastic/client.go:240\ngithub.com/uber/jaeger/pkg/es/config.(*Configuration).NewClient\n\t/home/travis/gopath/src/github.com/uber/jaeger/pkg/es/config/config.go:50\ngithub.com/uber/jaeger/cmd/collector/app/builder.(*SpanHandlerBuilder).initElasticStore\n\t/home/travis/gopath/src/github.com/uber/jaeger/cmd/collector/app/builder/span_handler_builder.go:102\ngithub.com/uber/jaeger/cmd/collector/app/builder.NewSpanHandlerBuilder\n\t/home/travis/gopath/src/github.com/uber/jaeger/cmd/collector/app/builder/span_handler_builder.go:75\nmain.main.func1\n\t/home/travis/gopath/src/github.com/uber/jaeger/cmd/collector/main.go:84\ngithub.com/uber/jaeger/vendor/github.com/spf13/cobra.(*Command).execute\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/github.com/spf13/cobra/command.go:636\ngithub.com/uber/jaeger/vendor/github.com/spf13/cobra.(*Command).ExecuteC\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/github.com/spf13/cobra/command.go:722\ngithub.com/uber/jaeger/vendor/github.com/spf13/cobra.(*Command).Execute\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/github.com/spf13/cobra/command.go:681\nmain.main\n\t/home/travis/gopath/src/github.com/uber/jaeger/cmd/collector/main.go:139\nruntime.main\n\t/home/travis/.gimme/versions/go1.7.linux.amd64/src/runtime/proc.go:183\nruntime.goexit\n\t/home/travis/.gimme/versions/go1.7.linux.amd64/src/runtime/asm_amd64.s:2086","stacktrace":"github.com/uber/jaeger/vendor/go.uber.org/zap.Stack\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/go.uber.org/zap/field.go:191\ngithub.com/uber/jaeger/vendor/go.uber.org/zap.(*Logger).check\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/go.uber.org/zap/logger.go:301\ngithub.com/uber/jaeger/vendor/go.uber.org/zap.(*Logger).Fatal\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/go.uber.org/zap/logger.go:235\nmain.main.func1\n\t/home/travis/gopath/src/github.com/uber/jaeger/cmd/collector/main.go:86\ngithub.com/uber/jaeger/vendor/github.com/spf13/cobra.(*Command).execute\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/github.com/spf13/cobra/command.go:636\ngithub.com/uber/jaeger/vendor/github.com/spf13/cobra.(*Command).ExecuteC\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/github.com/spf13/cobra/command.go:722\ngithub.com/uber/jaeger/vendor/github.com/spf13/cobra.(*Command).Execute\n\t/home/travis/gopath/src/github.com/uber/jaeger/vendor/github.com/spf13/cobra/command.go:681\nmain.main\n\t/home/travis/gopath/src/github.com/uber/jaeger/cmd/collector/main.go:139"}

I've filed olivere/elastic#625 for the bad error message, but would like to open the discussion up here as to whether the jaeger-collector docker image should include ca-certificates.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions