Posts for: #traefik

Traefik Announces First Release Candidate for Version 3.0.0

Traefik Announces First Release Candidate for Version 3.0.0

Cloud Native Application Proxy Traefik has released the first release candidate for version 3.0.0. This major release includes support for emerging technologies such as WebAssembly (Wasm), OpenTelemetry, and Kubernetes Gateway API. In addition, the routing rules and security of Traefik have been improved with support for HTTP/3, SPIFFE, and Tailscale.

To ensure a smooth user experience during the migration from the previous version, Traefik provides a complete migration guide and offers backward compatibility with v2 syntax while introducing a progressive path for adopting the v3 syntax.

The enhancements in this release candidate include:

  • Addition of weight on ServersLoadBalancer for Docker and service configurations
  • Reloading of provider file configuration on SIGHUP
  • Upgrade of gateway API to v1.0.0 for Kubernetes
  • Support for cross-namespace references and GatewayAPI ReferenceGrants in Kubernetes Gateway API
  • Introduction of static config hints for logs
  • Removal of observability for internal resources in metrics, tracing, and access logs
  • Support for sending DogStatsD metrics over Unix Socket in metrics
  • Addition of forwardAuth.addAuthCookiesToResponse in middleware and authentication
  • Implementation of the includedContentTypes option for the compress middleware
  • Reintroduction of the deprecated IpWhitelist middleware
  • Addition of ResponseCode to CircuitBreaker middleware
  • Addition of the rejectStatusCode option to IPAllowList middleware
  • Support for http-wasm plugin in Traefik
  • Reintroduction of v2 rule matchers in rules
  • Support for SO_REUSEPORT in EntryPoints for servers
  • Support for setting sticky cookie max age in sticky-session
  • Migration to OpenTelemetry in tracing and otel
  • Reintroduction of dropped v2 dynamic config

The bug fixes in this release candidate include:

  • Removal of warning in Kubernetes CRD provider about the supported version
  • Fixing of OpenTelemetry unit tests in metrics
  • Alignment of OpenTelemetry tracing and metrics configurations in middleware, authentication, metrics, and tracing
  • Fixing of brotli response status code when compression is disabled in middleware
  • Computing priority for HTTPS forwarder TLS routes in TLS and server configurations

Other changes in this release candidate include documentation updates, support for file path as input parameter for Kubernetes token value, disabling of br compression when no Accept-Encoding header is present in middleware, and merging of v2.11 into v3.0.

README Highlight Issue #48, 2023: Traefik

In this week’s issue of README Highlight (#48, 2023), we are taking a look at the following project: Traefik.

Traefik is a modern HTTP reverse proxy and load balancer that simplifies the deployment of microservices. It seamlessly integrates with various infrastructure components such as Docker, Swarm mode, Kubernetes, Consul, Etcd, Rancher v2, and Amazon ECS, and automatically configures itself. This makes Traefik the only configuration step you need to connect your microservices to the outside world.

Traditional reverse-proxies require manual configuration of each route connecting paths and subdomains to microservices. However, in an environment where services are frequently added, removed, upgraded, or scaled, maintaining these routes becomes a tedious task. Traefik solves this problem by dynamically generating routes based on the service registry or orchestrator API. This means that Traefik continuously updates its configuration without the need for restarts.

Traefik offers a wide range of features, including support for multiple load balancing algorithms, HTTPS with Let’s Encrypt wildcard certificates, circuit breakers, retry mechanisms, a clean web UI, and compatibility with Websocket, HTTP/2, and gRPC protocols. It also provides metrics and access logs, supports REST APIs, and is packaged as a single binary file. Traefik is available as an official Docker image, making it easy to deploy.

Traefik supports various backends, including Docker, Swarm mode, Kubernetes, and File. It also provides a straightforward quickstart guide in its documentation, which requires Docker to get started.

The web UI of Traefik provides a simple HTML frontend for easy management and monitoring.

The complete documentation of Traefik v2 can be found on their website. There is also a collection of contributions around Traefik available for further exploration.

Community support for Traefik can be obtained through the Traefik community forum. For commercial support, Traefik.io offers assistance via email.

To download Traefik, you can get the latest binary from the releases page or use the official Docker image. Alternatively, you can clone the Traefik repository to get the source code.

Traefik also provides introductory videos on their website for those who want to learn more about its capabilities.

The maintainers of Traefik promote a philosophy of openness and sharing, making it accessible for anyone to contribute to the project. The contribution guidelines and code of conduct can be found in the project’s repository.

Traefik follows a release cycle of approximately 3 to 4 new versions per year. Release candidates are available before the final release, and bug-fixes are released as needed. Each version is supported until the next one is released, following the principles of Semantic Versioning.

Mailing lists are available for general announcements and security announcements.

Overall, Traefik is a powerful tool for managing microservices and simplifying the deployment process. Its wide range of features and seamless integration with various infrastructure components make it a valuable asset for DevOps professionals and home lab enthusiasts.

Source: Traefik README.

Traefik v2.10.5: The Latest Release of Cloud Native Application Proxy

The latest version of the cloud native application proxy, Traefik, has been released. Version v2.10.5 brings several bug fixes and documentation updates to improve the functionality and user experience of the proxy.

Bug fixes in this release include:

  • Move origin fields capture to service level
  • Fix preflight response status in access logs
  • Update go-acme/lego to v4.14.0
  • Update go-acme/lego to v4.13.3
  • Update quic-go to v0.37.5
  • Update quic-go to v0.39.0
  • Update quic-go to v0.37.6
  • Update quic-go to v0.38.0
  • Update quic-go to v0.38.1
  • Ignore ErrKeyNotFound error for the KV provider
  • Adjust forward auth to avoid connection leak
  • Improve CNAME flattening to avoid unnecessary error logging
  • Allow X-Forwarded-For delete operation
  • Update x/net and grpc/grpc-go
  • Add missing accessControlAllowOriginListRegex to middleware view
  • Fix false positive in URL anonymization

Documentation updates in this release include:

  • Change Arvancloud URL
  • Correct minor typo in crd-acme docs
  • Remove healthcheck interval configuration warning
  • Docs describe the missing db parameter in Redis provider
  • Doc fix accessControlAllowHeaders examples
  • Updates business callout in the documentation

These bug fixes and documentation updates contribute to a smoother and more efficient experience for users of Traefik. The latest version can be downloaded from the official Traefik GitHub repository.