Ubuntu20.04 安装 kubesphere&&devops流水线部署项目(项目配置网关域名内网)

631 阅读2分钟

Ubuntu20.04 安装 kubesphere(项目配置网关域名内网)

前言

  • kubesphere 配置域名访问大搞这几种模式 hostNetwork、hostPort、NodePort、LoadBalancer、Ingress、clusterip;访问示例
  • 在前后端分离项目 我们可以选择用集群内部访问链接访问
  • 集群内部访问链接访问逻辑《Deployment的name》.《namespace》.svc.cluster.local:9000》服务的端口号 作者的示例 wfc-gateway.wfc.svc.cluster.local:9000/
  • 我用的是 clusterip + Ingress 内网访问,当然如果不用域名直接IP:port的话NodePort就可以做到;
  • LoadBalancer 个人理解是需要公网ip的一个负载均衡/入口这样子;
  • 参考资料 配置证书 如果只是内网访问的话不需要参考这个;
  • 参考资料 配置访问

那现在就开始吧

第一步 先配置项目网关

  • 登录项目管理员用户 在左侧菜单选择项目 然后选择你创建的项目 就能开到这个界面
截屏2023-03-13 10.23.29.png
  • 这是一个我配置好的 我用的超级管理员账号配置的 集群网关
截屏2023-03-13 10.29.00.png
  • 选择项目下的网关设置 然后在选择启用网关 可以看到如下界面
截屏2023-03-10 16.43.11.png
  • 在这个页面直接选择确定就行 配置项不用管 等个 2-3分钟就好
  • 然后回到 应用负载 -》 应用路由界面
截屏2023-03-13 10.31.49.png
  • 然后点击创建 然后开启 yaml配置模式
截屏2023-03-13 10.33.56.png
  • 粘贴并修改如下配置
kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
  name: iamreact-ingress ## 自己起的名
  namespace: smxiam ##kubesphere 项目名称
  annotations:
    kubesphere.io/creator: smxiam ## kubesphere 项目名称
    nginx.ingress.kubernetes.io/rewrite-target: /$2 ## 固定写法 不配置为精确匹配
spec:
  defaultBackend: ## 默认
    resource:
      apiGroup: api.hsjhs.cn ## 自定义域名 
      kind: StorageBucket
      name: static-assets
  rules:
    - host: nginx.mzjt.cn ##配置一 域名
      http:
        paths:
          - path: /nginx(/|$)(.*) ## 要没每个后面都添加 (/|$)(.*) 不然就是精确匹配
            pathType: ImplementationSpecific
            backend:
              service:
                name: iamui # 项目名称 也是自己起的
                port:
                  number: 80 # 项目上的端口
    - host: api.mzjt.cn ## 配置2 同上
      http:
        paths:
          - path: /api(/|$)(.*)
            pathType: ImplementationSpecific
            backend:
              service:
                name: gateway
                port:
                  number: 8080

  • 配置完成后 找到你的内网交换机 配置 dns 如果测试的话 可以更改本地的 dns
  • mac 用户用 终端 sudo vim /etc/hosts 然后添加你配置的域名 和网关上显示的IP
  • windows 参考这个
  • 然后访问一下试试
截屏2023-03-13 10.53.35.png
  • 因为这个模式的原因端口号隐藏不了 想要隐藏端口号可以试一试用LoadBalancer网关模式,当然这就需要你准备公网ip 在搭建openELB 或者大气一点直接购买 阿里云CAK/(腾讯/谷歌/青云)kubernetes Engine/华为云CCE/亚马逊EKS/Azure kubernetes services;
  • 好吧就说到这吧 如果后续我财大气粗或者 搭建了OpenELB 我会在写一个搭建文档的。

拜拜~~~