kubernetes-ingress

NGINX and NGINX Plus Ingress Controllers for Kubernetes

APACHE-2.0 License

Stars
4.6K
Committers
168

Bot releases are visible (Hide)

kubernetes-ingress - v1.11.3

Published by pleshakov over 3 years ago

Help make the NGINX Ingress Controller better by participating in our survey!

New in NGINX Ingress Controller v1.11.3

🔨 Maintenance

  • Release 1.11.3 (#1628) @pleshakov The release includes NGINX 1.21.0

Upgrade

  • For NGINX, use the v1.11.3 image from our DockerHub: nginx/nginx-ingress:1.11.3, nginx/nginx-ingress:1.11.3-alpine or nginx/nginx-ingress:1.11.3-ubi
  • For NGINX Plus, please build your own image using the v1.11.3 source code.
  • For Helm, use version 0.9.3 of the chart.

Resources

kubernetes-ingress - v1.11.2

Published by ciarams87 over 3 years ago

Help make the NGINX Ingress Controller better by participating in our survey!

New in NGINX Ingress Controller v1.11.2

📝 Documentation

  • Release 1.11.2 (#1608) @ciarams87

🔨 Maintenance

  • chore: update nginx plus version to R23 P1 (#1607) @ciarams87

Upgrade

  • For NGINX, use the v1.11.2 image from our DockerHub: nginx/nginx-ingress:1.11.2, nginx/nginx-ingress:1.11.2-alpine or nginx/nginx-ingress:1.11.2-ubi
  • For NGINX Plus, please build your own image using the v1.11.2 source code.
  • For Helm, use version 0.9.2 of the chart.

Resources

kubernetes-ingress - v1.11.1

Published by ciarams87 over 3 years ago

Help make the NGINX Ingress Controller better by participating in our survey!

New in NGINX Ingress Controller v1.11.1

  • Update NGINX version to 1.19.9.
  • Update the OpenSSL libraries used in the UBI images
  • Fixed documentation in the Helm README

Helm Chart

  • The version of the Helm chart is now 0.9.1.

Upgrade

  • For NGINX, use the 1.11.1 image from our DockerHub: nginx/nginx-ingress:1.11.1, nginx/nginx-ingress:1.11.1-alpine or nginx/nginx-ingress:1.11.1-ubi
  • For NGINX Plus, please build your own image using the 1.11.1 source code.
  • For Helm, use version 0.9.1 of the chart.

Resources

kubernetes-ingress - v1.11.0

Published by github-actions[bot] over 3 years ago

Help make the NGINX Ingress Controller better by participating in our survey!

New in NGINX Ingress Controller v1.11.0

  • tests/waf-policy-appprotect (#1451) @vepatel
  • Update NGINX version to 1.19.8 (#1455) @lucacome
  • Add status update to Delete handling (#1447) @soneillf5
  • Add status checks in policy tests (#1412) @vepatel
  • Add WAF policy (#1378) @Dean-Coakley
  • Ap uds tests (#1352) @vepatel
  • Add status field to policy resource (#1317) @LorcanMcVeigh

🚀 Features

  • Add support for ClusterIP in upstreams in VirtualServers/VirtualServerRoutes (#1449) @lucacome
  • Add serverSnippets to TransportServer (#1413) @LorcanMcVeigh
  • Add status field to TransportServer resource (#1425) @soneillf5
  • Support IngressClassName in TransportServer (#1420) @pleshakov
  • Handle host and listener collisions for TransportServer resource (#1415) @pleshakov
  • Add active health checks to TransportServer (#1384) @LorcanMcVeigh
  • Add passive health checks to TransportServer (#1382) @LorcanMcVeigh
  • Add configurable timeouts to TransportServer (#1346) @LorcanMcVeigh
  • Improve VirtualServer/VirtualServerRoute warnings for policies (#1322) @pleshakov
  • Add stricter validation for some ingress annotations (#1288) @mikestephen

💣 Breaking Change

  • Refactor Dockerfile and Makefile (#1241) @lucacome

🐛 Bug Fixes

  • Temporary fix for release 1.11 (#1490) @lucacome
  • Wait for caches to sync when the Ingress Controller starts (#1457) @pleshakov
  • Fix type in transport server rbac (#1453) @soneillf5
  • Add whitespace to invalid values for time fields in resources (#1445) @soneillf5
  • Fix transport server description (#1446) @soneillf5
  • Fix setting host header in action proxy in VirtualServer/VirtualServerRoute (#1444) @pleshakov
  • Add rbac config for transport server status (#1442) @soneillf5
  • Tests/fix test data (#1441) @vepatel
  • Fix python tests (#1426) @pleshakov
  • GitHub action fixes (#1429) @lucacome
  • Add IC version to images pushed to Docker Hub (#1423) @lucacome
  • Add VS/VSR status update upon WAF policy User Defined Signature update (#1418) @Dean-Coakley
  • Fix bug in TS health check (#1417) @LorcanMcVeigh
  • Fix virtual server health check to generate time correctly (#1409) @soneillf5
  • Fix reload timeout calculation for verifying NGINX reloads (#1396) @soneillf5
  • Time values have whitespace stripped and seconds have units added (#1371) @mikestephen

📝 Documentation

  • Update docs (#1486) @pleshakov
  • Add notes about CRDs requirement (#1482) @pleshakov
  • Add tech support statement (#1478) @pleshakov
  • docs: remove broken opentracing example for now (#1467) @ciarams87
  • Update docs (#1465) @pleshakov
  • Add support for ClusterIP in upstreams in VirtualServers/VirtualServerRoutes (#1449) @lucacome
  • Fix setting host header in action proxy in VirtualServer/VirtualServerRoute (#1444) @pleshakov
  • Add serverSnippets to TransportServer (#1413) @LorcanMcVeigh
  • Clarify AppProtect gRPC support (#1438) @pleshakov
  • Add status field to TransportServer resource (#1425) @soneillf5
  • Support IngressClassName in TransportServer (#1420) @pleshakov
  • Refactor Dockerfile and Makefile (#1241) @lucacome
  • Handle host and listener collisions for TransportServer resource (#1415) @pleshakov
  • Add active health checks to TransportServer (#1384) @LorcanMcVeigh
  • Add Kubernetes 1.20 support, Remove Kubernetes 1.15 support (#1385) @Dean-Coakley
  • Bump sigs.k8s.io/controller-tools from 0.4.1 to 0.5.0 (#1405) @dependabot
  • Fix WAF policy example (#1398) @Dean-Coakley
  • Improve Image build instructions (#1377) @jasonwilliams14
  • Update index.rst (#1379) @jputrino
  • Docs: Add removal of trailing CRDs to uninstall notes (#1320) @Dean-Coakley
  • Fix link to custom log format example in docs (#1326) @Dean-Coakley

🔨 Maintenance

  • Temporary fix for release 1.11 (#1490) @lucacome
  • chore: Auto sync crds (#1487) @ciarams87
  • Bump github.com/prometheus/client_golang from 1.9.0 to 1.10.0 (#1474) @dependabot
  • Bump k8s.io/code-generator from 0.20.4 to 0.20.5 (#1475) @dependabot
  • Bump k8s.io/client-go from 0.20.4 to 0.20.5 (#1473) @dependabot
  • Update files for release 1.10.1 (#1462) @lucacome
  • Use variables in Makefile to reduce noise (#1463) @lucacome
  • Prune labels (#1443) @lucacome
  • Add in_review label (#1452) @pleshakov
  • Bump pytest-html from 2.1.1 to 3.1.1 in /perf-tests (#1370) @dependabot
  • Update Go version to 1.16 (#1456) @lucacome
  • Increase operations per run to 100 in actions/stale (#1450) @lucacome
  • Bump github.com/google/go-cmp from 0.5.4 to 0.5.5 (#1437) @dependabot
  • Add GitHub workflow to check for stale PRs and issues (#1430) @lucacome
  • Add labels and label syncer (#1433) @lucacome
  • GitHub action fixes (#1429) @lucacome
  • Update Nginx App Protect version to 3.0 (#1428) @rafwegv
  • Bump python from 3.9.1-slim to 3.9.2-slim in /tests/docker (#1404) @dependabot
  • Improve Makefile usage message (#1424) @lucacome
  • Refactor Dockerfile and Makefile (#1241) @lucacome
  • Bump golangci/golangci-lint-action from v2.4.0 to v2.5.1 (#1416) @dependabot
  • Update CRDs with controller-tools 0.5.0 (#1408) @lucacome
  • Add Kubernetes 1.20 support, Remove Kubernetes 1.15 support (#1385) @Dean-Coakley
  • Bump sigs.k8s.io/controller-tools from 0.4.1 to 0.5.0 (#1405) @dependabot
  • Bump k8s.io/code-generator from 0.20.3 to 0.20.4 (#1403) @dependabot
  • Bump k8s.io/client-go from 0.20.3 to 0.20.4 (#1401) @dependabot
  • Bump golangci/golangci-lint-action from v2 to v2.4.0 (#1381) @dependabot
  • Remove PR labeler, use autolabeler (#1400) @lucacome
  • Bump k8s.io/code-generator from 0.20.2 to 0.20.3 (#1389) @dependabot
  • Bump k8s.io/client-go from 0.20.2 to 0.20.3 (#1390) @dependabot
  • Change dependabot interval to weekly (#1394) @lucacome
  • Bump cffi from 1.12.3 to 1.14.5 in /perf-tests (#1375) @dependabot
  • Update NGINX version to 1.19.7 (#1392) @Dean-Coakley
  • Bump urllib3 from 1.25.3 to 1.26.3 in /perf-tests (#1368) @dependabot
  • Prom metrics test (#1383) @vepatel
  • Fix configmap tests. Fix Helm chart pipeline (#1376) @Dean-Coakley
  • Bump cffi from 1.14.4 to 1.14.5 in /tests (#1374) @dependabot
  • Automate release (#1344) @lucacome
  • Bump more-itertools from 8.6.0 to 8.7.0 in /tests (#1362) @dependabot
  • Bump locust from 1.1.1 to 1.4.3 in /perf-tests (#1357) @dependabot
  • Bump pyyaml from 5.1.2 to 5.4.1 in /perf-tests (#1363) @dependabot
  • Bump requests from 2.22.0 to 2.25.1 in /perf-tests (#1354) @dependabot
  • Bump certifi from 2019.6.16 to 2020.12.5 in /tests (#1349) @dependabot
  • Bump pytest-repeat from 0.8.0 to 0.9.1 in /perf-tests (#1359) @dependabot
  • Bump python from 3.7.2-slim to 3.9.1-slim in /tests/docker (#1356) @dependabot
  • Bump ipaddress from 1.0.22 to 1.0.23 in /perf-tests (#1355) @dependabot
  • Bump certifi from 2019.6.16 to 2020.12.5 in /perf-tests (#1358) @dependabot
  • Bump actions/cache from v2 to v2.1.4 (#1353) @dependabot
  • Add dependabot config for tests (#1345) @lucacome
  • Bump requests from 2.22.0 to 2.25.1 in /tests (#1347) @dependabot
  • Bump urllib3 from 1.25.3 to 1.26.3 in /tests (#1350) @dependabot
  • Bump ipaddress from 1.0.22 to 1.0.23 in /tests (#1351) @dependabot
  • Bump pytest-html from 2.1.1 to 3.1.1 in /tests (#1338) @dependabot
  • Bump pyyaml from 5.1.2 to 5.4.1 in /tests (#1340) @dependabot
  • Bump pyopenssl from 20.0.0 to 20.0.1 in /tests (#1341) @dependabot
  • Bump cffi from 1.12.3 to 1.14.4 in /tests (#1339) @dependabot
  • Bump k8s.io/code-generator from 0.20.0 to 0.20.2 (#1334) @dependabot
  • Bump k8s.io/client-go from 0.20.0 to 0.20.2 (#1335) @dependabot
  • Bump k8s.io/apimachinery from 0.20.0 to 0.20.2 (#1333) @dependabot
  • Bump pytest from 6.0.1 to 6.2.2 in /tests (#1342) @dependabot
  • Add dependabot config for tests (#1337) @lucacome
  • Add dependabot (#1332) @lucacome
  • Run nightly k8s tests on 1.20.0; drop testing on 1.15.12 (#1329) @ciarams87
  • Enable repo sync (#1328) @ciarams87
  • Release 1.10.0 in master (#1325) @mikestephen

Upgrade

  • For NGINX, use the v1.11.0 image from our DockerHub: nginx/nginx-ingress:1.11.0, nginx/nginx-ingress:1.11.0-alpine or nginx/nginx-ingress:1.11.0-ubi
  • For NGINX Plus, please build your own image using the v1.11.0 source code.
  • For Helm, use version 0.9.0 of the chart.

Resources

kubernetes-ingress - v1.10.1

Published by lucacome over 3 years ago

Help make the NGINX Ingress Controller better by participating in our survey!

New in NGINX Ingress Controller v1.10.1

🐛 Bug Fixes

Fix various issues in the Makefile. In 1.10.0, a bug was introduced that prevented building Ingress Controller images on versions of make < 4.1. (#1373) (#1439) (#1440)

📝 Documentation

  • Add Kubernetes 1.20 support. (#1386)

🔨 Maintenance

  • Update NGINX version to 1.19.8. (#1393) (#1454)

Upgrade

  • For NGINX, use the v1.10.1 image from our DockerHub: nginx/nginx-ingress:1.10.1, nginx/nginx-ingress:1.10.1-alpine or nginx/nginx-ingress:1.10.1-ubi
  • For NGINX Plus, please build your own image using the v1.10.1 source code.
  • For Helm, use version 0.8.1 of the chart.

Resources

kubernetes-ingress - NGINX Ingress Controller 1.10.0

Published by Dean-Coakley over 3 years ago

🚀 Help make the NGINX Ingress Controller better by participating in our survey! 🚀

OVERVIEW:

Release 1.10.0 includes:

  • Open ID Connect authentication policy.
  • Improved handling of Secret resources with extended validation and error reporting.
  • Improved visibility with Prometheus metrics for the configuration workqueue and the ability to annotate NGINX logs with the metadata of Kubernetes resources.
  • NGINX App Protect User-Defined signatures support.
  • Improved validation of Ingress annotations.

You will find the complete changelog for release 1.10.0, including bug fixes, improvements, and changes below.

FEATURES FOR POLICY RESOURCE:

  • 1304 Add Open ID Connect policy.

FEATURES FOR NGINX APP PROTECT:

  • 1281 Add support for App Protect User Defined Signatures.

FEATURES:

  • 1266 Add workqueue metrics to Prometheus metrics.
  • 1233 Annotate tcp metrics with k8s object labels.
  • 1231 Support k8s objects variables in log format.

IMPROVEMENTS:

  • 1270 and 1277 Improve validation of Ingress annotations.
  • 1265 Report warnings for misconfigured TLS and JWK secrets.
  • 1262 Use setcap(8) only once. 1263 Use chown(8) only once. 1264 Use mkdir(1) only once. Thanks to Sergey A. Osokin.
  • 1256 and 1260 Improve handling of secret resources.
  • 1240 Validate TLS and CA secrets.
  • 1235 Use buildkit secret flag for NGINX plus images.
  • Documentation improvements: 1282, 1293, 1303, 1315.

HELM CHART:

  • The version of the helm chart is now 0.8.0.
  • 1290 Add new preview policies parameter to chart. controller.enablePreviewPolicies was added.
  • 1232 Replace deprecated imagePullSecrets helm setting. controller.serviceAccount.imagePullSecrets was removed. controller.serviceAccount.imagePullSecretName was added.
  • 1228 Fix installation of ingressclass on Kubernetes versions v1.18.x-*

CHANGES:

  • 1299 Update NGINX App Protect version to 2.3 and debian distribution to debian:buster-slim.
  • 1291 Update NGINX OSS to 1.19.6. Update NGINX Plus to R23.
  • 1290 Graduate policy resource and accessControl policy to generally available.
  • 1225 Require secrets to have types.
  • 1237 Deprecate support for helm2 clients.

UPGRADE:

  • For NGINX, use the 1.10.0 image from our DockerHub: nginx/nginx-ingress:1.10.0, nginx/nginx-ingress:1.10.0-alpine or nginx-ingress:1.10.0-ubi

  • For NGINX Plus, please build your own image using the 1.10.0 source code.

  • For Helm, use version 0.8.0 of the chart.

  • As a result of 1270 and 1277, the Ingress Controller improved validation of Ingress annotations: more annotations are validated and validation errors are reported via events for Ingress resources. Additionally, the default behavior for invalid annotation values was changed: instead of using the default values, the Ingress Controller will reject a resource with an invalid annotation value, which will make clients see 404 responses from NGINX. See this document to learn more. Before upgrading, ensure the Ingress resources don't have annotations with invalid values. Otherwise, after the upgrade, the Ingress Controller will reject such resources.

  • In 1232 controller.serviceAccount.imagePullSecrets was removed. Use the new controller.serviceAccount.imagePullSecretName instead.

  • The Policy resource was promoted to v1. If you used the alpha1 version, the policies are needed to be recreated with the v1 version. Before upgrading the Ingress Controller, run the following command to remove the alpha1 policies CRD (that will also remove all existing alpha1 policies):

     kubectl delete crd policies.k8s.nginx.org
    

    As part of the upgrade, make sure to create the v1 policies CRD. See the corresponding instructions for the manifests and Helm installations.

    Also note that all policies except for accessControl are still in preview. To enable them, run the Ingress Controller with - -enable-preview-policies command-line argument (controller.enablePreviewPolicies Helm parameter).

  • It is necessary to update secret resources. See the section UPDATING SECRETS below.

UPDATING SECRETS:

In 1225, as part of improving how the Ingress Controller handles secret resources, we added a requirement for secrets to be of one of the following types:

  • kubernetes.io/tls for TLS secrets.
  • nginx.org/jwk for JWK secrets.
  • nginx.org/ca for CA secrets.

The Ingress Controller now ignores secrets that are not of a supported type. As a consequence, special upgrade steps are required.

Before upgrading, ensure that the secrets referenced in Ingress, VirtualServer or Policies resources are of a supported type, which is configured via the type field. Because that field is immutable, it is necessary to either:

  • Recreate the secrets. Note that in this case, the client traffic for the affected resources will be rejected for the period during which a secret doesn't exist in the cluster.
  • Create copies of the secrets and update the affected resources to reference the copies. The copies need to be of a supported type. In contrast with the previous options, this will not make NGINX reject the client traffic.

It is also necessary to update the default server secret and the wildcard secret (if it was configured) in case their type is not kubernetes.io/tls. The steps depend on how you installed the Ingress Controller: via manifests or Helm. Performing the steps will not lead to a disruption of the client traffic, as the Ingress Controller retains the default and wildcard secrets if they are removed.

For manifests installation:

  1. Recreate the default server secret and the wildcard secret with the type kubernetes.io/tls.
  2. Upgrade the Ingress Controller.

For Helm installation, there two cases:

  1. If Helm created the secrets (you configured controller.defaultTLS.cert and controller.defaultTLS.key for the default secret and controller.wildcardTLS.cert and controller.wildcardTLS.key for the wildcard secret), then no special upgrade steps are required: during the upgrade, the Helm will remove the existing default and wildcard secrets and create new ones with different names with the type kubernetes.io/tls.
  2. If you created the secrets separately from Helm (you configured controller.defaultTLS.secret for the default secret and controller.wildcardTLS.secret for the wildcard secret):
    1. Recreate the secrets with the type kubernetes.io/tls.
    2. Upgrade to the new Helm release.

NOTES:

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.9.1

Published by Dean-Coakley almost 4 years ago

CHANGES:

  • Fix deployment of ingressclass resource via helm on some versions of Kubernetes.
  • Update the base ubi images to 8.3.
  • Renew CA cert for egress-mtls example.
  • Add controller.serviceAccount.imagePullSecretName parameter to the helm chart. Note: controller.serviceAccount.imagePullSecrets is deprecated and will be removed in the future 1.10.0 release.

HELM CHART:

  • The version of the Helm chart is now 0.7.1.

UPGRADE:

  • For NGINX, use the 1.9.1 image from our DockerHub: nginx/nginx-ingress:1.9.1, nginx/nginx-ingress:1.9.1-alpine or nginx/nginx-ingress:1.9.1-ubi
  • For NGINX Plus, please build your own image using the 1.9.1 source code.
  • For Helm, use version 0.7.1 of the chart.

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.9.0

Published by Dean-Coakley almost 4 years ago

🚀 Help make the NGINX Ingress Controller better by participating in our survey! 🚀

OVERVIEW:

Release 1.9.0 includes:

  • Support for new Prometheus metrics and enhancements of the existing ones, including configuration reload reason, NGINX worker processes count, upstream latency, and more.
  • Support for rate limiting, JWT authentication, ingress(client) and egress(upstream) mutual TLS via the Policy resource.
  • Support for the latest Ingress resource features and the IngressClass resource.
  • Support for NGINX Service Mesh.

You will find the complete changelog for release 1.9.0, including bug fixes, improvements, and changes below.

FEATURES FOR POLICY RESOURCE:

  • 1180 Add support for EgressMTLS.
  • 1166 Add IngressMTLS policy support.
  • 1154 Add JWT policy support.
  • 1120 Add RateLimit policy support.
  • 1058 Support policies in VS routes and VSR subroutes.

FEATURES FOR NGINX APP PROTECT:

FEATURES:

  • 1133 Add support for IngressClass resources.
  • 1130 Add prometheus latency collector.
  • 1076 Add prometheus worker process metrics.
  • 1075 Add support for NGINX Service Mesh internal routes.

IMPROVEMENTS:

  • 1178 Resolve host collisions in VirtualServer and Ingresses.
  • 1158 Support variables in action proxy headers.
  • 1137 Add pod_owner label to metrics when -spire-agent-address is set.
  • 1107 Extend Upstream Servers with pod_name label.
  • 1099 Add reason label to total_reload metrics.
  • 1088 Extend Upstream Servers and Server Zones metrics, thanks to Raúl.
  • 1080 Support pathType field in the Ingress resource.
  • 1078 Remove trailing blank lines in vs/vsr snippets.
  • Documentation improvements: 1083, 1092, 1089, 1174, 1175, 1171.

BUGFIXES:

  • 1179 Fix TransportServers in debian AppProtect image.
  • 1129 Support real-ip in default server.
  • 1110 Add missing threat campaigns key to AppProtect CRD.

HELM CHART:

  • The version of the helm chart is now 0.7.0
  • 1105 Fix GlobalConfiguration support in helm chart.
  • Add new parameters to the Chart: controller.setAsDefaultIngress, controller.enableLatencyMetrics. Added in 1133 and 1148.

CHANGES:

  • 1182 Update NGINX version to 1.19.3.

UPGRADE:

  • For NGINX, use the 1.9.0 image from our DockerHub: nginx/nginx-ingress:1.9.0, nginx/nginx-ingress:1.9.0-alpine or nginx-ingress:1.9.0-ubi
  • For NGINX Plus, please build your own image using the 1.9.0 source code.
  • For Helm, use version 0.7.0 of the chart.

For Kubernetes >= 1.18, when upgrading using the manifests, make sure to update the ClusterRole and create the IngressClass resource, which is required for Kubernetes >= 1.18. Otherwise, the Ingress Controller will fail to start. If you run multiple NGINX Ingress Controllers in the cluster, each Ingress Controller has to have its own IngressClass resource. As the -use-ingress-class-only argument is now ignored (see NOTES), make sure your Ingress resources have the ingressClassName field or the kubernetes.io/ingress.class annotation set to the name of the IngressClass resource. Otherwise, the Ingress Controller will ignore them.

HELM UPGRADE:

  • If you're using custom resources like VirtualServer and TransportServer (controller.enableCustomResources is set to true), after you run the helm upgrade command, the CRDs will not be upgraded. After running the helm upgrade command, run kubectl apply -f deployments/helm-chart/crds to upgrade the CRDs.
  • For Kubernetes >= 1.18, a dedicated IngressClass resource, which is configured by controller.ingressClass, is required per helm release. Ensure controller.ingressClass is not set to the name of the IngressClass of other releases or Ingress Controllers. As the controller.useIngressClassOnly parameter is now ignored (see NOTES), make sure your Ingress resources have the ingressClassName field or the kubernetes.io/ingress.class annotation set to the value of controller.ingressClass. Otherwise, the Ingress Controller will ignore them.

NOTES:

  • When using Kubernetes >= 1.18, the -use-ingress-class-only command-line argument is now ignored, and the Ingress Controller will only process resources that belong to its class. See IngressClass doc to learn more.
  • For Kubernetes >= 1.18, a dedicated IngressClass resource, which is configured by controller.ingressClass, is required per helm release. When upgrading or installing releases, ensure controller.ingressClass is not set to the name of the IngressClass of other releases or Ingress Controllers.

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.8.1

Published by LorcanMcVeigh about 4 years ago

CHANGES:

  • Update NGINX version to 1.19.2.

HELM CHART:

  • The version of the Helm chart is now 0.6.1.

UPGRADE:

  • For NGINX, use the 1.8.1 image from our DockerHub: nginx/nginx-ingress:1.8.1, nginx/nginx-ingress:1.8.1-alpine or nginx/nginx-ingress:1.8.1-ubi
  • For NGINX Plus, please build your own image using the 1.8.1 source code.
  • For Helm, use version 0.6.1 of the chart.

KNOWN ISSUES:

  • Ingress Controller pods fails to start when deployed using Helm with controller.globalConfiguration.create set to true. A workaround is described here.

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.8.0

Published by Rulox about 4 years ago

🚀 Help make the NGINX Ingress Controller better by participating in our survey! 🚀

OVERVIEW:

Release 1.8.0 includes:

  • Support for NGINX App Protect Web Application Firewall.
  • Support for configuration snippets and custom template for VirtualServer and VirtualServerRoute resources.
  • Support for request/response header manipulation and request URI rewriting for VirtualServer/VirtualServerRoute.
  • Introducing a new configuration resource - Policy - with the first policy for IP-based access control.

You will find the complete changelog for release 1.8.0, including bug fixes, improvements, and changes below.

FEATURES FOR VIRTUALSERVER AND VIRTUALSERVERROUTE RESOURCES:

  • 1036: Add VirtualServer custom template support.
  • 1028: Add access control policy.
  • 1019: Add VirtualServer/VirtualServerRoute snippets support.
  • 1006: Add request/response modifiers to VS and VSR.
  • 994: Support Class Field in VS/VSR.
  • 973: Add status to VirtualServer and VirtualServerRoute.

FEATURES:

  • 1035: Support for App Protect module.
  • 1029: Add readiness endpoint.

IMPROVEMENTS:

BUGFIXES:

  • 1030: Fix port range validation in cli arguments.
  • 953: Fix error logging of master/minion ingresses.

HELM CHART:

  • The version of the helm chart is now 0.6.0.
  • Add new parameters to the Chart: controller.appprotect.enable, controller.globalConfiguration.create, controller.globalConfiguration.spec, controller.readyStatus.enable, controller.readyStatus.port, controller.config.annotations, controller.reportIngressStatus.annotations. Added in 1035, 1034, 1029, 1003 thanks to RubyLangdon.
  • 1047 and 1009: Change how Helm manages the custom resource defintions (CRDs) to support installing multiple Ingress Controller releases. Note: If you're using the custom resources (controller.enableCustomResources is set to true), this is a breaking change. See the HELM UPGRADE section below for the upgrade instructions.

CHANGES:

  • Update NGINX version to 1.19.1.
  • Update NGINX Plus to R22.
  • 1029: Add readiness endpoint. The Ingress Controller now exposes a readiness endpoint on port 8081 and the path /nginx-ready. The endpoint returns a 200 response after the Ingress Controller finishes the initial configuration of NGINX at the start. The pod template was updated to use that endpoint in a readiness probe.
  • 980: Enable leader election by default.

UPGRADE:

  • For NGINX, use the 1.8.0 image from our DockerHub: nginx/nginx-ingress:1.8.0, nginx/nginx-ingress:1.8.0-alpine or nginx-ingress:1.8.0-ubi
  • For NGINX Plus, please build your own image using the 1.8.0 source code.
  • For Helm, use version 0.6.0 of the chart.

HELM UPGRADE:

If you're using custom resources like VirtualServer and TransportServer (controller.enableCustomResources is set to true), after you run the helm upgrade command, the CRDs and the corresponding custom resources will be removed from the cluster. Before upgrading, make sure to back up the custom resources. After running the helm upgrade command, run kubectl apply -f deployments/helm-chart/crds to re-install the CRDs and then restore the custom resources.

NOTES:

  • As part of installing a release, Helm will install the CRDs unless that step is disabled (see the corresponding doc). The installed CRDs include the CRDs for all Ingress Controller features, including the ones disabled by default (like App Protect with aplogconfs.appprotect.f5.com and appolicies.appprotect.f5.com CRDs).

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.7.2

Published by LorcanMcVeigh over 4 years ago

CHANGES:

  • Update NGINX Plus version to R22.

HELM CHART:

  • The version of the Helm chart is now 0.5.2.

UPGRADE:

  • For NGINX, use the 1.7.2 image from our DockerHub: nginx/nginx-ingress:1.7.2, nginx/nginx-ingress:1.7.2-alpine or nginx/nginx-ingress:1.7.2-ubi
  • For NGINX Plus, please build your own image using the 1.7.2 source code.
  • For Helm, use version 0.5.2 of the chart.

RESOURCES:

NOTES:

After the release, the tag v1.7.2 was updated to point to a new commit. This was done to fix a problem with the release - the version of NGINX Plus wasn't updated to R22 in the Dockerfiles. If you checked out the source code with the old version of the v1.7.2 tag, make sure to run the following command to update v1.7.2 on your machine:

$ git tag -d v1.7.2
$ git fetch origin tag v1.7.2
kubernetes-ingress - NGINX Ingress Controller 1.7.1

Published by LorcanMcVeigh over 4 years ago

1.7.1

CHANGES:

  • Update NGINX version to 1.19.0.

HELM CHART:

  • The version of the Helm chart is now 0.5.1.

UPGRADE:

  • For NGINX, use the 1.7.1 image from our DockerHub: nginx/nginx-ingress:1.7.1, nginx/nginx-ingress:1.7.1-alpine or nginx/nginx-ingress:1.7.1-ubi
  • For NGINX Plus, please build your own image using the 1.7.1 source code.
  • For Helm, use version 0.5.1 of the chart.

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.7.0

Published by pleshakov over 4 years ago

OVERVIEW:

Release 1.7.0 includes:

  • Support for TCP, UDP, and TLS Passthrough load balancing with the new configuration resources: TransportServer and GlobalConfiguration. The resources allow users to deliver complex, non-HTTP-based applications from Kubernetes using the NGINX Ingress Controller.
  • Support for error pages in VirtualServer and VirtualServerRoute resources. A user can now specify custom error responses for errors returned by backend applications or generated by NGINX, such as a 502 response.
  • Improved validation of VirtualServer and VirtualServerRoute resources. kubectl and the Kubernetes API server can now detect violations of the structure of VirtualServer/VirtualServerRoute resources and return an error.
  • Support for an operator which manages the lifecycle of the Ingress Controller on Kubernetes or OpenShift. See the NGINX Ingress Operator GitHub repo.

See the 1.7.0 release announcement blog post, which includes an overview of each feature.

You will find the complete changelog for release 1.7.0, including bug fixes, improvements, and changes at https://github.com/nginxinc/kubernetes-ingress/blob/v1.7.0/CHANGELOG.md#170

UPGRADE:

  • For NGINX, use the 1.7.0 image from our DockerHub: nginx/nginx-ingress:1.7.0, nginx/nginx-ingress:1.7.0-alpine or nginx-ingress:1.7.0-ubi
  • For NGINX Plus, please build your own image using the 1.7.0 source code.
  • For Helm, use version 0.5.0 of the chart.

When upgrading using the manifests, make sure to deploy the new TransportServer CRD (common/ts-definition.yaml), as it is required by the Ingress Controller. Otherwise, you will get error messages in the Ingress Controller logs.

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.7.0 - Release Candidate 1

Published by pleshakov over 4 years ago

OVERVIEW:

Release 1.7.0-rc1 includes:

  • Support for TCP, UDP, and TLS Passthrough load balancing with the new configuration resources: TransportServer and GlobalConfiguration. The resources allow users to deliver complex, non-HTTP-based applications from Kubernetes using the NGINX Ingress Controller.
  • Support for error pages in VirtualServer and VirtualServerRoute resources. A user can now specify custom error responses for errors returned by backend applications or generated by NGINX, such as a 502 response.
  • Improved validation of VirtualServer and VirtualServerRoute resources. kubectl and the Kubernetes API server can now detect violations of the structure of VirtualServer/VirtualServerRoute resources and return an error.

Full changelog -- https://github.com/nginxinc/kubernetes-ingress/blob/v1.7.0-rc1/CHANGELOG.md#170---release-candidate-1

UPGRADE:

  • For the release candidate, no DockerHub images are provided. Please build your own image using the 1.7.0-rc1 source code.
  • For Helm, use version 0.5.0-rc1 of the chart. Note: this release candidate version is not available from the stable repo helm.nginx.com/stable, but only from the source files in the deployments/helm-chart folder.

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.6.3

Published by lucacome over 4 years ago

CHANGES:

  • Update NGINX version to 1.17.9.

HELM CHART:

  • The version of the Helm chart is now 0.4.3.

UPGRADE:

  • For NGINX, use the 1.6.3 image from our DockerHub: nginx/nginx-ingress:1.6.3 or nginx/nginx-ingress:1.6.3-alpine
  • For NGINX Plus, please build your own image using the 1.6.3 source code.
  • For Helm, use version 0.4.3 of the chart.

RESOURCES: 

kubernetes-ingress - NGINX Ingress Controller 1.6.2

Published by Dean-Coakley over 4 years ago

CHANGES:

  • Update NGINX version to 1.17.8.

HELM CHART:

  • The version of the Helm chart is now 0.4.2.

UPGRADE:

  • For NGINX, use the 1.6.2 image from our DockerHub: nginx/nginx-ingress:1.6.2 or nginx/nginx-ingress:1.6.2-alpine
  • For NGINX Plus, please build your own image using the 1.6.2 source code.
  • For Helm, use version 0.4.2 of the chart.

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.6.1

Published by peterkellydev almost 5 years ago

CHANGES:

  • Update NGINX version to 1.17.7.

HELM CHART:

  • The version of the Helm chart is now 0.4.1.

UPGRADE:

  • For NGINX, use the 1.6.1 image from our DockerHub: nginx/nginx-ingress:1.6.1 or nginx/nginx-ingress:1.6.1-alpine
  • For NGINX Plus, please build your own image using the 1.6.1 source code.
  • For Helm, use version 0.4.1 of the chart.

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.6.0

Published by Rulox almost 5 years ago

OVERVIEW:
Release 1.6.0 includes:

  • Improvements to VirtualServer and VirtualServerRoute resources, adding support for richer load balancing behavior, more sophisticated request routing, redirects, direct responses, and blue-green and circuit breaker patterns. The VirtualServer and VirtualServerRoute resources are enabled by default and are ready for production use.
  • Support for OpenTracing, helping you to monitor and debug complex transactions.
  • An improved security posture, with support to run the Ingress Controller as a non-root user.

The release announcement blog post includes the overview for each feature. See https://www.nginx.com/blog/announcing-nginx-ingress-controller-for-kubernetes-release-1-6-0/

You will find the complete changelog for release 1.6.0, including bug fixes, improvements, and changes below.

FEATURES FOR VIRTUALSERVER AND VIRTUALSERVERROUTE RESOURCES:

  • 780: Add support for canned responses to VS/VSR.
  • 778: Add redirect support in VS/VSR.
  • 766: Add exact matches and regex support to location paths in VS/VSR.
  • 748: Add TLS redirect support in Virtualserver.
  • 745: Improve routing rules in VS/VSR
  • 728: Add session persistence in VS/VSR.
  • 724: Add VS/VSR Prometheus metrics.
  • 712: Add service subselector support in vs/vsr.
  • 707: Emit warning events in VS/VSR.
  • 701: Add support queue in upstreams for plus in VS/VSR.
  • 693: Add ServerStatusZones support in vs/vsr.
  • 670: Add buffering support for vs/vsr.
  • 660: Add ClientBodyMaxSize support in vs/vsr.
  • 659: Support configuring upstream zone sizes in VS/VSR.
  • 655: Add slow-start support in vs/vsr.
  • 653: Add websockets support for vs/vsr upstreams.
  • 641: Add support for ExternalName Services for vs/vsr.
  • 635: Add HealthChecks support for vs/vsr.
  • 634: Add Active Connections support to vs/vsr.
  • 628: Add retries support for vs/vsr.
  • 621: Add TLS support for vs/vsr upstreams.
  • 617: Add keepalive support to vs/vsr.
  • 612: Add timeouts support to vs/vsr.
  • 607: Add fail-timeout and max-fails support to vs/vsr.
  • 596: Add lb-method support in vs and vsr.

FEATURES:

  • 750: Add support for health status uri customisation.
  • 691: Helper Functions for custom annotations.
  • 631: Add max_conns support for NGINX plus.
  • 629: Added upstream zone directive annotation. Thanks to Victor Regalado.
  • 616: Add proxy-send-timeout to configmap key and annotation.
  • 615: Add support for Opentracing.
  • 614: Add max-conns annotation. Thanks to Victor Regalado.

IMPROVEMENTS:

  • 678: Increase defaults for server-names-hash-max-size and servers-names-hash-bucket-size ConfigMap keys.
  • 694: Reject VS/VSR resources with enabled plus features for OSS.
  • Documentation improvements: 713 thanks to Matthew Wahner.

BUGFIXES:

  • 788: Fix VSR updates when namespace is set implicitly.
  • 736: Init Ingress labeled metrics on start.
  • 686: Check if config map created for leader-election.
  • 664: Fix reporting events for Ingress minions.
  • 632: Fix hsts support when not using SSL. Thanks to Martín Fernández.

HELM CHART:

  • The version of the helm chart is now 0.4.0.
  • Add new parameters to the Chart: controller.healthCheckURI, controller.resources, controller.logLevel, controller.customPorts, controller.service.customPorts. Added in 750, 636 thanks to Guilherme Oki, 600, 581 thanks to Alex Meijer.
  • 722: Fix trailing leader election cm when using helm. This change might lead to a failed upgrade. See the helm upgrade instruction below.
  • 573: Use Controller name value for app selectors.

CHANGES:

  • Update NGINX versions to 1.17.6.
  • Update NGINX Plus version to R20.
  • 799: Enable CRDs by default. VirtualServer and VirtualServerRoute resources are now enabled by default.
  • 772: Update VS/VSR version from v1alpha1 to v1. Make sure to update the apiVersion of your VirtualServer and VirtualServerRoute resources.
  • 748: Add TLS redirect support in VirtualServer. The redirect-to-https and ssl-redirect ConfigMap keys no longer have any effect on generated configs for VirtualServer resources.
  • 745: Improve routing rules. Update the spec of VirtualServer and VirtualServerRoute accordingly. See YAML examples of the changes here.
  • 710: Run IC as non-root. Make sure to use the updated manifests to install/upgrade the Ingress Controller.
  • 603: Update apiVersion in Deployments and DaemonSets to apps/v1.

UPGRADE:

  • For NGINX, use the 1.6.0 image from our DockerHub: nginx/nginx-ingress:1.6.0 or nginx/nginx-ingress:1.6.0-alpine
  • For NGINX Plus, please build your own image using the 1.6.0 source code.
  • For Helm, use version 0.4.0 of the chart.

HELM UPGRADE:

If leader election (the controller.reportIngressStatus.enableLeaderElection parameter) is enabled, when upgrading to the new version of the Helm chart:

  1. Make sure to specify a new ConfigMap lock name (controller.reportIngressStatus.leaderElectionLockName) different from the one that was created by the current version. To find out the current name, check ConfigMap resources in the namespace where the Ingress Controller is running.
  2. After the upgrade, delete the old ConfigMap.

Otherwise, the helm upgrade will not succeed.

kubernetes-ingress - NGINX Ingress Controller 1.5.8

Published by Dean-Coakley almost 5 years ago

CHANGES:

  • Update NGINX version to 1.17.6.
  • Update deployment and daemonset manifests to apps/v1.

HELM CHART:

  • The version of the Helm chart is now 0.3.8.

UPGRADE:

  • For NGINX, use the 1.5.8 image from our DockerHub: nginx/nginx-ingress:1.5.8 or nginx/nginx-ingress:1.5.8-alpine
  • For NGINX Plus, please build your own image using the 1.5.8 source code.
  • For Helm, use version 0.3.8 of the chart.

RESOURCES:

kubernetes-ingress - NGINX Ingress Controller 1.5.7

Published by Dean-Coakley almost 5 years ago

CHANGES:

  • Update NGINX version to 1.17.5.

HELM CHART:

  • The version of the Helm chart is now 0.3.7.

UPGRADE:

  • For NGINX, use the 1.5.7 image from our DockerHub: nginx/nginx-ingress:1.5.7 or nginx/nginx-ingress:1.5.7-alpine
  • For NGINX Plus, please build your own image using the 1.5.7 source code.
  • For Helm, use version 0.3.7 of the chart.

RESOURCES: