• 安装部署
  • 如何将80端口和443端口作为Ingress暴露端口

创建部署问题时,请参考下面模板,你提供的信息越多,越容易及时获得解答。
你只花一分钟创建的问题,不能指望别人花上半个小时给你解答。
发帖前请点击 发表主题 右边的 预览(👀) 按钮,确保帖子格式正确。

操作系统信息

EXSI虚拟机 Ubuntu 20.04.5 LTS

Kubernetes版本信息
v1.22.12 单节点

容器运行时
docker 20.10.17

KubeSphere版本信息
v3.3.1 All in one 安装

问题是什么
我当前已经使用All in one 模式在单台ESXSI虚拟机里安装了 KubeSphere v3.3.1 + Kubernetes v1.22.12.

然后创建了一个测试的nginx deployment, service ,通过nodeport 外部主机可以正常访问 http://192.168.6.98:32343/

随后在网关设置里启用了网关,模式是NodePort,并配置了应用路由:域名为 nginx.domain.com , 在我本机hosts文件里添加了一条 192.168.6.98 nginx.domain.com 用于DNS解析,但是只能通过 域名+端口的形式才能访问到我的nginx应用 http://nginx.domain.com:58579/

请问如何才能够使用默认的80/443端口来访问我的应用?

http://nginx.domain.com/

    alexchenx 此问题已解决。

    之前的回复忘掉了一个前提,在此补充一下,完整解决方案如下:

    1、修改文件/etc/kubernetes/manifests/kube-apiserver.yaml,在文件中编辑或者添加如下:

    - –service-node-port-range=1-65535

    重启docker:systemctl restart docker

    2、在服务中以YAML方式编辑 kubesphere-router-kubesphere-system 服务,

    将http和https的nodePort分别修改为 nodePort: 80 和 nodePort: 443 ,保存。

    直接访问 http://nginx.domain.com/ 成功。

      niuniu
      可以检查下看是不是没有修改成功,或者无法使用报的其他啥错误。按理说来这样修改后是可以的。

      13 天 后

      jinwenming
      主要在两个地方可以修改:

      1. 网关配置选项中可以修改一些网关层面的配置。具体配置项可以参考这个:https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#configuration-options
      2. 证书这个属于应用路由层面的,需要在对应的 ingress 中配置。可以参考这个:https://kubernetes.io/zh-cn/docs/concepts/services-networking/ingress/#tls
      • cici 回复了此帖
        1 年 后

        alexchenx /etc/kubernetes/manifests/kube-apiserver.yaml 这个文件路径下面,我好像没有内容,啥都没有

          1 年 后

          hongzhouzi 請問我想把整個kubesphere 配置成 https 的(因為我的 http 被限制不能使用),該用甚麼做法