Install Ingress APISIX on KubeSphere
This document explains how to install Ingress APISIX on KubeSphere.
KubeSphere is a distributed operating system managing cloud native applications with Kubernetes as its kernel, and provides plug-and-play architecture for the seamless integration of third-party applications to boost its ecosystem.
- Install KubeSphere, you can choose All-in-one Installation on Linux or Minimal KubeSphere on Kubernetes.
- Install Helm.
- Make sure your target namespace exists, kubectl operations of this document will be executed in namespace
#Install APISIX and apisix-ingress-controller
As the data plane of apisix-ingress-controller, Apache APISIX can be deployed at the same time using Helm chart.
helm repo add apisix https://charts.apiseven.com
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
kubectl create ns ingress-apisix
helm install apisix apisix/apisix \
--set gateway.type=NodePort \
--set ingress-controller.enabled=true \
kubectl get service --namespace ingress-apisix
Five Service resources were created.
apisix-gateway, which processes the real traffic;
apisix-admin, which acts as the control plane to process all the configuration changes.
apisix-ingress-controller, which exposes apisix-ingress-controller's metrics.
apisix-etcd-headlessfor etcd service and internal communication.
The gateway service type is set to
NodePort, so that clients can access Apache APISIX through the Node IPs and the assigned port.
If you want to expose a
LoadBalancer service, try to use Porter.
Now try to create some resources to verify the running status. As a minimalist example, see proxy-the-httpbin-service to learn how to apply resources to drive the apisix-ingress-controller.