Skip to content

nirmata-add-ons/kustomize-haproxy-ingress-controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 

Repository files navigation

Haproxy Ingress Controller

Ingress controller implementation for HAProxy loadbalancer.

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 Supported
Kubernetes
[v0.13.6] 1.19+

Steps to Backup existing haproxy:
mkdir backup-ingrees
cd backup-ingrees

kubectl get cm haproxy-configmap -oyaml -n ingress-haproxy > haproxy-configmap.yaml
kubectl get sa haproxy-ingress-serviceaccount -oyaml -n ingress-haproxy > haproxy-ingress-serviceaccount.yaml
kubectl get clusterrole haproxy-ingress-clusterrole -oyaml -n ingress-haproxy > haproxy-ingress-clusterrole.yaml
kubectl get role haproxy-ingress-role -oyaml -n ingress-haproxy > haproxy-ingress-role.yaml
kubectl get rolebinding haproxy-ingress-role-nisa-binding -oyaml -n ingress-haproxy > haproxy-ingress-role-nisa-binding.yaml
kubectl get clusterrolebinding haproxy-ingress-clusterrole-nisa-binding -oyaml -n ingress-haproxy > haproxy-ingress-clusterrole-nisa-binding.yaml
kubectl get deploy haproxy-ingress -oyaml -n ingress-haproxy > haproxy-ingress-deploy.yaml
kubectl get deploy ingress-default-backend -n ingress-haproxy -oyaml > ingress-default-backend.yaml
kubectl get svc ingress-default-backend -n ingress-haproxy -oyaml > ingress-default-backend-svc.yaml
kubectl get svc haproxy-ingress -n ingress-haproxy -oyaml > haproxy-ingress-svc.yaml

Steps to delete haproxy:

kubeconfig=$1
name=$2
namespace=$3
kubectl --kubeconfig=$kubeconfig get crd | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig delete crd
kubectl --kubeconfig=$kubeconfig get clusterrole | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig delete clusterrole
kubectl --kubeconfig=$kubeconfig get clusterrolebinding | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig delete clusterrolebinding
kubectl --kubeconfig=$kubeconfig get mutatingwebhookconfigurations | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig delete mutatingwebhookconfigurations
kubectl --kubeconfig=$kubeconfig get validatingwebhookconfigurations | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig delete validatingwebhookconfigurations
kubectl --kubeconfig=$kubeconfig get sa -n $namespace | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig -n $namespace delete sa
kubectl --kubeconfig=$kubeconfig get role -n $namespace | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig -n $namespace delete role
kubectl --kubeconfig=$kubeconfig get rolebinding -n $namespace | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig -n $namespace delete rolebinding
kubectl --kubeconfig=$kubeconfig get cm -n $namespace | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig -n $namespace delete cm
kubectl --kubeconfig=$kubeconfig get deploy -n $namespace | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig -n $namespace delete deploy
kubectl --kubeconfig=$kubeconfig get svc -n $namespace | grep -i $2 | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig -n $namespace delete svc
kubectl --kubeconfig=$kubeconfig get deploy -n $namespace | grep -i ingress-default-backend | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig -n $namespace delete deploy
kubectl --kubeconfig=$kubeconfig get svc -n $namespace | grep -i ingress-default-backend | awk {'print $1'} | xargs kubectl --kubeconfig=$kubeconfig -n $namespace delete svc


You can set values as below:
name=haproxy
namespace=ingress-haproxy

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published