This README provides instructions on how to replicate the issue when we have several Authentik outposts replicas with NGINX.
Follow the steps below to replicate the issue:
To replicate the issue, you need to have the following tools installed:
k3d
helmfile
kubectl
terraform
I recommend using asdf
and direnv
to configure the environment and CLI.
[!NOTE] TLDR;
make traefik
- Create a Kubernetes cluster using
k3d
by running the commandk3d cluster create --config k3d.yaml
. - Install all required Helm charts by running the command
helmfile apply --wait --file traefik/helmfile.yaml
- Install Authentik by running the command
helmfile apply --wait
. - Fix internal Authentik URL redirection
- Add
127.0.0.1 authentik.authentik.svc.cluster.local
to/etc/hosts
. - Redirect
authentik.authentik.svc.cluster.local
toauthentik.127-0-0-1.nip.io
by running the commandkubectl create --filename traefik/localhost.fix.yaml
. This fix is required because the outposts uses the internal Authentik URL.
- Add
- Configure Authentik by running the command
terraform apply
. - Take a break and enjoy your coffee.
- Go to https://debug.127-0-0-1.nip.io/ and enjoy.
[!NOTE] TLDR;
make nginx
- Create a Kubernetes cluster using
k3d
by running the commandk3d cluster create --config k3d.yaml
. - Install all required Helm charts by running the command
helmfile apply --wait --file nginx/helmfile.yaml
- Install Authentik by running the command
helmfile apply --wait
. - Fix internal Authentik URL redirection
- Add
127.0.0.1 authentik.authentik.svc.cluster.local
to/etc/hosts
. - Redirect
authentik.authentik.svc.cluster.local
toauthentik.127-0-0-1.nip.io
by running the commandkubectl create --filename nginx/localhost.fix.yaml
. This fix is required because the outposts uses the internal Authentik URL.
- Add
- Configure Authentik by running the command
terraform apply
. - Take a break and enjoy your coffee.
- Go to https://debug.127-0-0-1.nip.io/ and notice the issue with sticky sessions.
For people who don't want to use helmfile, all charts have been compiled in each directory