前言

Apache skywalking 是一个面向分布式系统的APM(应用性能监控)工具。专门为微服务,云原生和基于容器的架构而设计。其底层是一个分布式追踪系统。

Skywalking项目地址

本次容量规划基于压测结果来进行估算。

1. 压测用例

模拟1000个用户并发,压测5分钟。TPS 3400/s (这比较接近生产环境的TPS了),每次请求产生20个span。监控压测期间skywalking collector节点的CPU 和 memory ,网络带宽的使用情况;以及ElasticSearch的磁盘空间使用情况。

1.1 虚拟机配置

角色 CPU Memory Disk Linux release
被测试应用 8Core 4G 20G CentOS 6.5 Final
Skywalking Collector集群(两个节点) 8Core 8G 10G CentOS 6.5 Final
ES集群(三个节点) 4Core 8G 40G CentOS 6.5 Final

首先是总体压测结果:

在这里主要关注 TPS: 3400/s

1.2 Collector节点CPU & Memory & 网络带宽

  • CPU

  • Memory

可以看到Collector对CPU 和 Memory 要求不高。

  • 网络带宽

collector对网络带宽要求还是挺高的:平均流入流量 19.55Mbps ,平均流出流量 30.64Mbps。

1.2.1 collector节点数量估算

要让Collector集群能撑住所有agent上报的量,需满足以下条件:Collector集群的TPS 大于等于 所有agent上报的TPS

  1. 所有的agent上报的TPS = 全网总TPS ✖️ 采样率 ✖️ 放大系数
  2. Collector集群的TPS = 单个Collector的TPS ✖️ Collector节点数量
  3. 因此 ,Collector节点数量 = (全网总TPS ✖️ 采样率 ✖️ 放大系数)/ 单个Collector的TPS
  • 全网总TPS = 270000/s (这是峰值TPS,数据来自CAT监控数据)
  • 采样率假设使用50%
  • 放大系数(估算时的一种常用手段,主要是防止突发流量时也能保证系统能撑住,2.5-3.5),采用3,表示能撑住3倍突发流量
  • 单个Collector能处理的TPS=20000/s (collector网卡带宽足够的情况下,数据来自skywalking 社区)
1.2.1.1 估算结果

Collector节点数量 = (270000 ✖️ 0.5 ✖️ 3) / 20000 = 20.25

根据接入情况,前期可以先部署比如5台collector节点,后续接入更多的应用时再逐步增加collector。

1.3 ElasticSearch节点磁盘空间使用情况

disk.indices 指的是ES的index所占的空间

ES采取2个分片0个replicas的策略,相当于数据只保存1份

压测前

shards disk.indices   host         ip           node56         69mb      192.168.6.65 192.168.6.65 gz_210kvm_6556       92.1mb      192.168.6.73 192.168.6.73 gz_205kvm_7356       34.2mb      192.168.6.66 192.168.6.66 gz_210kvm_66

压测后

shards disk.indices  host         ip           node
56      267.6mb     192.168.6.73 192.168.6.73 gz_205kvm_73
56        205mb     192.168.6.66 192.168.6.66 gz_210kvm_66
56      109.3mb     192.168.6.65 192.168.6.65 gz_210kvm_65

1.3.1 ES磁盘增长量分析

从上面可以看出,TPS 3400/s,压测5分钟,每个请求20个span的情况下,ES的磁盘空间增加386.3M字节。

1.3.2 ES集群磁盘容量估算

以500个应用实例来估算,假设其中5%的实例(也就是25个)是比较公共的基础组件,流量会更大一些,比另外的95%的流量高10倍。
假设skywalking的分钟级别的数据保存90分钟(这是可以配置的),得到以下容量值:

475 ✖️ 386.3M ✖️(90/5) + 25 ✖️386.3M ✖️ 10 ✖️(90/5) = 2954025M+1554750M = 5041215M = 5.04T

5.04T ✖️ 3(放大系数) = 15.12T

Collector集群规划

一共需要20个节点,前期可以先部署5个,后续再加。

  • CPU and Memory

8Core CPU ,16G Memory

  • 网卡带宽

collector节点千兆网卡。

  • disk size

没有特殊要求,普通硬盘即可。磁盘容量也没有特别要求。

ElasticSearch集群规划

  • CPU and Memory

    • CPU 32Core+
    • Memory 32G+

ES大量读写数据,对内存要求比较高,生产环境的ES ,JVM节点内存至少32G。(当然跟应用的流量规模有关)

  • 网卡带宽

千兆网卡

  • disk size

整个集群需要15T

磁盘最好上SSD,性能比机械磁盘好太多,在SKywalking的场景里实际使用比机械磁盘快约10倍。

