okryvoshapka-connyun
8cc9afe8ee
Added Global External Authentication settings to configmap parameters incl. addons
2019-05-03 12:08:16 +02:00
Thibault Jamet
1cd17cd12c
Implement a validation webhook
...
In case some ingress have a syntax error in the snippet configuration,
the freshly generated configuration will not be reloaded to prevent tearing down existing rules.
Although, once inserted, this configuration is preventing from any other valid configuration to be inserted as it remains in the ingresses of the cluster.
To solve this problem, implement an optional validation webhook that simulates the addition of the ingress to be added together with the rest of ingresses.
In case the generated configuration is not validated by nginx, deny the insertion of the ingress.
In case certificates are mounted using kubernetes secrets, when those
changes, keys are automatically updated in the container volume, and the
controller reloads it using the filewatcher.
Related changes:
- Update vendors
- Extract useful functions to check configuration with an additional ingress
- Update documentation for validating webhook
- Add validating webhook examples
- Add a metric for each syntax check success and errors
- Add more certificate generation examples
2019-04-18 19:07:04 +02:00
Kubernetes Prow Robot
34734edc6e
Merge pull request #4005 from Shopify/proxy-next-upstream-timeout
...
Support proxy_next_upstream_timeout
2019-04-15 09:10:09 -07:00
Alex Kursell
ffeb1fe348
Support proxy_next_upstream_timeout
2019-04-15 11:08:57 -04:00
Elvin Efendi
13a7e2c5d0
refactor GetFakeSSLCert
2019-04-14 09:35:48 -04:00
Kubernetes Prow Robot
4c37e0e4b7
Merge pull request #4004 from Shopify/no-valgrind
...
Remove valgrind
2019-04-13 20:48:01 -07:00
Elvin Efendi
b1a6aa2973
make sure unit test create fakecertificate
2019-04-13 16:35:52 -04:00
Elvin Efendi
417af76e97
properly handle default and custom default certs in dynamic ssl mode
2019-04-13 12:32:06 -04:00
Alex Kursell
ae592821c6
Remove valgrind
2019-04-12 12:09:52 -04:00
Elvin Efendi
fc6e7c9be0
fix dynamic cert bug
2019-04-09 22:11:21 -04:00
Kubernetes Prow Robot
d3f9fbb8fb
Merge pull request #3960 from Shopify/fix-add-headers-segfault
...
Fix segfault on reference to nonexistent configmap
2019-04-04 08:52:53 -07:00
Manuel Alejandro de Brito Fontes
951f7d7c1b
Refactor equals
2019-04-03 22:39:32 -03:00
Alex Kursell
f6beef960d
Fix segfault on reference to nonexistent configmap
2019-04-02 16:39:42 -04:00
Kubernetes Prow Robot
39ecab8d5a
Merge pull request #3954 from Shopify/lb-configmap
...
Fix load-balance configmap value
2019-04-02 05:10:34 -07:00
Alex Kursell
4f819b6256
Fix load-balance configmap value
2019-04-01 15:55:36 -04:00
Kubernetes Prow Robot
b87cc5a1a6
Merge pull request #3786 from Shopify/rewrite-x-forwarded-prefix
...
Fix x-forwarded-prefix annotation
2019-03-31 16:18:32 -07:00
Elvin Efendi
496ff07bf1
replace some of the Nginx configuration to Lua code
2019-03-31 12:04:52 -04:00
Kubernetes Prow Robot
4bee401d16
Merge pull request #3947 from vncntvandriessche/bug/silent-custom-default-certificate-failure
...
Adds a log warning when falling back to default fake cert
2019-03-31 08:42:32 -07:00
Alex Kursell
188295550c
Simplify x-forwarded-prefix annotation
2019-03-29 16:25:25 -04:00
Vincent Van Driessche
23902058f9
Adds a log warning when falling back to default fake cert
2019-03-29 17:30:10 +01:00
Manuel Alejandro de Brito Fontes
14a9e9f3fa
Update dependencies client-go to release-11.0 and kubernetes-1.14.0
2019-03-28 20:43:18 -03:00
Manuel Alejandro de Brito Fontes
3ec1028d0b
Fix dynamic SSL certificate for aliases and redirect-from-to-www
2019-03-28 16:29:11 -03:00
Kubernetes Prow Robot
e624fe171d
Merge pull request #3839 from perprogramming/bugfix/panic-on-multiple-non-matching-canary
...
Fix panic on multiple non-matching canary
2019-03-27 16:46:48 -07:00
Kubernetes Prow Robot
614a2d43bc
Merge pull request #3895 from jacksontj/issue_3881
...
Correctly format ipv6 resolver config for lua
2019-03-14 11:22:27 -07:00
Kubernetes Prow Robot
189e2db412
Merge pull request #3889 from Shopify/simplify-controller-annotations
...
Separate out annotation assignment logic
2019-03-14 11:00:38 -07:00
Thomas Jackson
eba4a8b87c
Correctly format ipv6 resolver config for lua
...
Fixes #3881
2019-03-14 10:00:24 -07:00
Kubernetes Prow Robot
e0793650d0
Merge pull request #3885 from aledbf/status
...
Refactor status update
2019-03-13 08:19:36 -07:00
Alex Kursell
d74cc69693
Separate out annotation assignment logic
2019-03-12 14:18:09 -04:00
Manuel Alejandro de Brito Fontes
f4e4335d8c
Only the leader updates metrics for SSL certificate expiration
2019-03-12 12:08:24 -03:00
Per Bernhardt
c995e13249
Improve text, error level, tests...
2019-03-12 15:57:36 +01:00
Alex Kursell
d8fe2d992b
Remove useless nodeip call and deprecate --force-namespace-isolation
2019-03-11 18:19:13 -04:00
Manuel Alejandro de Brito Fontes
20a89480f0
Use full election leader ID
2019-03-11 13:11:27 -03:00
Manuel Alejandro de Brito Fontes
7c717cabcf
Add promehteus metric about leader election status
2019-03-11 13:11:27 -03:00
Manuel Alejandro de Brito Fontes
0a39425e8f
Refactor status update
2019-03-11 13:11:26 -03:00
Kubernetes Prow Robot
8e7480e0f1
Merge pull request #3853 from aledbf/remove-authbind
...
Remove authbind
2019-03-11 07:09:29 -07:00
Elvin Efendi
5667ea5d67
bugfix: when secret includes ca.crt store it on disk even in dynamic cert mode
2019-03-11 00:53:06 -04:00
Elvin Efendi
70df5e03e5
clean up certificate processing
2019-03-11 00:53:06 -04:00
Alejandro Pedraza
7ea245e6e6
Add test
...
Signed-off-by: Alejandro Pedraza <alejandro.pedraza@gmail.com>
2019-03-07 06:18:06 -05:00
Alejandro Pedraza
a3c87cf9cb
Properly set ing.Service when there are multiple rules with different hosts using the same path
...
Fixes #3611
Signed-off-by: Alejandro Pedraza <alejandro.pedraza@gmail.com>
2019-03-07 06:06:24 -05:00
Manuel Alejandro de Brito Fontes
d898169484
Fix ssl-dh-param issue when secret does not exit
2019-03-05 16:31:33 -03:00
Manuel Alejandro de Brito Fontes
26f2b1330f
Remove authbind
2019-03-05 10:08:34 -03:00
Alex Kursell
d3ac73be79
Remove session-cookie-hash annotation
2019-03-04 10:34:48 -05:00
Per Bernhardt
8a40e82ffb
Fix panic on multiple non-matching canary
2019-03-04 12:30:59 +01:00
Mikhail Marchenko
8b3702c829
Enable access log for default backend
...
disable log on default_server
2019-02-26 11:14:31 +03:00
jasongwartz
3865e30a00
Changes CustomHTTPErrors annotation to use custom default backend
...
Updates e2e test
Removes focus from e2e test
Fixes renamed function
Adds tests for new template funcs
Addresses gofmt
Updates e2e test, fixes custom-default-backend test by creating service
Updates docs
2019-02-24 22:48:56 +01:00
Kubernetes Prow Robot
7b2495047f
Merge pull request #3781 from zoumo/proxy-buffer-number
...
feat: configurable proxy buffers number
2019-02-22 12:11:46 -08:00
Jim Zhang
6305e1d152
fix: run gofmt
2019-02-22 15:04:19 +08:00
Jim Zhang
dc63e5d185
fix: rename proxy-buffer-number to proxy-buffers-number
2019-02-22 10:21:17 +08:00
Taoge
24993f359f
- remove annoations in nginxcontroller struct
2019-02-21 19:14:11 +08:00
Jim Zhang
c92d29d462
feat: configurable proxy buffer number
2019-02-20 18:05:09 +08:00
Anthony Ho
ec04852526
Create custom annotation for satisfy "value"
2019-02-19 15:58:35 -05:00
Kubernetes Prow Robot
784d57ea69
Merge pull request #3695 from yowenter/patch-1
...
> Don't reload nginx when L4 endpoints changed
2019-02-19 11:27:11 -08:00
TaoGe
b03049c0af
> Don't reload nginx when L4 service pods changed
...
Since we use lua upstream for L4 service balancer. We don't need reload nginx when L4 service pod changed.
2019-02-19 14:31:45 +08:00
Manuel Alejandro de Brito Fontes
bef6ff9042
Do not log unnecessarily ( #3771 )
2019-02-16 20:56:18 -03:00
Alan J Castonguay
a29c27ed4c
Datadog Opentracing support - part 2
...
This commit is part 2 of 2, adding configuration of the
Datadog Opentracing module to the controller.
Fixes half of #3752
2019-02-15 15:20:10 -05:00
Kubernetes Prow Robot
908a2ae506
Merge pull request #3764 from ElvinEfendi/cleanup-confusing-attribute
...
delete confusing CustomErrors attribute to make things more explicit
2019-02-14 03:26:21 -08:00
Elvin Efendi
adc128711b
delete confusing CustomErrors attribute to make things more explicit
2019-02-13 22:41:02 -05:00
Kubernetes Prow Robot
c8d30755a9
Merge pull request #3748 from aledbf/update-image
...
Update nginx image
2019-02-13 15:14:08 -08:00
Alex Kursell
7e3304d4f9
Apply annotations to default location
2019-02-11 14:32:49 -05:00
Sebastiaan Tammer
fc5e99a151
Parse environment variables in OpenTracing configuration
2019-02-10 16:59:05 +01:00
Manuel Alejandro de Brito Fontes
7dc17a603d
Update nginx image
2019-02-09 18:53:31 -03:00
Elvin Efendi
aca51a3d4e
dont log unnecessarily
2019-02-07 13:22:02 -05:00
Kubernetes Prow Robot
ea9055b613
Merge pull request #3728 from Shopify/fix-test-list-ingresses
...
Fix flaky test
2019-02-07 07:08:56 -08:00
Kubernetes Prow Robot
4dd0365c01
Merge pull request #3734 from Shopify/remove-old-dicts
...
remove old unused lua dicts
2019-02-06 20:21:28 -08:00
Kubernetes Prow Robot
6386da7e6f
Merge pull request #3736 from Shopify/increase-log-level
...
do not unnecessarily log
2019-02-06 19:24:50 -08:00
Kubernetes Prow Robot
ef7d7cf7d1
Merge pull request #3667 from Shopify/fix-worker-connection-calculation
...
worker_connections should be less (3/4th) than worker_rlimit_nofile
2019-02-06 15:11:20 -08:00
Elvin Efendi
e7383bdf3d
do not unnecessarily log
2019-02-06 17:39:38 -05:00
Elvin Efendi
d99390f402
remove old unused lua dicts
2019-02-06 17:33:16 -05:00
Kubernetes Prow Robot
17e788b8e1
Merge pull request #3684 from aledbf/health
...
Replace Status port using a socket
2019-02-06 13:49:08 -08:00
Manuel Alejandro de Brito Fontes
34b0580225
Replace Status port using a socket
2019-02-06 18:00:10 -03:00
Alex Kursell
b5a9f6c000
Fix flaky test
2019-02-05 18:02:21 -05:00
Elvin Efendi
638f965a8f
worker_connections should be less than worker_rlimit_nofile
2019-02-02 22:30:36 -05:00
minherz
de2a1ece6d
add header-value annotation
...
add new annotation (header-value)
parse it and propogate to lua script
alter balancer rule to include it into the canary routing logic
add e2e test to validate fallback for canary-by-header-value
add description of canary-by-header-value to documentation
2019-01-30 23:23:44 +02:00
Fernando Diaz
7b507095f4
Increase Unit Test Coverage for Templates
...
Increases the Coverage for nginx ingress template
functions. The majority of the added unit tests
are for checking the invalid type handling.
2019-01-29 22:55:44 -06:00
Kubernetes Prow Robot
bd248250be
Merge pull request #3702 from stamm/access_logs_params
...
Add params for access log
2019-01-28 07:30:00 -08:00
Rustam Zagirov
5dee6af957
add params for access log
2019-01-26 21:42:11 +03:00
Alex Kursell
ca74960905
Fix --disable-catch-all
2019-01-25 14:53:55 -05:00
Elvin Efendi
bdf6e47004
rename sysctlFSFileMax to rlimitMaxNumFiles to reflect what it actually does
2019-01-15 15:34:17 -05:00
Manuel Alejandro de Brito Fontes
e7236afc83
Fix invalid validation creating prometheus valid host values
2019-01-14 10:59:55 -03:00
Manuel Alejandro de Brito Fontes
b10b60f9ae
Revert max-worker-connections default value ( #3660 )
2019-01-13 10:53:18 -03:00
Manuel Alejandro de Brito Fontes
3483eb375e
Remove flag sort-backends
2019-01-11 14:43:02 -03:00
Manuel Alejandro de Brito Fontes
a3bcbeb3d2
Add support for redirect https to https when from-to-www-redirect is defined
2019-01-10 20:59:49 -03:00
Shai Katz
edd87fbae3
add limit connection status code
...
add default conn status code
add missing colon
add limit connection status code
2019-01-09 19:31:10 +02:00
Maxime Ginters
7142791d41
Fix duplicate alternative backend merging
2019-01-08 11:52:08 -05:00
Maxime Ginters
3fa8395f7f
Fix a bug in Ingress update handler
2019-01-08 09:28:42 -05:00
Kubernetes Prow Robot
8f57f9578d
Merge pull request #3586 from Shopify/disable-catch-all
...
Add --disable-catch-all option to disable catch-all server
2019-01-07 07:16:26 -08:00
Kubernetes Prow Robot
c326c55414
Merge pull request #3507 from aledbf/remove-temporal
...
Remove temporal configuration file after a while
2019-01-04 11:56:29 -08:00
Manuel Alejandro de Brito Fontes
c830a73255
Remove temporal configuration file after a while
2019-01-04 16:11:38 -03:00
Kubernetes Prow Robot
79bdfcbe84
Merge pull request #3620 from walkafwalka/server-alias-metrics
...
Added server alias to metrics
2019-01-04 11:10:39 -08:00
Kubernetes Prow Robot
2c3ce07135
Merge pull request #3396 from flugel-it/master
...
New balancer implementation: consistent hash subset
2019-01-04 10:31:03 -08:00
Aaron Walker
27ace6ba40
Fixed possibility of duplicate server.Alias
2019-01-03 12:09:31 -08:00
Kubernetes Prow Robot
c62dc221bf
Merge pull request #3615 from kppullin/fix-l4-external-names
...
Pass k8s `Service` data through to the TCP balancer script.
2019-01-03 06:53:56 -08:00
Diego Woitasen
60b983503b
Consistent hashing to a subset of nodes. It works like consistent hash,
...
but instead of mapping to a single node, we map to a subset of nodes.
2019-01-03 01:32:52 -03:00
Kubernetes Prow Robot
71cc6df74f
Merge pull request #3174 from Shopify/rewrite-regex
...
Generalize Rewrite Block Creation and Deprecate AddBaseUrl (not backwards compatible)
2019-01-02 12:30:18 -08:00
Aaron Walker
cb4e376093
Added server alias to metrics
2019-01-02 12:23:59 -08:00
Kevin Pullin
f005d4c3ec
L4 config - Only send Service.Spec
instead of entire Service
.
2019-01-02 09:32:57 -08:00
Kubernetes Prow Robot
6d8ffd99aa
Merge pull request #3582 from aledbf/sort-by-creation
...
Sort ingresses by creation timestamp
2019-01-02 07:42:05 -08:00
Kevin Pullin
f0173f0822
Pass k8s Service
data through to the TCP balancer script.
...
Fixes broken L4 ExternalName services.
Details
---------
The `tcp_udp_balancer.lua` script checks if the property
`backend.service.spec["type"]` equals "ExternalName". If so,
the script does a DNS lookup on the name in order to configure
the backend configuration.
However, before this commit, the k8s `Service` data was
_not_ set on the `Backend` struct passed into the `tcp_udp_balancer.lua`
script and therefore the ExternalName check always returned false.
This commit fixes the issue by setting the `Service` field on
the `Backend` struct. This also requires adding a new field to the
`L4Backend` struct first, so that it's available to set on the `Backend`.
2019-01-01 20:50:41 -08:00
ramnes
bf7b5ebd81
Add an option to automatically set worker_connections based on worker_rlimit_nofile
2018-12-27 18:36:19 +01:00
Manuel Alejandro de Brito Fontes
b2fa243b97
Sort ingresses by creation timestamp
2018-12-27 10:48:01 -03:00