服务
服务(Service)是容器服务的基本操作单元,是将请求进行负载分发到后端的各个容器应用上的控制器。对外表现为一个单一访问接口,外部不需要了解后端如何运行,这给扩展或维护后端带来很大的好处。本章节主要介绍在“服务”页面中,针对“服务”的运维管理操作。“服务”页面进入路径如下:
- 在云平台顶部导航栏中,依次选择[产品与服务]-[Kubernetes容器服务]-[网络管理],进入“网络管理”页面。
- 在左侧导航栏选择[业务视图],选择目标命名空间,选择[网络管理]-[服务],进入“服务”页面。
创建服务
- 进入“服务”页面。
- 单击
创建服务
,跳转至“创建服务”页面。 - 配置参数。
- 单击
创建
完成操作。
参数 | 说明 | |
---|---|---|
类型 | ClusterIP | 适用于集群内部访问场景,集群为服务分配一个固定的集群内虚拟IP,集群内其它pod可以通过集群内部域名访问,格式为“<服务名称>.<工作负载所在命名空间>.svc.cluster.local:<端口号>”。集群外无效。 |
NodePort | 适用于集群外部访问场景,集群除了会给服务分配一个内部的虚拟IP,还会在每个节点上为服务分配静态端口号,集群外部可通过集群任一节点IP和静态端口号访问服务。 | |
LoadBalancer | 适用于集群外部访问场景,其实是NodePort的扩展。集群外部通过一个特定的负载均衡器访问Service,这个负载均衡器将请求转发到节点的端口。负载均衡器的访问地址可在[业务视图]-[网络管理]-[服务]页面的列表中“IP地址”字段查看。 | |
ExternalName | 用于将服务请求指向一个自定义的域名。 | |
容器端口 | 容器镜像中工作负载实际监听的端口。 | |
访问端口 | 容器端口映射到节点IP上的端口。当访问方式为“NodePort”时,支持随机生成。 | |
协议 | 包括TCP、UDP,根据业务类型选择。当访问方式为“LoadBalancer”时仅支持TCP协议。 | |
关联工作负载 | 选择服务需关联的工作负载。当服务类型为“ExternalName”无此参数。 |
说明:
若创建的服务的类型为LoadBalancer,需等待相关负载均衡器创建完成,服务列表中的信息才会更新。
更新服务
进入“服务”页面。
单击目标服务操作栏的
更新
,跳转至“更新”页面。修改参数。
单击
保存
完成操作。说明:
服务类型更新为“LoadBalancer”后,需等待相关负载均衡器创建完成,服务列表中的信息才会更新。
编辑Yaml
- 进入“服务”页面。
- 单击目标服务操作栏的编辑Yaml,弹出“编辑Yaml”对话框。
- 修改信息。
- 单击
确认
完成操作。
删除服务
- 进入“服务”页面。
- 单击目标服务操作栏的
删除
,弹出“删除服务”提示框。 - 单击
删除
完成操作。