Dubbo 在 K8s 下的思考
作者 | 曹胜利 Apache Dubbo PMC 导读 :Dubbo 作为高性能 Java RPC 框架的刻板印象早已深入人心,在 Cloud Native 的架构选型上,Spring Cloud 或许才是业界的优先选择。实际上,Dubbo 已经悄然地衍进为 Cloud Native 基础设施,不仅承袭过去 RPC 时代的荣耀,而且也完善了现有基础设施的缺失。自从容器和 K8s 登上舞台之后,给原有的 RPC 领域带来了很大的挑战,本文主要讲述 RPC 领域遇到的问题,以及 RPC 怎么去拥抱 K8s 的一些思考。 K8s 介绍 Kubernetes 是一个开源的,用于管理云平台中多个主机上的容器化的应用, Kubernetes 的目标是让部署容器化的应用简单并且高效, Kubernetes 提供了应用部署、规划、更新、维护的一种机制。Kubernetes 简称 K8s。 在 Kubernetes 中,最小的管理元素不是一个个独立的容器,而是 Pod 。Pod 的生命周期需要注意以下几点: 容器和应用可能随时被杀死; Pod Ip 和主机名可能变化 (除非使用 StatefulSet 进行定制); 写到本地的磁盘的文件可能消失,如果想不失效,需要用存储卷。 应用 & 容器 & Pod 的关系 应用部署在容器中,一般情况下一个应用只部署在一个容器中; 一个 Pod