To install ingress controller
in k8s, need to care about 3 parts:
CRDs: The definitions of Apache APISIX configurations in Kubernetes.
RBAC: This is support by Kubernetes, granting ingress controller
resource access permissions.
Configmap: Contains the necessary configuration for ingress controller
.
Before executing the following commands, you need to create the namespace ingress-apisix
:
kubectl create ns ingress-apisix
Install the abovementioned resources by Kustomize:
kubectl kustomize "github.com/apache/apisix-ingress-controller/samples/deploy?ref=master" | kubectl apply -f -
If the default parameters in samples/deploy are not good for you, just tweak them and run:
kubectl apply -k /path/to/apisix-ingress-controller/samples/deploy
First of all, deploying the necessary CRDs and cluster resources like serviceaccount through the base chart.
helm install ingress-apisix-base -n ingress-apisix ./charts/base
Note namespace ingress-apisix
should be created before you run the above command.
Then try to deploy apisix-ingress-controller through the ingress-apisix chart.
helm install ingress-apisix -n ingress-apisix ./charts/ingress-apisix
docker build -t apache/ingress-controller:v0.1.0 ../.