Skywalking容量规划相关推荐

  1. Exchange Server 2013 规划系列之日志容量规划、数据库容量规划

    日志容量规划公式: a. 事务日志文件大小为每个1M b. 平均邮件大小150KB,则每个邮箱生成的日志增加1.9倍 c. 如果邮件大小是300KB,则从1.9倍增加到3.8倍 实例: 假设每日收发邮 ...

  2. 《大型网站服务器容量规划》一2.1 什么是容量

    本节书摘来异步社区<大型网站服务器容量规划>一书中的第2章,第2.1节,作者: 郑钢 责编: 张涛,更多章节内容可以访问云栖社区"异步社区"公众号查看. 2.1 什么是 ...

  3. 《大型网站服务器容量规划》一1.1 容量规划背景

    本节书摘来异步社区<大型网站服务器容量规划>一书中的第1章,第1.1节,作者: 郑钢 责编: 张涛,更多章节内容可以访问云栖社区"异步社区"公众号查看. 1.1 容量规 ...

  4. 大型网站服务器 pdf,大型网站服务器容量规划[PDF][145.25MB]

    内容简介 内 容 提 要本书讲解了用数学回归分析方法来做服务器容量规划的思路,让读者掌握服务器容量规划的量化方法:模型的选择是服务器容量规划的关键,不同的程序有不同的模型.本书使用nginx+PHP+ ...

  5. Hyper-v副本容量规划器

    为了业务连续性和灾难恢复的目的,Windows Server 2012和Windows Server 2012 R2的Hyper-V管理员可以将其虚拟机从主服务器/集群复制到副本服务器/集群.适用于H ...

  6. 【elasticsearch】 Elasticsearch集群规模和容量规划的底层逻辑

    1.概述 转载:https://mp.weixin.qq.com/s?__biz=MzI2NDY1MTA3OQ==&mid=2247484628&idx=1&sn=666e41 ...

  7. java 服务 容量评估,容器云平台容量规划及管理优化

    随着容器云平台实践的深入,容器基础设施资源的分配和使用也暴露出了前期产品设计的一些意料之外的问题.特别在证券行业,资源的使用时段往往比较集中在上午9点到10点时段前后,过了这个时段,资源的使用量就迅速 ...

  8. 服务器做系统怎么规划,如何做系统容量规划 | 知行天下

    为了迎接中秋节及国庆节的到来,需要对线上服务器进行扩容,发现了一些问题,就顺手整理下如何做容量规划 容量规划 容量定义:资源所能支撑特定服务的能力 容量规划:资源管理 适用范围:同构集群 性能 &am ...

  9. ElasticSearch部署架构和容量规划

    一.前言 前面介绍了ElasticSearch原理和使用相关的内容,在生产环境如何比较科学的进行容量规划.部署.调优.排查问题呢,业界和官方也对相关的问题进行总结,我这边也结合自己的经验对这些使用El ...

最新文章

  1. 矩阵消除游戏--牛客练习赛58
  2. C++ assert 断言使用
  3. LI中内容超过长度后以省略号显示的方法
  4. python requests和urllib_Python——深入理解urllib、urllib2及requests(requests不建议使用?)...
  5. fusion安装centos7并配置静态ip
  6. 记一次免费让网站启用HTTPS的过程
  7. Ubuntu系统安装 - 单系统
  8. python vba sql_Excel、VBA与Mysql交互
  9. 2022年南航计算机考研统考录取情况统计
  10. 考试计算机网络基础知识,事业单位考试计算机网络基础知识试题及答案
  11. 腾讯云数据迁移工具解决方案:华为云迁移到腾讯云
  12. HCNE实验操作视频   迅雷下载
  13. 【图像增强】基于matlab Frangi滤波器血管图像增强【含Matlab源码 2108期】
  14. Windows如何安装mysql
  15. python小明爱跑步
  16. 昆明机床:10 月正式实施10 转增5 可期
  17. https://camo.githubusercontent.com/a25916ccc96abf4f949ae55a3fc8b0108ac578a8/687474703a2f2f3764396f30
  18. CAD快速看图软件如何修改文字的样式
  19. Sitadel :Web安全扫描工具
  20. JAVA实验二家中的电视_类:实验2家中的电视

热门文章

  1. 电容、电感反馈式振荡器
  2. VMware workstation 6.5.1 下载
  3. linux+安装xp系统下载,linux系统怎么安装xp系统
  4. 修改XP开机画面最简单办法(图)
  5. android web一条龙,Ubuntu JavaWeb类型项目一条龙环境搭建
  6. 六元均匀直线阵的各元间距为_微波技术与天线复习题
  7. DoS/DDoS的现状分析和典型案例
  8. 2021重庆科技学院调剂复试真题总结
  9. vivo Y55A解账户锁刷机包 线刷包救砖教程
  10. bdd100k数据集制作用于YOLOv3训练