从零开始入门 | Kubernetes 中的服务发现与负载均衡
发布日期:2019-12-02 07:51   浏览次数:
69人阅读 2019-11-26 09:49:21

作者 | 阿里巴巴技术专家  溪恒

一、需求来源

为什么需求效劳发现

在 K8s 集群外面会经过 pod 去部署使用,与传统的使用部署不同,传统使用部署在给定的机器下面去部署,我们晓得怎样去调用别的机器的 IP 地址。但是在 K8s 集群外面使用是经过 pod 去部署的, 而 pod 生命周期是长久的。在 pod 的生命周期进程中,比方它创立或销毁,它的 IP 地址都会发作变化,这样就不能运用传统的部署方式,不能指定 IP 去拜访指定的使用。

另内在 K8s 的使用部署里,之前虽然学习了 deployment 的使用部署形式,但还是需求创立一个 pod 组,然后这些 pod 组需求提供一个一致的拜访入口,以及怎样去控制流量负载平衡到这个组外面。比方说测试环境、预发环境和线上环境,其真实部署的进程中需求坚持异样的一个部署模板以及拜访方式。由于这样就可以用同一套使用的模板在不同的环境中直接发布。

Service:Kubernetes 中的效劳发现与负载平衡

最初使用效劳需求暴露到内部去拜访,需求提供应内部的用户去调用的。我们上节理解到 pod 的网络跟机器不是同一个段的网络,那怎样让 pod 网络暴露到去给内部拜访呢?这时就需求效劳发现。

1

在 K8s 外面,效劳发现与负载平衡就是 K8s Service。上图就是在 K8s 里 Service 的架构,K8s Service 向上提供了内部网络以及 pod 网络的拜访,即内部网络可以经过 service 去拜访,pod 网络也可以经过 K8s Service 去拜访。

向下,K8s 对接了另外一组 pod,即可以经过 K8s Service 的方式去负载平衡到一组 pod 下面去,这样相当于处理了后面所说的复发性成绩,或许提供了一致的拜访入口去做效劳发现,然后又可以给内部网络拜访,处理不同的 pod 之间的拜访,提供一致的拜访地址。

二、用例解读

上面停止实践的一个用例解读,看 pod K8s 的 service 要怎样去声明、怎样去运用?

Service 语法

2

首先来看 K8s Service 的一个语法,上图实践就是 K8s 的一个声明构造。这个构造里有很多语法,跟之前所引见的 K8s 的一些规范对象有很多类似之处。比方说标签 label 去做一些选择、selector 去做一些选择、label 去声明它的一些 label 标签等。

这里有一个新的知识点,就是定义了用于 K8s Service 效劳发现的一个协议以及端口。持续来看这个模板,声明了一个名叫 my-service 的一个 K8s Service,它有一个 app:my-service 的 label,它选择了 app:MyApp 这样一个 label 的 pod 作为它的后端。

» 下一篇:没有了
  • 友情链接:
Copyright(C) 2007-2010 EntLib.com(上海闵行区浦江镇863软件孵化基地) - 企业级的电子商务系统 基于Microsoft .Net Framework / ASP.Net / C# / AJAX 平台构建的标准电子商务系统 All Rights Reserved (R)    沪ICP备08014628号