登录 KubeSphere 控制台,在所属的企业空间中选择已有 项目 或新建项目,访问左侧菜单栏,点击 网络与服务 → 服务 进入服务列表页。

    创建服务支持两种方式,页面创建编辑模式创建。若选择以编辑模式,可点击右上角编辑模式进入代码界面,支持 yaml 和 json 格式。左上角显示配置文件列表和导入导出按钮。其中导入 yaml 文件方式会自动将 yaml 文件内容填充到页面上,用户根据需要可以在页面上调整后再行创建,编辑模式可以方便习惯命令行操作的用户直接在页面上编辑 yaml 文件创建服务。以下主要介绍页面创建的方式。

    在服务列表页,点击 创建 按钮,填写基本信息:

    • 名称:为服务起一个简洁明了的名称,便于用户浏览和搜索。
    • 描述信息:详细介绍服务的特性,当用户想进一步了解该服务时,描述内容将变得尤为重要。

    2.1. 选择需要创建服务的类型,每种服务类型适合不同的场景:

    2.2. 若选择 VIP 或 Headless (selector),需填写服务设置:

    • 选择器:选择器来选择不同的后端,使用键值对 (Label Selector) 或 指定工作负载 可以选择多个部署。
    • 会话亲和性
      • None:以 Round robin 的方式轮询后端的 Pods。
      • ClientIP:来自同一个 IP 地址的访问请求都转发到同一个后端 Pod。

    创建服务

    若选择 Headless (externalname),通过返回 CNAME 和它的值,可以将服务映射到 externalName 字段的内容。

    为服务选择外网访问方式,LoadBalancer 的方式需要对应的负载均衡器插件来启用,如果未安装插件则无法使用。服务创建后支持修改外网访问方式。

    • None: 只在集群内部访问服务,集群外部无法访问。
    • NodePort: 集群外部可以通过访问集群节点的对应端口来访问服务,端口将由集群自动创建。

    注意:由于使用 Load Balancer 需要安装与云服务商对接的 cloud-controller-manage 插件,目前 qingcloud-cloud-controller-manager 插件正在开发阶段,且即将上线,待上线后即可使用 Load Balancer 将内部的服务暴露给外网访问。

    外网访问服务