部署:服务部署平台

背景

你已经采用了微服务架构并且将你的系统架构为一组服务。每个服务为了吞吐量和可用性,部署为一组服务实例。

问题

怎样将服务打包和部署?

限制

  • 服务采用不同语言,不同框架,不同框架版本编写
  • 每个服务为了吞吐量和可用性,存在多个服务实例
  • 服务必须独立部署和扩展
  • 服务实例彼此之间应该隔离
  • 你需要可以快速的构建和部署服务
  • 你需要可以限制服务消费的资源(CPU和内存)
  • 你需要监控每个服务实例的行为
  • 你想要可靠部署
  • 你必须尽可能小成品的部署应用程序

解决方案

采用部署平台,它部署应用的自动化基础设施。它提供了服务抽象,一组命名的,高可用的(例如:负载均衡)服务实例。

示例

  • Docker编排框架,包括Docker swarm mode 和 Kubernetes
  • 无服务器平台 例如AWS Lambda
  • PaaS包括 Cloud Foundry 和 AWS Elastic Beanstalk

相关模式

  • 一些部署平台提供了服务注册和服务端发现
  • 一些部署平台内部可能采用容器或者虚拟机来部署服务。Docker编排框架当然采用的基于容器的方式

你可能感兴趣的:(部署:服务部署平台)