Timo Reimann
3a7de0be5c
Add missing fmt verb specifier in k8s provider.
2017-01-26 11:05:13 +01:00
Adam Stankiewicz
d15a17b634
Allow for wildcards in k8s ingress host, fixes #792 ( #1029 )
2017-01-20 14:16:05 +01:00
Diego de Oliveira
d74ea22d7d
IP-per-task: ( #841 )
...
Support IP per task with marathon/mesos
2017-01-06 16:26:50 +01:00
Vincent Demeester
8a348423ae
Import order as goimports does
...
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-30 19:04:02 +01:00
Julien Salleyron
d469d426f8
Remove useless func in FuncMaps
2016-12-08 20:44:13 +01:00
Julien Salleyron
ec05fbcf19
feat: Add defaultFuncMap to template
2016-12-08 20:44:13 +01:00
Yves Peter
fc788eb426
Kubernetes: cleanup channel handling
...
Only use one channel for all watches
Re-use stop channel from the provider
Skip events that have already been handled by the provider, builds on 007f8cc48ea9504bb7754c5e3244124be422f47d
2016-12-07 20:12:14 +01:00
Phil Kates
87eac1dc1a
Fix deadlock in k8s provider
...
On a reasonably sized cluster:
63 nodes
87 services
90 endpoints
The initialization of the k8s provider would hang.
I tracked this down to the ResourceEventHandlerFuncs. Once you reach the
channel buffer size (10) the k8s Informer gets stuck. You can't read or
write messages to the channel anymore. I think this is probably a lock
issue somewhere in k8s but the more reasonable solution for the traefik
usecase is to just drop events when the queue is full since we only use
the events for signalling, not their content, thus dropping an event
doesn't matter.
2016-12-07 20:12:14 +01:00
Emile Vauge
dca08af003
Merge v1.1.1 into master
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-12-06 08:44:23 +01:00
Yves Peter
9236a43a4d
kubernetes: moved doc of client to the interface
2016-11-30 19:25:22 +01:00
yvespp
7f4eddf6d6
k8s: changed debug log, removed unneeded stop channels, increased watch channel buffer
2016-11-30 19:16:48 +01:00
Yves Peter
0b78375211
Kubernetes client: set resync period to 5 minutes for more robustness
2016-11-30 19:16:48 +01:00
Yves Peter
15540764a0
Switched Kubernetes provider to new client implementation: https://github.com/kubernetes/client-go
2016-11-30 19:16:48 +01:00
Emile Vauge
841be8d806
Fix Swarm panic
2016-11-28 16:46:37 +01:00
Ryan Leary
055cd01bb7
Fix GroupsAsSubDomains option for Mesos and Marathon ( #868 )
...
* Fix GroupsAsSubDomains option for Mesos and Marathon
* Refactor reverseStringSlice function
2016-11-28 14:59:08 +01:00
Emile Vauge
926eb099f1
Fix k8s client panic
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-11-24 19:19:10 +01:00
Alexander Block
b4ea68b88a
Fix missing value for k8s watch request parameter ( #874 )
...
Fixes: 732
2016-11-23 23:21:09 +01:00
WTFKr0
2bf9acd95e
Normalize backend even if is user-defined ( #865 )
...
Signed-off-by: WTFKr0 <thomas.kovatchitch@gmail.com>
2016-11-23 21:31:37 +01:00
Kristian Klausen
a8cb905255
consul/kv.tmpl: weight default value should be a int ( #826 )
...
* consul/kv.tmpl: weight default value should be a int
Fix #821
* Use 0 as default weight in all backends
2016-11-23 14:49:55 +01:00
Lewis Headden
567387aee0
Enable TCP Keep Alive for Marathon Client and make value configurable ( #784 )
...
* Resolve rebase conflicts
* Fix imports that VSCode messed up
2016-11-22 16:11:28 +01:00
Emile Vauge
2dda3d2feb
Fix Kubernetes watch leak
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-11-17 17:37:06 +01:00
Julien Salleyron
2af6cc4d1b
feat(provider): Add Eureka Provider
2016-11-16 22:00:24 +01:00
Ed Robinson
5c0297fb61
Context is part of the stdlib on 1.7
2016-11-16 14:03:23 +00:00
Bruce Lee
e068ee09ca
Allow specification of dialertimeout
...
Address documentation comments
2016-11-14 10:57:46 -05:00
Emile Vauge
c9cc3c9895
Fix contraint store/read from KV
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-11-09 21:08:37 +01:00
Guilhem Lettron
85a20b9a39
Use first index for ports
2016-11-02 17:31:27 +01:00
Guilhem Lettron
5641af437e
Use first port by default
...
If no information is given, use first index of ports
2016-10-28 11:59:24 +02:00
Guilhem Lettron
1c8d3ded3d
Add name to some case to help debug
2016-10-28 11:59:24 +02:00
Emile Vauge
404a73a712
fIx marathon template with dots in ID
2016-10-13 15:33:23 +02:00
Guilhem Lettron
bd5009058b
Merge branch 'v1.1' into marathon-lb
2016-10-12 15:51:41 +02:00
Guilhem Lettron
3f65503a79
Add basic compatibility with marathon-lb
...
Add compatibility with labels: `HAPROXY_GROUP` and `HAPROXY_0_VHOST`.
* `HAPROXY_GROUP` become a new tag
* `HAPROXY_0_VHOST` become a rule `Host:`
https://github.com/mesosphere/marathon-lb
2016-10-07 19:30:16 +02:00
Vincent Lepot
6ac1216f8c
Fix networkMap construction (pointer always reference the last network found)
2016-10-07 16:44:33 +02:00
Vincent Demeester
d68389dc52
Add support for docker healthcheck
...
- React to health_status events
- Filter container that have a health status *and* that are not healthy
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-10-03 11:01:37 +02:00
Emile Vauge
b9f76394aa
Update Mesos documentation
2016-09-30 15:37:52 +02:00
Emile Vauge
e72e65858f
Challenge certs PEM encoding
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-09-30 11:26:25 +02:00
Emile Vauge
a42845502e
Add ACME store
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-09-30 11:26:17 +02:00
Emile Vauge
bea5ad3f13
Add leadership election
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-09-30 11:26:05 +02:00
Emile Vauge
5a0440d6f8
Add KV datastore
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-09-30 11:26:05 +02:00
Emile Vauge
462d8b3e74
Fix Docker & KV templates for sticky
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-09-30 10:57:55 +02:00
Emile Vauge
291c3b6dbc
Fix sticky sessions Docker/Marathon labels
2016-09-30 10:56:47 +02:00
Owen Marshall
81fddb4ccf
missed a cherry pick, good start :=/
2016-09-30 10:56:17 +02:00
Owen Marshall
c9d4c5ae3e
Fix Docker integration problems
2016-09-30 10:56:17 +02:00
Owen Marshall
be5b1fd92b
docs, sticky session for Docker
2016-09-30 10:56:17 +02:00
Owen Marshall
dc52abf4ce
Add sticky session support to Traefik.
...
This change adds sticky session support, by using the new
oxy/rr/StickySession feature.
To use it, set traefik.backend.sticky to true.
This is currently only implemented in the wrr load balancer, and against
the Marathon backend, but lifting it should be very doable.
In the wrr load balancer, a cookie called _TRAEFIK_SERVERNAME will be
set with the backend to use. If the cookie is altered to an invalid
backend server, or the server is removed from the load balancer, the
next server will be used instead.
Otherwise, the cookie will be checked in Oxy's rr on access and if valid
the connection will be wired through to it.
2016-09-30 10:56:17 +02:00
Emile Vauge
364958cbaf
Move jobs backoff back into traefik
...
https://github.com/cenk/backoff/pull/27#issuecomment-245842725
2016-09-27 21:45:29 +02:00
Diego Osse Fernandes
99c8bffcbf
Initial support for Docker 1.12 Swarm Mode
2016-09-27 14:21:38 -03:00
tuier
1624c51cb5
remove unused endpoint when using constraints in marathon
2016-09-23 22:05:11 +01:00
tuier
361dc94002
fmt
2016-09-21 17:27:48 +02:00
tuier
cc0fdf15ef
test for task and application constraint
2016-09-21 17:27:47 +02:00
tuier
928675a847
feat(constraints): Support constraint for Marathon provider
2016-09-21 17:27:47 +02:00