利用 Kubernetes 特性简化系统架构
1. 背景与目标
在大规模微服务架构中,当前存在多个支持服务来实现重要的设计模式,如边缘服务器、配置服务器、授权服务器和分布式追踪服务等。为了简化微服务架构,减少需要部署的支持服务数量,我们可以利用 Kubernetes 的内置功能来处理相应的设计模式。具体来说,将使用 Kubernetes 的 ConfigMaps 和 Secrets 替代 Spring Cloud Config Server,使用 Kubernetes 的 Ingress 对象替代 Spring Cloud Gateway。同时,还将学习如何使用 cert - manager 自动化证书的创建、供应和轮换过程。最后,通过 Docker Compose 部署和测试微服务架构,确保微服务的源代码不依赖于 Kubernetes 平台。
2. 技术要求
相关代码示例可在 $BOOK_HOME/Chapter17 中找到。若想查看本章对源代码所做的更改,可使用喜欢的 diff 工具比较 $BOOK_HOME/Chapter16 和 $BOOK_HOME/Chapter17 两个文件夹。
3. 替换 Spring Cloud Config Server
Spring Cloud Config Server 虽有集中管理配置、支持 Git 版本控制和加密敏感信息等优点,但会消耗大量内存,启动时也会带来显著开销。例如在运行自动化集成测试时,其他微服务需等待配置服务器启动后才能启动,导致测试延迟。而使用 Kubernetes 的 ConfigMa
超级会员免费看
订阅专栏 解锁全文
171万+

被折叠的 条评论
为什么被折叠?



