kubesphere 部署 ingress 并使用 80 端口

创建集群网关

官方文档:集群网关

  1. 点击左上角的平台管理并选择集群管理
    在这里插入图片描述
    在这里插入图片描述
  2. 点击导航面板中集群设置下的网关设置,选择集群网关选项卡,并点击启用网关
    在这里插入图片描述
  3. 选择 NodePort 模式,配置选项可以为空
    在这里插入图片描述
  4. 创建成功
    在这里插入图片描述

创建应用路由

官方文档:应用路由

  1. 进入工作台 - 企业空间
    在这里插入图片描述
    在这里插入图片描述
  2. 进入需要配置路由的项目,在应用负载 - 工作负载创建按一个 nginx

在这里插入图片描述

  1. 在应用负载 - 服务创建一个 nginx 的服务,服务暴露 80 端口
    在这里插入图片描述在这里插入图片描述
  2. 在应用负载 - 应用路由创建路由
    在这里插入图片描述
    自定义域名
    在这里插入图片描述

访问

  1. 修改 host 文件
    host 文件目录:C:\Windows\System32\drivers\etc\hosts
    添加刚刚新建的域名
    在这里插入图片描述

  2. 点击新建的路由
    在这里插入图片描述

  3. 点击访问服务
    在这里插入图片描述

  4. 成功访问
    在这里插入图片描述

域名使用 80 端口

背景:虽然可以成功访问,但需要添加端口,不太完善

原因: kubesphere-router-kubesphere-system 服务对外暴露的是 31852 端口

在这里插入图片描述

  1. 编辑 kubesphere-router-kubesphere-system 服务的 yaml,修改 31852 为 80,报错 80 不在集群端口范围内

在这里插入图片描述

  1. 修改集群端口范围
vim /etc/kubernetes/manifests/kube-apiserver.yaml

在 command 下添加 - --service-node-port-range=1-65535 参数,

在这里插入图片描述

  1. 修改后会自动生效,无需其他操作,apiserver 自动重启
    在这里插入图片描述

  2. 再次编辑 kubesphere-router-kubesphere-system 服务的 yaml,修改 31852 为 80
    在这里插入图片描述

  3. 修改成功 在这里插入图片描述

  4. 成功访问 在这里插入图片描述

  5. 成功后可以关闭端口 1-65535 的开放权限,把新增的配置删掉即可

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
您好!要在Kubernetes中部署Ingress使用它,您可以按照以下步骤进行操作: 1. 确保已经安装了Kubernetes集群,并且具有管理员权限。 2. 首先,需要安装一个Ingress控制器。Ingress控制器是负责处理Ingress资源并将请求路由到相应的服务的组件。常见的Ingress控制器有Nginx Ingress Controller、Traefik、HAProxy Ingress等。您可以选择其中一个并按照其文档进行安装。 3. 安装Ingress Controller后,您需要定义一个Ingress资源来配置路由规则。Ingress资源是Kubernetes中定义路由规则的一种方式。下面是一个示例的Ingress资源定义: ``` apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: my-ingress spec: rules: - host: example.com http: paths: - path: / pathType: Prefix backend: service: name: my-service port: number: 80 ``` 上述示例中,定义了一个名为`my-ingress`的Ingress资源,将`example.com/`请求路由到名为`my-service`的后端服务80端口。 4. 创建或更新Ingress资源,并将其应用到集群中: ``` $ kubectl apply -f ingress.yaml ``` 5. 确保Ingress Controller已经正确地将流量路由到您的服务。您可以使用以下命令检查Ingress资源和Ingress Controller的状态: ``` $ kubectl get ingress $ kubectl get pods -n <ingress-namespace> ``` 其中,`<ingress-namespace>`是Ingress控制器所在的命名空间。 这样,您就可以通过Ingress来访问您的服务了。请注意,您还需要确保域名解析正确,并将域名指向集群中Ingress Controller的IP地址。 希望这些信息能对您有所帮助!如果您有任何其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值