KubeSphere 介绍
KubeSphere 是在 Kubernetes 之上构建的面向云原生应用的系统,完全开源,支持多云与多集群管理,提供全栈的 IT 自动化运维能力,简化企业的 DevOps 工作流。它的架构可以非常方便地使第三方应用与云原生生态组件进行即插即用 (plug-and-play) 的集成。
作为全栈的多租户容器平台,KubeSphere 提供了运维友好的向导式操作界面,帮助企业快速构建一个强大和功能丰富的容器云平台。KubeSphere 为用户提供构建企业级 Kubernetes 环境所需的多项功能,例如多云与多集群管理、Kubernetes 资源管理、DevOps、应用生命周期管理、微服务治理(服务网格)、日志查询与收集、服务与网络、多租户管理、监控告警、事件与审计查询、存储管理、访问权限控制、GPU 支持、网络策略、镜像仓库管理以及安全管理等。
Apache APISIX 介绍
Apache APISIX 是一款开源的高性能、动态云原生网关,由深圳支流科技有限公司于2019年捐赠给 Apache 基金会,当前已经成为 Apache 基金会的顶级开源项目,也是 GitHub 上最活跃的网关项目。Apache APISIX 当前已经覆盖了 API 网关,LB,Kubernetes Ingress,Service Mesh 等多种场景。
前置条件
将现有 Kubernetes 集群已纳入 KubeSphere 管理。
部署 Apache APISIX 和 Apache APISIX Ingress Controller
我们可以参考 KubeSphere 的文档启用 KubeSphere 的 AppStore (https://kubesphere.io/docs/pluggable-components/app-store/),或者使用使用 Apache APISIX 的 Helm 仓库来进行部署。这里,我们直接使用 Apache APISIX 的 Helm 仓库进行部署。
执行以下命令即可添加 Apache APISIX 的 Helm repo,并完成部署。
➜ ~ helm repo add apisix https://charts.apiseven.com
"apisix" has been added to your repositories
➜ ~ helm repo add bitnami https://charts.bitnami.com/bitnami
"bitnami" has been added to your repositories
➜ ~ helm repo update
➜ ~ kubectl create ns apisix
namespace/apisix created
➜ ~ helm install apisix apisix/apisix --set gateway.type=NodePort --set ingress-controller.enabled=true --namespace apisix
W0827 18:19:58.504653 294386 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefin