Service Mesh课程讲义-黑马程序员1:服务通信及网关、虚拟服务配置

需积分: 0 0 下载量 80 浏览量 更新于2024-01-23 收藏 5.87MB PDF 举报
本文主要讲述了Service Mesh的概念以及为什么要配置网关和虚拟服务,以及服务之间是如何通信的。还介绍了K8S四层网络架构和Istio进阶中的Sidecar流量接管原理、超时与重试、熔断器等知识点。最后通过BookInfo示例分析了这些概念和原理的具体应用。 首先学习了网关和虚拟服务的概念。网关是服务网格的边界,用于处理HTTP、TCP入口与出口流量。服务只能通过网关对外暴露接口,以方便管理控制。配置网关时可以定义暴露的端口以及传输层面上的配置。而虚拟服务是配置如何在服务网格内将请求路由到服务,它基于Istio和平台提供的基本连通性和服务发现能力。每个虚拟服务包含一组路由规则,用于定义如何将请求发送到特定的服务。 接着介绍了服务之间是如何通信的。在Kubernetes中,服务之间的通信遵循四层网络架构,即应用层、传输层、网络层和链路层。应用层通过域名将请求发送给服务,传输层负责将请求从发送方到接收方的数据传输。网络层负责将数据按照IP地址进行传输,链路层则负责将数据包封装成数据帧进行传输。 然后深入了解了Istio进阶中的一些概念和原理。Sidecar流量接管是指将被管理的服务的流量重定向到Sidecar代理上进行处理。这样可以实现对服务之间的流量进行监控和管理。超时和重试是指在服务之间的通信过程中可能出现的超时和错误,可以通过配置进行处理。熔断器是一种机制,当请求失败率超过阈值时会自动触发熔断,防止服务之间的连锁错误。这些原理和概念都是为了提高服务之间的通信可靠性和稳定性。 最后通过BookInfo示例分析了前面学习的概念和原理在实际应用中的具体场景。通过部署和演示BookInfo示例,我们可以更好地理解Istio的作用和解决的问题。同时也了解了单体架构向服务网格的演变过程。 总结来说,Service Mesh是一种用于解决微服务架构中服务之间通信问题的技术。配置网关和虚拟服务可以实现对服务流量的控制和管理。服务之间的通信遵循四层网络架构,并且通过Istio的一些进阶功能可以提高通信的可靠性和稳定性。通过具体的示例分析,我们可以更好地理解和应用这些知识。