在k8s集群上部署kite

在k8s集群上部署kite

💡 原文中文,约3800字,阅读约需9分钟。
📝

内容提要

本文介绍了vcluster的使用及其与Kubernetes Gateway API的结合。vcluster能够在单一K8s集群中创建独立的虚拟集群,解决环境隔离问题。结合Gateway API和Envoy Proxy,可以实现灵活的流量管理和构建企业级网关。文章还提供了创建vcluster和部署Kite的具体步骤。

🎯

关键要点

  • vcluster可以在单一K8s集群中创建独立的虚拟集群,解决环境隔离问题。
  • Kubernetes Gateway API设计更现代,解耦流量入口、路由和底层实现,便于可插拔和扩展。
  • 使用vcluster创建虚拟集群的步骤包括安装vcluster和创建集群。
  • 通过vcluster connect命令可以切换到虚拟集群,所有kubectl命令将针对虚拟集群生效。
  • Envoy Gateway可以通过官方release的yaml一键部署。
  • 使用Gateway API暴露kite服务的示例资源yaml包括HTTPRoute、Gateway、EnvoyProxy自定义参数及GatewayClass。
  • custom-proxy-config的envoyService.type配置为NodePort,以适应本地或某些云/k8s集群环境。
  • 访问kite服务需要获取Gateway暴露的NodePort,并在本地hosts绑定域名。

延伸问答

vcluster是什么,它有什么用?

vcluster是一种在单一K8s集群中创建独立虚拟集群的工具,能够解决环境隔离问题,适合多开发者和多租户环境。

为什么选择Kubernetes Gateway API而不是Ingress?

Kubernetes Gateway API设计更现代,解耦了流量入口、路由和底层实现,便于可插拔和扩展,适合企业级网关需求。

如何在K8s中创建vcluster?

可以通过安装vcluster并使用命令`vcluster create <cluster-name> --namespace <namespace>`来创建虚拟集群。

如何使用Gateway API暴露Kite服务?

可以通过定义HTTPRoute、Gateway和EnvoyProxy等资源yaml文件,并应用这些配置来暴露Kite服务。

Envoy Gateway的部署步骤是什么?

可以通过下载官方release的yaml文件并使用`kubectl apply -f install.yaml`命令一键部署Envoy Gateway。

如何访问Kite服务?

需要获取Gateway暴露的NodePort,并在本地hosts文件中绑定域名,之后可以通过`kite.example.com:<NodePort>`访问Kite服务。

➡️

继续阅读