Installation

This is an index page about installing Ingress APISIX in several environments. Click the following links on demands.

Kustomize Support

As an alternative way, you can also choose to install apisix-ingress-controller by Kustomize.

kubectl create namespace ingress-apisix
kubectl kustomize "github.com/apache/apisix-ingress-controller/samples/deploy?ref=master" | kubectl apply -f -

Parameters are hardcoded so if the default values are not good for you, just tweak them manually.

To tweak parameters, first you need to modify config files in samples/deploy directory. There are many ways to acheive this. For example, you may insert a sed command after kubectl kustomize, that is, kubectl kustomize "github.com/apache/apisix-ingress-controller/samples/deploy?ref=master" | sed "s@to-be-modified@after-modified@g" | kubectl apply -f -. Another way is to use a local copy of samples/deploy directory or a copy from your repo.

Then you need to know which parameter need to be tweaked. If APISIX access token or the address of APISIX Admin API is changed, you need to modify apisix.admin_key or apisix.base_url respectively in field .data.config.yaml in file samples/deploy/configmap/apisix-ingress-cm.yaml. Another example is to install apisix-ingress-controller with different version, in which case you need to configure .spec.template.spec.containers.[image] to a desired version in file samples/deploy/deployment/ingress-controller.yaml.

Verify Installation

There are a lot of use examples (See samples for more details), try to follow the operations there to verify the installation.