创建部署问题时,请参考下面模板,你提供的信息越多,越容易及时获得解答。如果未按模板创建问题,管理员有权关闭问题。
确保帖子格式清晰易读,用 markdown code block 语法格式化代码块。
你只花一分钟创建的问题,不能指望别人花上半个小时给你解答。

操作系统信息
例如:阿里云ECS,Ubuntu22.04,8C/16G

Kubernetes版本信息
Client Version: version.Info{Major:“1”, Minor:“26”, GitVersion:“v1.26.0”, GitCommit:“b46a3f887ca979b1a5d14fd39cb1af43e7e5d12d”, GitTreeState:“clean”, BuildDate:“2022-12-08T19:58:30Z”, GoVersion:“go1.19.4”, Compiler:“gc”, Platform:“linux/amd64”}

Kustomize Version: v4.5.7

Server Version: version.Info{Major:“1”, Minor:“26”, GitVersion:“v1.26.0”, GitCommit:“b46a3f887ca979b1a5d14fd39cb1af43e7e5d12d”, GitTreeState:“clean”, BuildDate:“2022-12-08T19:51:45Z”, GoVersion:“go1.19.4”, Compiler:“gc”, Platform:“linux/amd64”}

容器运行时
docker version / crictl version / nerdctl version 结果贴在下方

KubeSphere版本信息
Version: 0.1.0

RuntimeName: containerd

RuntimeVersion: v1.6.4

RuntimeApiVersion: v1

问题是什么?
我看4.1.1版本的新特性"支持适配不同厂商的云原生网关(Kubernetes Ingress API)"  我现在部署的就是最新版本(4.1.2)。 然后我原来的集群中是已经有部署ingress controller的,但是在页面上无法创建应用路由。点击“创建”按钮没有反应.

遇到同样的问题。唉,社区没人管了吗

贴一下浏览器控制台的response。解决问题不是猜谜语,多提供线索才能找到问题啊

是否安装了KubeSphere 网关扩展?

首先你要安装kubesphere网关这个扩展组件

其次你要创建一个资源 IngressClassScope,类似下面这样

apiVersion: gateway.kubesphere.io/v1alpha2
kind: IngressClassScope
metadata:
  name: kong-ingressclass
spec:
  ingressClass:
    default: false
    name: kong
  scope:
    namespaceSelector: ''
    namespaces:
      - my-ns

完成这两步以后,就可以创建路由并且选择你自己的网关

另外 scope 这个字段要注意一下,要和你要创建路由的namespace匹配上,如果你不知道怎么写,可以不填,这时候你的网关适用整个集群

    @小k 看起来用户不能在 KubeSphere 页面上使用自建的 ingress-controller 是因为没有安装 gateway 扩展组件以及创建 IngressClassScope。

    帮忙把这个帖子总结成 Q&&A 形式,按如下格式回复给我,总结的答案要清晰完整。
    Q: xxx
    A: xxx

    Q: 在 KubeSphere 4.1.2 版本中,如何解决无法在页面上创建应用路由的问题,特别是当集群中已经部署了 ingress controller?
    A: 解决这个问题需要两个步骤:首先,确保安装了 KubeSphere 的网关扩展组件;其次,创建一个名为 IngressClassScope 的资源,确保其 scope 字段与你要创建路由的 namespace 匹配。如果不确定如何填写 scope 字段,可以留空,这样网关将适用于整个集群。完成这两步后,你就可以在页面上创建路由并选择自建的 ingress controller。