Skip to content

An experiment aimed at converting the official ingress-nginx container image to a debian package.

License

Unlicense, MIT licenses found

Licenses found

Unlicense
UNLICENSE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

rarescosma/ingress-metal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ingress-metal

ingress-metal is an experiment aimed at converting the official ingress-nginx docker image into a zero-dependency .deb package, runnable on bare metal hosts or VMs.

Usage

The build script has several dependencies: openssl, dpkg-deb and docker:

  • dpkg-deb is present on most APT-based distros
  • openssl can be installed with apt-get install openssl
  • consult the docker documentation on how to install docker, or use podman as an excellent alternative

Simply:

./build.sh

Or, to use podman instead of docker:

DOCKER=podman ./build.sh 

Or, to pull a specific image, perhaps from a different registry:

IMAGE=hub.getbetter.ro/ingress-nginx:v1.5.1 ./build.sh

But why?

But why not?

The main scenario is to simplify the ingress setup for a virtualized Kubernetes setup: one metal server hosts several worker node VMs and we need to route HTTP(s) traffic to the pods.

Normally we'd have ingress-nginx deployed as a DaemonSet with proxy protocol turned on + another layer of nginx running on the metal host proxying requests to the inner nginx.

By using ingress-metal we eliminate the proxying so traffic flows from the public network, through the ingress-metal nginx running on metal, then directly to the pods.

Operation

Have a look at the run script for an idea on how to operate.

By default it will look for an ingress config map named ingress-metal in the ingress-system namespace.

The run script also expects the path to a KUBECONFIG file as its first argument. This can be extracted from the service account associated with the existing (inner) nginx-ingress stack.

About

An experiment aimed at converting the official ingress-nginx container image to a debian package.

Topics

Resources

License

Unlicense, MIT licenses found

Licenses found

Unlicense
UNLICENSE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Languages