创建微服务演示架构需要多少硬件
How much hardware is needed to create a microservices demo architecture
我正在估算设置演示微服务架构需要多少硬件(例如:https://github.com/microservices-demo/microservices-demo)。
架构包含:
- Kubernetes 集群。
- 4 个微服务,用 java、python 或 golang 编写。有冗余。
- 每个微服务 1 个数据库。
- 1 个用于异步通信的队列或消息代理,可能是 Kafka。
- 1 API 连接到外部的网关。
- 1 Elasticsearch 用于应用程序日志的全文搜索。
- 1 个用于微服务跟踪的 Zipkin。
考虑到这是一个提取指标数据以创建数据集的演示架构,即使我打算使用虚拟化,docker。我需要多少物理服务器?您认为我需要多少硬件?
这不是 code-specific 问题,所以不确定您是否应该 post 在这里。
尽管如此,鉴于没有关于您尝试使用的服务的类型和性能的具体信息 运行,我会选择一台 PC。
如果服务端不需要严格的性能,那么作为最小的逻辑配置,我会选择四核 + 16gb 内存和充足的磁盘 space。
无需服务器、专用硬件组等
也就是说,如果这是一个简单的演示并且服务的性能需求有限。至于上限 - 有 none.
需要物理服务器 - 理论上只有一台。
Minikube 作为 kubernetes kluster,docker 服务部署,包括代理和数据库服务器(所有服务都使用同一服务器,只是一个不同的数据库)。
出于演示目的,这应该足够了。
不是您问题的答案,但大部分内容都可以“作为服务”(IaaS 或 PaaS)获取,因此不需要硬件。
I am estimating how much hardware I need to set up a demo microservices architecture
取决于您想要演示的内容 - 如果您只想演示功能,或者架构在软件方面的工作方式 - 那么正如@quain 所说,一台 PC 应该可以工作。
If it is just a pc I think I am far from building a quality dataset.
如果您有任何特定的品质(例如性能、可用性等),那么您必须量化这些品质,并将它们用作规模计算的输入。任何帮助您确定硬件要求的人也需要这个。例如。您是否正在尝试演示特定负载下的解决方案行为?
要开始进行硬件规模调整,您至少需要以下内容:
- 您将使用的每个软件的系统要求,例如 Elastic Search。
- 数据量和类型 - 您处理多少种类型的记录(例如客户、产品、订单等)- 对于每种类型,您需要多少种才能进行演示? 1、100 还是 100 万?您拥有的数据量驱动存储需求。您对它们执行的操作也会推动计算要求和潜在的网络要求。
- 交易量 - 演示将是一个用户点击,还是您将使用测试工具来驱动解决方案中的数百万个请求?
- Non-Functional 演示的要求/目标(性能等 - 如果有的话)。
别忘了:
- 网络 - 如果在单台 PC 上离线工作,则没有硬件影响,但如果有多台计算机,则问题更大。
我正在估算设置演示微服务架构需要多少硬件(例如:https://github.com/microservices-demo/microservices-demo)。
架构包含:
- Kubernetes 集群。
- 4 个微服务,用 java、python 或 golang 编写。有冗余。
- 每个微服务 1 个数据库。
- 1 个用于异步通信的队列或消息代理,可能是 Kafka。
- 1 API 连接到外部的网关。
- 1 Elasticsearch 用于应用程序日志的全文搜索。
- 1 个用于微服务跟踪的 Zipkin。
考虑到这是一个提取指标数据以创建数据集的演示架构,即使我打算使用虚拟化,docker。我需要多少物理服务器?您认为我需要多少硬件?
这不是 code-specific 问题,所以不确定您是否应该 post 在这里。 尽管如此,鉴于没有关于您尝试使用的服务的类型和性能的具体信息 运行,我会选择一台 PC。 如果服务端不需要严格的性能,那么作为最小的逻辑配置,我会选择四核 + 16gb 内存和充足的磁盘 space。 无需服务器、专用硬件组等
也就是说,如果这是一个简单的演示并且服务的性能需求有限。至于上限 - 有 none.
需要物理服务器 - 理论上只有一台。 Minikube 作为 kubernetes kluster,docker 服务部署,包括代理和数据库服务器(所有服务都使用同一服务器,只是一个不同的数据库)。
出于演示目的,这应该足够了。
不是您问题的答案,但大部分内容都可以“作为服务”(IaaS 或 PaaS)获取,因此不需要硬件。
I am estimating how much hardware I need to set up a demo microservices architecture
取决于您想要演示的内容 - 如果您只想演示功能,或者架构在软件方面的工作方式 - 那么正如@quain 所说,一台 PC 应该可以工作。
If it is just a pc I think I am far from building a quality dataset.
如果您有任何特定的品质(例如性能、可用性等),那么您必须量化这些品质,并将它们用作规模计算的输入。任何帮助您确定硬件要求的人也需要这个。例如。您是否正在尝试演示特定负载下的解决方案行为?
要开始进行硬件规模调整,您至少需要以下内容:
- 您将使用的每个软件的系统要求,例如 Elastic Search。
- 数据量和类型 - 您处理多少种类型的记录(例如客户、产品、订单等)- 对于每种类型,您需要多少种才能进行演示? 1、100 还是 100 万?您拥有的数据量驱动存储需求。您对它们执行的操作也会推动计算要求和潜在的网络要求。
- 交易量 - 演示将是一个用户点击,还是您将使用测试工具来驱动解决方案中的数百万个请求?
- Non-Functional 演示的要求/目标(性能等 - 如果有的话)。
别忘了:
- 网络 - 如果在单台 PC 上离线工作,则没有硬件影响,但如果有多台计算机,则问题更大。