Role definition for installing the Traefik Ingress Controller.
├── roles
│ ├── traefik-install
| | ├── defaults
| | | ├── main.yml
| | ├── tasks
| | | ├── basic_auth_credentials.yml
| | | ├── main.yml
| | ├── templates
| | | ├── basic-auth-middleware.yml.j2
| | | ├── http-redirect-middleware.yml.j2
| | | ├── traefik-dashboard.yml.j2
| | | ├── traefik-helm-values.yml.j2
This structure houses the Ansible Role for installing Traefik, a modern HTTP reverse proxy and load balancer.
This role does the following:
- Creates a namespace for the Traefik deployment.
- Deploys the Traefik Helm chart with values that specify:
- the enabling of access logs
- the deployment of a sidecar container for access logging
- the enabling of a dedicated metrics service for use with Prometheus
- the enabling of cross namespace references
- Generates a base64 encoded
user:password
pair using the htpasswd utility. - Configures BasicAuth middleware using the
user:password
pair. - Configures HTTP-to-HTTPS redirect middleware
- Configures a Certificate and an IngressRoute to the Traefik Dashboard.