Changelog.md
All New change are in Changelog
Images:
Full Changelog: https://github.com/kubernetes/ingress-nginx/compare/controller-v1.4.0...controller-v1.5.1
We will discuss the results of our Community Survey, progress on the stabilization project, and ideas going forward with the project at Kubecon NA 2022 in Detroit. Come join us and let us hear what you'd like to see in the future for ingress-nginx.
https://kccncna2022.sched.com/event/18lgl?iframe=no
Kubernetes Registry change notice The @kubernetesio container image host http://k8s.gcr.io is actually getting redirected to the community controlled http://registry.k8s.io starting with a small portion of traffic on October 3rd.
If you notice any issues, please ping Ben Elder, @thockin, @ameukam,or report issues in slack to sig-k8s-infra slack channel.
ADDED
_request_duration_seconds Histogram_connect_duration_seconds Histogram_header_duration_seconds Histogram_response_duration_seconds HistogramUpdated
_response_size Histogram_request_size Histogram_requests CounterDEPRECATED
_bytes_sent HistogramREMOVED
ingress_upstream_header_seconds SummaryAlso upgraded to golang 1.19.1
Images:
Full Changelog: https://github.com/kubernetes/ingress-nginx/compare/controller-v1.3.1...controller-v1.4.0
In v1.3.1 leader elections will be done entirely using the Lease API and no longer using configmaps. v1.3.0 is a safe transition version, using v1.3.0 can automatically complete the merging of election locks, and then you can safely upgrade to v1.3.1.
Also, important note, with the Release of Kubernetes v1.25 we are dropping support for the legacy branches, Also, important note, with the release of Kubernetes v1.25, we are dropping support for the legacy edition, that means all version <1.0.0 of the ingress-nginx-controller.
IMPORTANT CHANGES:
All other Changes
Full Changelog: https://github.com/kubernetes/ingress-nginx/compare/controller-v1.3.0...controller-v1.3.1
Image:
IMPORTANT CHANGES:
coordination.k8s.io/leases resource for leaderelection lockKNOWN ISSUES:
Changes:
Image:
This release removes the root and alias directives in NGINX, this can avoid some potential security attacks.
Changes:
Image:
This minor version release, introduces 2 breaking changes. For the first time, an option to jail/chroot the nginx process, inside the controller container, is being introduced. This provides an additional layer of security, for sensitive information like K8S serviceaccounts. This release also brings a special new feature of deep inspection into objects. The inspection is a walk through of all the spec, checking for possible attempts to escape configs. Currently such an inspection only occurs for networking.Ingress. Additionally there are fixes for the recently announced CVEs on busybox & ssl_client. And there is a fix to a recently introduced redirection related bug, that was setting the protocol on URLs to "nil".
Changes:
Image:
This release introduces Jail/chroot nginx process inside controller container for the first time
Changes:
Image:
This release upgrades Alpine to 3.14.4 and nginx to 1.19.10
Patches OpenSSL CVE-2022-0778
Patches Libxml2 CVE-2022-23308
Breaking Changes:
Changes:
Image:
This release bumps grpc version to 1.44.0 & runc to version 1.1.0. The release also re-introduces the ingress.class annotation, which was previously declared as deprecated. Besides that, several bug fixes and improvements are listed below.
Changes:
Image:
This release contains several fixes and improvements. This image is now built using Go v1.17.6 and gRPC v1.43.0. See detailed list below.
Changes:
Image:
This release makes the annotation annotation-value-word-blocklist backwards compatible by being an empty list instead of prescribed defaults.
Effectively reverting 7874 but keeping the functionality of annotation-value-word-blocklist
See Issue 7939 for more discussion
Admins should still consider putting a reasonable block list in place, more information on why can be found here and how in our documentation here
Changes:
Image:
Possible Breaking Change We now implement string sanitization in annotation values. This means that words like "location", "by_lua" and others will drop the reconciliation of an Ingress object.
Users from mod_security and other features should be aware that some blocked values may be used by those features and must be manually unblocked by the Ingress Administrator.
For more details please check [https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#annotation-value-word-blocklist]
Changes:
Image:
Possible Breaking Change We have disabled the builtin ssl_session_cache due to possible memory fragmentation. This should not impact the majority of users, but please let us know if you face any problem
Changes:
Image:
Known Issues
New Features:
Changes:
Image:
Known Issues
New Features:
Changes:
Image:
Known Issues
New Features:
Changes:
This is a breaking change
This release only supports Kubernetes versions >= v1.19. The support for Ingress Object in networking.k8s.io/v1beta is being dropped and manifests should now use networking.k8s.io/v1.
Image:
k8s.gcr.io/ingress-nginx/controller:v1.0.0@sha256:0851b34f69f69352bf168e6ccf30e1e20714a264ab1ecd1933e4d8c0fc3215c6Known Issues Ingress Controller only supports cluster scoped IngressClass and needs cluster wide permission for this object, otherwise it is not going to start. We plan to fix this in v1.0.1 and issues #7510 and #7502 are tracking this.
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.50.0@sha256:f46fc2d161c97a9d950635acb86fb3f8d4adcfb03ee241ea89c6cde16aa3fdf8This release makes the annotation annotation-value-word-blocklist backwards compatible by being an empty list instead of prescribed defaults.
Effectively reverting 7874 but keeping the functionality of annotation-value-word-blocklist
See Issue 7939 for more discussion
Admins should still consider putting a reasonable block list in place, more information on why can be found here and how in our documentation here
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.49.3@sha256:35fe394c82164efa8f47f3ed0be981b3f23da77175bbb8268a9ae438851c8324Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.49.2@sha256:84e351228337bb7b09f0e90e6b6f5e2f8f4cf7d618c1ddc1e966f23902d273dbChanges:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.49.1@sha256:4080849490fd4f61416ad7bdba6fdd0ee58164f2e13df1128b407ce82d5f3986New Features:
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.49.0@sha256:e9707504ad0d4c119036b6d41ace4a33596139d3feb9ccb6617813ce48c3eeefNew Features:
Changes:
nginx-http-auth-digest, ngx_http_substitutions_filter_module, nginx-opentracing, opentracing-cpp, ModSecurity-nginx, yaml-cpp, msgpack-c, lua-nginx-module, stream-lua-nginx-module, lua-upstream-nginx-module, luajit2, dd-opentracing-cpp, ngx_http_geoip2_module, nginx_ajp_module, lua-resty-string, lua-resty-balancer, lua-resty-core, lua-cjson, lua-resty-cookie, lua-resty-lrucache, lua-resty-dns, lua-resty-http, lua-resty-memcached, lua-resty-ipmatcher.Image:
k8s.gcr.io/ingress-nginx/controller:v0.48.1@sha256:e9fb216ace49dfa4a5983b183067e97496e7a8b307d2093f4278cd550c303899New Features:
Changes:
** This is a breaking change**
This release only supports Kubernetes versions >= v1.19. The support for Ingress Object in networking.k8s.io/v1beta is being dropped and manifests should now use networking.k8s.io/v1.
Image:
k8s.gcr.io/ingress-nginx/controller:v1.0.0-beta.3@sha256:44a7a06b71187a4529b0a9edee5cc22bdf71b414470eff696c3869ea8d90a695Changes:
THIS IS A BREAKING CHANGE
This release only supports Kubernetes versions >= v1.19. The support for Ingress Object in networking.k8s.io/v1beta is being dropped and manifests should now use networking.k8s.io/v1.
Image:
k8s.gcr.io/ingress-nginx/controller:v1.0.0-beta.1@sha256:f058f3fdc940095957695829745956c6acddcaef839907360965e27fd3348e2e_ New Features:_
Changes:
THIS IS A BREAKING CHANGE
This release only supports Kubernetes versions >= v1.19. The support for Ingress Object in networking.k8s.io/v1beta is being dropped and manifests should now use networking.k8s.io/v1.
Image:
k8s.gcr.io/ingress-nginx/controller:v1.0.0-alpha.2@sha256:04a0ad3a1279c2a58898e789eed767eafa138ee1e5b9b23a988c6e8485cf958d_ New Features:_
THIS IS A BREAKING CHANGE
This release only supports Kubernetes versions >= v1.19. The support for Ingress Object in networking.k8s.io/v1beta is being dropped and manifests should now use networking.k8s.io/v1.
Image:
k8s.gcr.io/ingress-nginx/controller:v1.0.0-alpha.1@sha256:32f3f02a038c0d7cf33b71a14028c3a4ddee6f4c3fe5fadfa14b915e5e0d9faf_ New Features:_
Image:
k8s.gcr.io/ingress-nginx/controller:v0.47.0@sha256:a1e4efc107be0bb78f32eaec37bef17d7a0c81bec8066cdf2572508d21351d0bNew Features:
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.46.0@sha256:52f0058bed0a17ab0fb35628ba97e8d52b5d32299fbc03cc0f6c7b9ff036b61aChanges:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.45.0@sha256:c4390c53f348c3bd4e60a5dd6a11c35799ae78c49388090140b9d72ccede1755New Features:
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.44.0@sha256:3dd0fac48073beaca2d67a78c746c7593f9c575168a17139a9955a82c63c4b9aNew Features:
Changes:
Documentation:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.43.0@sha256:9bba603b99bf25f6d117cf1235b6598c16033ad027b143c90fa5b3cc583c5713New Features:
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.42.0@sha256:f7187418c647af4a0039938b0ab36c2322ac3662d16be69f9cc178bfd25f7eeeNew Features:
Changes:
controller.maxmindLicenseKeyDocumentation:
CHANGELOG.md file to the README.md fileImage:
k8s.gcr.io/ingress-nginx/controller:v0.41.2@sha256:1f4f402b9c14f3ae92b11ada1dfe9893a88f0faeb0b2f4b903e2c67a0c3bf0deFix regression introduced in 0.41.0 with external authentication
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.41.1@sha256:595f5c08aaa2bdfd1afdfb2e0f1a668bc85d96f80c097ddb3d4241f0c9122549Fix routing regression introduced in 0.41.0 with PathType Exact
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.41.0@sha256:e6019e536cfb921afb99408d5292fa88b017c49dd29d05fc8dbc456aa770d590New Features:
Changes:
Documentation:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.40.2@sha256:46ba23c3fbaafd9e5bd01ea85b2f921d9f2217be082580edc22e6c704a83f02fImprove HandleAdmission resiliency
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.40.1@sha256:abffcf2d25e3e7c7b67a315a7c664ec79a1588c9c945d3c7a75637c2f55caec6Fix regression with clusters running v1.16 where AdmissionReview V1 is available but not enabled.
Changes:
Image:
k8s.gcr.io/ingress-nginx/controller:v0.40.0@sha256:b954d8ff1466eb236162c644bd64e9027a212c82b484cbe47cc21da45fe8bc59Breaking Changes:
Kubernetes v1.16 or higher is required. Only ValidatingWebhookConfiguration AdmissionReviewVersions v1 is supported.
Following the Ingress extensions/v1beta1 deprecation, please use networking.k8s.io/v1beta1 or networking.k8s.io/v1 (Kubernetes v1.19 or higher) for new Ingress definitions
New Features:
nginx.ingress.kubernetes.io/limit-burst-multiplier to set value for burst multiplier on rate limitNew defaults:
Changes:
Documentation:
topologySpreadConstraint to controllerImage:
k8s.gcr.io/ingress-nginx/controller:v0.35.0@sha256:fc4979d8b8443a831c9789b5155cded454cb7de737a8b727bc2ba0106d2eae8bNew Features:
enable-real-ip to enable realip_moduleChanges:
Documentation:
Image:
us.gcr.io/k8s-artifacts-prod/ingress-nginx/controller:v0.34.1@sha256:0e072dddd1f7f8fc8909a2ca6f65e76c5f0d2fcfb8be47935ae3457e8bbceb20eu.gcr.io/k8s-artifacts-prod/ingress-nginx/controller:v0.34.1@sha256:0e072dddd1f7f8fc8909a2ca6f65e76c5f0d2fcfb8be47935ae3457e8bbceb20asia.gcr.io/k8s-artifacts-prod/ingress-nginx/controller:v0.34.1@sha256:0e072dddd1f7f8fc8909a2ca6f65e76c5f0d2fcfb8be47935ae3457e8bbceb20Fix regression introduced in #5691 related to annotations use-regex and rewrite.
Update go to 1.14.5
Changes:
Image:
us.gcr.io/k8s-artifacts-prod/ingress-nginx/controller:v0.34.0@sha256:56633bd00dab33d92ba14c6e709126a762d54a75a6e72437adefeaaca0abb069eu.gcr.io/k8s-artifacts-prod/ingress-nginx/controller:v0.34.0@sha256:56633bd00dab33d92ba14c6e709126a762d54a75a6e72437adefeaaca0abb069asia.gcr.io/k8s-artifacts-prod/ingress-nginx/controller:v0.34.0@sha256:56633bd00dab33d92ba14c6e709126a762d54a75a6e72437adefeaaca0abb069Breaking Changes:
The repository https://quay.io/repository/kubernetes-ingress-controller/nginx-ingress-controller is deprecated and read-only for historical purposes.
New Features:
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.33.0
New Features:
Deprecations:
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.32.0
Fix regression in validating webhook when the ingress controller is installed in Kubernetes v1.18
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.31.1
Fix regression in validating webhook
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.31.0
New Features:
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.30.0
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.29.0
New Features:
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.28.0
Fix occasional prometheus http: superfluous response.WriteHeader call... error #4943
Remove prometheus socket before the start of metrics collector #4961
Reduce CPU utilization when the ingress controller is shutting down #4959
Fixes a flaw (CVE-2020-8553) when auth-type basic annotation is used #4960
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.27.1
Fix regression in Jaeger opentracing module, incorrect UID in webhook AdmissionResponse in Kubernetes > 1.16.0.
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.27.0
New Features:
Breaking Changes:
Enable download of GeoLite2 databases #4896
From maxmind website:
Due to upcoming data privacy regulations, we are making significant changes to how you access free GeoLite2 databases starting December 30, 2019.
Learn more on our blog https://blog.maxmind.com/2019/12/significant-changes-to-accessing-and-using-geolite2-databases/
Because of this change, it is not clear we can provide the databases directly from the docker image. To enable the feature, we provide two options:
--maxmind-license-key to download the databases when the ingress controller starts.GeoLite2-City.mmdb and GeoLite2-ASN.mmdb in the directory /etc/nginx/geoip.If any of these conditions are not met, the geoip2 module will be disabled
The feature lua-resty-waf was removed.
Due to the migration to alpinelinux the uid of the user is different. Please make sure to update it runAsUser: 101 or the ingress controller will not start (CrashLoopBackOff).
Changes:
$cfg.LogFormatStream in log_stream access logminikube status output of newer versions, fix shellcheck lintsDocumentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.26.2
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.26.1
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.26.0
New Features:
Add support for NGINX proxy_ssl_* directives
Add support for FastCGI backends
Add support for multiple alias and remove duplication of SSL certificates
Support configuring basic auth credentials as a map of user/password hashes
Caching support for external authentication annotation with new annotations auth-cache-key and auth-cache-duration
Allow Requests to be Mirrored to different backends #4379
Improve connection draining when ingress controller pod is deleted using a lifecycle hook:
With this new hook, we increased the default terminationGracePeriodSeconds from 30 seconds to 300, allowing the draining of connections up to five minutes.
If the active connections end before that, the pod will terminate gracefully at that time.
To effectively take advantage of this feature, the Configmap feature worker-shutdown-timeout new value is 240s instead of 10s.
IMPORTANT: this value has a side effect during reloads, consuming more memory until the old NGINX workers are replaced.
lifecycle:
preStop:
exec:
command:
- /wait-shutdown
mimalloc as a drop-in replacement for malloc.
This feature can be enabled using the LD_PRELOAD environment variable in the ingress controller deployment
Example:
env:
- name: LD_PRELOAD
value: /usr/local/lib/libmimalloc.so
Please check the additional options it provides.
Breaking Changes:
The variable $the_real_ip variable was removed from template and default log_format.
The default value of configmap setting proxy-add-original-uri-header is now "false".
When the setting proxy-add-original-uri-header is "true", the ingress controller adds a new header X-Original-Uri with the value of NGINX variable $request_uri.
In most of the cases this is not an issue but with request with long URLs it could lead to unexpected errors in the application defined in the Ingress serviceName, like issue 4593 - 431 Request Header Fields Too Large
Non-functional improvements:
Automation of NGINX image using terraform scripts
Removal of Go profiling on port :10254 to use localhost:10245
To profile the ingress controller Go binary, use:
INGRESS_PODS=($(kubectl get pods -n ingress-nginx -l app.kubernetes.io/name=ingress-nginx -o 'jsonpath={..metadata.name}'))
kubectl port-forward -n ingress-nginx pod/${INGRESS_PODS[0]} 10245
Using the URL http://localhost:10245/debug/pprof/ to reach the profiler.
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.25.1
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.25.0
New Features:
networking.k8s.io/v1beta1 package (for Kubernetes cluster > v1.14.0) 4127$proxy_alternative_upstream_name in the log to show a hit in a canary endpoint #4246Non-functional improvements:
Changes:
Documentation:
placeholderImage: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.24.1
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.24.0
New Features:
Breaking changes:
x-forwarded-prefix annotation changed from a boolean to a string, see #3786Changes:
X-Request-ID for the default-backend, too.Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.23.0
New Features:
canary-by-header-value annotation.Breaking changes:
The NGINX server listening in port 18080 was removed. It was replaced by a server using an unix socket as port #3684
This server was internal to the ingress controller. In case this was being acceded from the outside, you can restore the old server using the http-snippet feature in the configuration configmap like:
http-snippet: |
server {
listen 18080;
location /nginx_status {
allow 127.0.0.1;
allow ::1;
deny all;
stub_status on;
}
location / {
return 404;
}
}
Changes:
Documentation:
Deprecations:
session-cookie-hash is deprecated and will be removed in 0.24.--force-namespace-isolation is deprecated and will be removed in 0.24. Currently this annotation is being replaced by --watch-namespaceImage: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.22.0
New Features:
Breaking changes:
Annotation nginx.ingress.kubernetes.io/rewrite-target has changed and will not behave as expected if you don't update them.
Refer to https://kubernetes.github.io/ingress-nginx/examples/rewrite/#rewrite-target on how to change it.
Refer to https://github.com/kubernetes/ingress-nginx/pull/3174#issuecomment-455665710 on how to do seamless migration.
Annotations nginx.ingress.kubernetes.io/add-base-url and nginx.ingress.kubernetes.io/base-url-scheme were removed.
Please check issue #3174 for details.
By default do not trust any client to extract true client IP address from X-Forwarded-For header using realip module (use-forwarded-headers: "false")
Changes:
Service data through to the TCP balancer script.Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.21.0
New Features:
ssl-protocols: TLSv1.3 TLSv1.2Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.20.0
New Features:
Changes:
app.kubernetes.io/part-of: ingress-nginxDocumentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.19.0
New Features:
--enable-dynamic-certificatesworker-processes=auto uses all the availables)Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.18.0
New Features:
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.17.1
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.17.0
New Features:
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.16.2
Breaking changes:
Running as user requires an update in the deployment manifest.
securityContext:
capabilities:
drop:
- ALL
add:
- NET_BIND_SERVICE
# www-data -> 33
runAsUser: 33
Note: the deploy guide contains this change
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.16.1
Breaking changes:
Running as user requires an update in the deployment manifest.
securityContext:
capabilities:
drop:
- ALL
add:
- NET_BIND_SERVICE
# www-data -> 33
runAsUser: 33
Note: the deploy guide contains this change
New Features:
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.16.1
Breaking changes:
Running as user requires an update in the deployment manifest.
securityContext:
capabilities:
drop:
- ALL
add:
- NET_BIND_SERVICE
# www-data -> 33
runAsUser: 33
Note: the deploy guide contains this change
New Features:
Changes:
Documentation:
enable-brotliImage: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.15.0
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.14.0
New Features:
upstream-hash-by annotation in dynamic configuration modeChanges:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.13.0
New Features:
nginx.ingress.kubernetes.io/grpc-backend: "true" enable this featurenginx.ingress.kubernetes.io/secure-backends: "true"Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.12.0
New Features:
--enable-dynamic-configuration (disabled by default).--publish-status-address to manually set the Ingress status IP address./.well-known/acme-challenge to HTTPS.Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.11.0
New Features:
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.10.2
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.10.1
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.10.0
Breaking changes:
Changed the names of default Nginx ingress prometheus metrics. If you are scraping default Nginx ingress metrics with prometheus the metrics changes are as follows:
nginx_active_connections_total -> nginx_connections_total{state="active"}
nginx_accepted_connections_total -> nginx_connections_total{state="accepted"}
nginx_handled_connections_total -> nginx_connections_total{state="handled"}
nginx_current_reading_connections_total -> nginx_connections{state="reading"}
nginx_current_writing_connections_total -> nginx_connections{state="writing"}
current_waiting_connections_total -> nginx_connections{state="waiting"}
New Features:
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.9.0
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.9.0-beta.19
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.9.0-beta.18
Breaking changes:
kubernetes.io/ingress.class remains unchanged (this annotation is used in multiple ingress controllers)New Features:
Changes:
Documentation:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.9.0-beta.17
Changes:
Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.9.0-beta.16
New Features:
Breaking changes:
TLSv1.2 and the default cipher list is ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256Known issues:
Changes:
X-Forwarded-For headermake container for OSX.Documentation:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.15
New Features:
Changes:
Documentation:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.14
New Features:
Changes:
Documentation:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.13
New Features:
CF-Connecting-IP as header)Changes:
Documentation:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.12
Breaking changes:
--enable-ssl-passthroughNew Features:
Changes:
Documentation:
proxy-set-headers and add-headersImage: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.11
Fixes NGINX CVE-2017-7529
Changes:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.10
Fix release 0.9-beta.9
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.9
New Features:
Changes:
X-Forwarded-Host from the reverse proxy beforeImage: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.8
Changes:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.7
Changes:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.6
Changes:
signin-url to auth-urlImage: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.5
Changes:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.4
New Features:
Changes:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.3
New Features:
log-format-upstream directive in the configuration configmap.ingress.kubernetes.io/force-ssl-redirectingress.kubernetes.io/auth-signin annotation. Please check this exampleBreaking changes:
ssl-dh-param configuration in configmap is now the name of a secret that contains the Diffie-Hellman keyChanges:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.2
New Features:
proxy-set-headers to allow set custom headers before send traffic to backends. Example heredisable-access-log: "true" in the configuration ConfigMap.ingress.kubernetes.io/affinity. Example hereChanges:
Image: gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.1
New Features:
--publish-service that set the Service fronting the ingress controllersBreaking changes:
--nginx-configmap was replaced with --configmapbody-size was replaced with proxy-body-sizeChanges: