Haproxy Ingress

Alternatives To Haproxy Ingress
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Voyager1,337411 days ago32February 18, 2022116apache-2.0Shell
🚀 Secure L7/L4 (HAProxy) Ingress Controller for Kubernetes
Haproxy Ingress940
6 days ago108July 03, 202267apache-2.0Go
HAProxy Ingress
Kubernetes Ingress604
2 days ago144June 20, 202255apache-2.0Go
HAProxy Kubernetes Ingress Controller
K8seasy_release_page249
a year ago4
一键安装kubernets(k8s)系统,已支持云环境的发布,可以在阿里云 azure 等云环境自主部署k8s系统,golang 编写 无需任何插件,无需翻墙下载任何内容,证书10年有效期,支持 单机 集群 生产环境的高可用 完全离线安装等标准。自带dashboard 监控,镜像仓库等内容,一键可用。
Kubernetes Pfsense Controller172
a month ago32February 23, 20231apache-2.0PHP
Integrate Kubernetes and pfSense
Helm Charts116
9 days ago5apache-2.0Mustache
Helm chart for HAProxy Kubernetes Ingress Controller
Roo58
a month agoapache-2.0Go
Setup and run your own clusters on your own infrastructure in minutes (Eg. ECS or EKS). Roo is a zero config distributed ingress, edge-router & reverse-proxy (supporting multiple letsencrypt/https hosts) using Docker Swarm. No dependencies.
Router56
5 days ago6July 11, 202020apache-2.0Go
Ingress controller for OpenShift
Swarm Router52
2 years agomitGo
Scalable stateless «zero config» service-name ingress for docker swarm mode with a fresh more secure approach
Charts35
15 days ago13apache-2.0Smarty
HAProxy Ingress helm charts
Alternatives To Haproxy Ingress
Select To Compare


Alternative Project Comparisons
Readme

HAProxy Ingress controller

Ingress controller implementation for HAProxy loadbalancer.

build helm

HAProxy Ingress is a Kubernetes ingress controller: it configures a HAProxy instance to route incoming requests from an external network to the in-cluster applications. The routing configurations are built reading specs from the Kubernetes cluster. Updates made to the cluster are applied on the fly to the HAProxy instance.

Use HAProxy Ingress

Documentation:

Supported versions:

HAProxy Ingress Embedded
HAProxy
Supported
Kubernetes
External
HAProxy (*)
v0.15 (snapshot) 2.6 1.19+ 2.2+
v0.14 (latest) 2.4 1.19+ 2.2+
v0.13 2.3 up to v0.13.10
2.4 on v0.13.11+
1.19+ 2.2+
v0.12 2.2 1.18 - 1.21 2.0+
v0.10 2.0 1.8 - 1.21 -
  • Beta quality versions (beta / canary tags) has some new, but battle tested features, usually running on some of our production clusters
  • Development versions (alpha / snapshot tags) has major changes with few tests, usually not recommended for production
  • (*) Minimum supported HAProxy version if using an external HAProxy instance

Community:

Develop HAProxy Ingress

The instructions below are valid for v0.14 and newer. See v0.13 branch for older versions.

Building and running locally:

mkdir -p $GOPATH/src/github.com/jcmoraisjr
cd $GOPATH/src/github.com/jcmoraisjr
git clone https://github.com/jcmoraisjr/haproxy-ingress.git
cd haproxy-ingress
make run

Dependencies to run locally:

  • Golang
  • HAProxy compiled with USE_OPENSSL=1 and USE_LUA=1
  • golangci-lint is used when running make lint or make test targets
  • Lua with lua-json (luarocks install lua-json) if using Auth External or OAuth
  • Kubernetes network should be reachable from the local machine for a proper e2e test

Building container image:

Fast build - cross compile for linux/amd64 (locally) and generate localhost/haproxy-ingress:latest:

make image

Official image - build in a multi-stage Dockerfile and generate localhost/haproxy-ingress:latest:

make docker-build

Deploy local image using Helm:

helm repo add haproxy-ingress https://haproxy-ingress.github.io/charts
helm install haproxy-ingress haproxy-ingress/haproxy-ingress\
  --create-namespace --namespace=ingress-controller\
  --set controller.image.repository=localhost/haproxy-ingress\
  --set controller.image.tag=latest\
  --set controller.image.pullPolicy=Never

make options:

The following make variables are supported:

  • CONTROLLER_TAG (defaults to localhost/haproxy-ingress:latest): tag name for make image and make docker-build.
  • LOCAL_FS_PREFIX (defaults to /tmp/haproxy-ingress): temporary directory for make run.
  • KUBECONFIG (defaults to $KUBECONFIG, or $(HOME)/.kube/config if the former is empty): Kubernetes from where to read Ingress configurations.
  • CONTROLLER_CONFIGMAP: <namespace>/<name> of the ConfigMap with global configurations.
  • CONTROLLER_ARGS: space separated list of additional command-line arguments.

The following make targets are supported:

  • build (default): Compiles HAProxy Ingress using the default OS and arch, and generates an executable at bin/controller.
  • run: Runs HAProxy Ingress locally.
  • lint: Runs golangci-lint.
  • test: Runs unit tests.
  • linux-build: Compiles HAProxy Ingress and generates an ELF (Linux) executable despite the source platform at rootfs/haproxy-ingress-controller. Used by image step.
  • image: Compiles HAProxy Ingress locally and generates a Docker image.
  • docker-build: Compiles HAProxy Ingress and generates a Docker image using a multi-stage Dockerfile.
Popular Ingress Projects
Popular Haproxy Projects
Popular Networking Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Golang
Kubernetes
Slack
Ingress
Haproxy
Ingress Controller