
# 云日志服务LTS对比自建ELK Stack有什么优势？
本章节主要介绍华为云日志服务（LTS）对比自建ELK，帮助您更好的了解LTS的主要功能和优势。
#### 背景信息
提到日志搜索，很多人都会想到基于ELK Stack（Elasticsearch/Logstash/Kibana）来搭建，开源的ELK方案，在社区中有大量的内容和使用案例供大家参考。
华为云日志服务LTS，聚焦3大场景（应用运维/等保合规/业务运营），为客户提供采、存、查、加工、分析和告警全托管式日志分析平台。更多信息请参考[图解云日志服务](https://support.huaweicloud.com/productdesc-lts/lts-03208.html)。
#### 功能对比
云日志服务LTS在功能特性的完备度、日志搜索分析性能方面对比ELK有明显的优势，详细对比请见如下表格：
| 特性   | 子特性                  | LTS   | ELK   | 描述                                                                                                                  |
|:---|:---|:---|:---|:---|
| 日志采集 | 云服务日志采集              | ☆☆☆☆☆ | 无     | ELK：不支持采集云服务日志。 LTS：云服务租户面日志统一采集到LTS。                                                |
| 日志采集 | 虚机和容器日志采集            | ☆☆☆☆☆ | ☆☆☆☆  | ELK：使用logstash或者filebeat等开源采集器采集日志。 LTS：使用ICAgent采集日志，有提供向导页面，上手难度低。                 |
| 日志采集 | 多语言SDK日志采集           | ☆☆☆   | 无     | ELK：不支持。 LTS：提供java SDK直接上报日志到LTS                                                  |
| 日志采集 | 主机组管理（主机动态扩缩容）       | ☆☆☆☆☆ | 无     | ELK：不支持。 LTS：提供主机管理、主机组管理能力，主机组支持自定义标识主机组，可以管理动态扩缩容主机组。                               |
| 日志采集 | 日志结构化解析              | ☆☆☆☆  | ☆☆☆☆☆ | ELK：基于采集器实现自定义日志结构化解析。 LTS：提供结构化解析能力，可以正则表达式、JSON、分隔符、自定义模板等方式解析日志。                |
| 日志搜索 | 关键词搜索、模糊搜索、快速分析      | ☆☆☆☆☆ | ☆☆☆☆☆ | ELK和LTS：提供类似的日志关键词搜索能力。                                                                                             |
| 日志搜索 | 实时日志查看               | ☆☆☆☆☆ | 无     | ELK：未提供实时日志查看页面。 LTS：提供实时日志查看页面。                                                      |
| 日志搜索 | 百亿日志秒级搜索             | ☆☆☆☆☆ | ☆☆    | ELK：自建ELK受限于机器资源数量，搜索海量日志时耗时较长。 LTS：利用公有云海量的弹性计算资源，百亿日志可以在3秒内返回搜索结果。                |
| 日志搜索 | 千亿级日志迭代搜索            | ☆☆☆☆☆ | 无     | ELK：无法直接搜索千亿条日志，会出现响应超时。 LTS：提供迭代搜索能力，用户可以直接搜索千亿条日志。                                  |
| 日志搜索 | 日志管理规模               | 百PB级  | 百TB级  | ELK：经常要关注机器扩容，费时费力。 LTS：按需付费，LTS自动管理百PB级日志，不用关心底层资源消耗情况。                            |
| 日志搜索 | SQL分析日志              | ☆☆☆☆☆ | ☆☆    | ELK：SQL性能差，语法上不支持嵌套SQL。 LTS：SQL性能强，支持嵌套SQL。                                         |
| 日志搜索 | SQL函数                | ☆☆☆☆☆ | ☆☆    | ELK：只支持最基础的SQL统计函数。 LTS：在基础SQL函数基础上，提供了大量的扩展函数，例如IP函数、统计函数、环比同比函数、URL函数等，极大扩展了使用场景。 |
| 日志搜索 | 可视化图表                | ☆☆☆☆  | ☆☆☆   | LTS：提供了表格、折线图、饼图、柱状图等多种可视化图表。                                                                                       |
| 日志搜索 | 仪表盘                  | ☆☆☆☆☆ | ☆☆    | ELK：没有云服务日志开箱即用仪表盘。 LTS：提供开箱即用的仪表盘，对常见的云服务日志例如ELB/APIG/DDS/DCS/CFW等提供开箱即用的仪表盘。       |
| 日志告警 | 日志关键词告警和SQL告警        | ☆☆☆☆☆ | ☆     | ELK：没有日志告警功能。 LTS：提供准实时的日志关键词和SQL告警功能。                                               |
| 日志告警 | 告警通知渠道（邮件、短信、HTTPS等） | ☆☆☆☆☆ | ☆     | ELK：无法将告警方便地以钉钉、微信、短信等方式通知用户。 LTS：对接华为云消息通知服务，能以邮件、短信、微信、钉钉、飞书、HTTP等多种渠道通知客户。         |
| 日志转储 | 转储到对象存储              | ☆☆☆☆☆ | 无     | ELK：无法直接转储对象存储。 LTS：页面简单配置可以将日志转储到对象存储。                                              |
| 日志转储 | 转储到kafka             | ☆☆☆☆☆ | ☆☆    | ELK：需要自己部署程序将日志转发到KAFKA。 LTS：页面简单配置可以将日志实时转储到KAFKA。                                |
| 日志转储 | 转储到数据仓库              | ☆☆☆☆☆ | 无     | ELK：无法直接将日志转储到数据仓库。 LTS：页面简单配置可以将日志转储到数据仓库。                                          |
| 日志加工 | 定时SQL作业              | ☆☆☆☆☆ | 无     | ELK：没有定时SQL作业能力。 LTS：可以配置定时SQL作业，将原始日志加工统计为想要的少量日志结果。                                 |
| 日志加工 | 函数加工                 | ☆☆☆☆☆ | 无     | ELK：没有日志加工功能。 LTS：提供函数触发器，在函数服务中可以配置自定义脚本将日志灵活加工。                                   |
   
#### 成本对比
**场景一：**
假设客户每天原始日志100GB（日志平均速率1.16MB/s），日志平均存储30天，30天原始日志总量为3000GB，日志存储方式为一主一副本。
根据Elasticsearch官方推荐，在一主一副本存储方式下，原始日志+副本数据+索引数据等合计占用的存储空间约为原始日志大小2.2倍，另外由于ES集群存在写不均匀且磁盘不能被耗尽，因此为了存储3000GB原始日志，至少需要准备3000GB\*2.2（存储膨胀）\*2（50%磁盘冗余）=13200GB磁盘。
搭建ES最小典型配置是3台ECS（16U64G5TB），kafka双副本能支持缓存最近12小时的日志。
表1自建ELK 
| 大类      | 小类                    | 月成本（**合计：12597元**）   | 费用占比  |
|:---|:---|:---|:---|
| 搭建ES    | 3\*ECS（C616U64G）      | 3\*1999=5997元        | 47.6% |
| 搭建ES    | 云硬盘EVS（高IO 15TB）      | 0.35\*15\*1024=5376元 | 42.7% |
| 搭建KAFKA | 3\*ECS（2U4G）          | 3\*208=624元          | 4.9%  |
| 搭建KAFKA | 云硬盘EVS（超高IO 3\*200GB） | 600元                 | 4.7%  |
   
LTS使用[价格计算器](https://www.huaweicloud.com/pricing.html?tab=detail#/lts)，计算出来月成本约为**2102元** ，使用LTS的成本约为自建ELK成本的**16.7%**，原因是在小日志量场景下，自建ELK起步资源成本很高，相比于按需付费的LTS，有很大劣势。
![](https://support.huaweicloud.com/lts_faq/zh-cn_image_0000001484824653.png "点击放大")
**场景二：**
假设客户每天原始日志1TB（日志平均速率11.6MB/s），日志平均存储7天，7天原始日志总量为7TB，日志存储方式为一主一副本。根据Elasticsearch官方推荐，在一主一副本存储方式下，原始日志+副本数据+索引数据等合计占用的存储空间约为原始日志大小2.2倍，另外由于ES集群存在写不均匀且磁盘不能被耗尽，因此为了存储7TB原始日志，至少需要准备7TB\*2.2（存储膨胀）\*2（50%磁盘冗余）=31TB磁盘。
搭建ES最小典型配置是3台ECS（16U64G10TB），kafka双副本能支持缓存最近12小时的日志。
表2自建ELK 
| 大类      | 小类                    | 月成本（**合计：18931元**）    | 费用占比  |
|:---|:---|:---|:---|
| 搭建ES    | 3 \* ECS（C6 16U64G）   | 3\*1999=5997元         | 31.7% |
| 搭建ES    | 云硬盘EVS（高IO 31TB）      | 0.35\*31\*1024=11110元 | 58.7% |
| 搭建KAFKA | 3 \* ECS（2U4G）        | 3\*208=624元           | 3.3%  |
| 搭建KAFKA | 云硬盘EVS（超高IO 3\*400GB） | 1200元                 | 6.3%  |
   
LTS使用[价格计算器](https://www.huaweicloud.com/pricing.html?tab=detail#/lts)，计算出来月成本约为**13408元** ，使用LTS的成本约为自建ELK成本的**71%**，原因是LTS的存储收费是按用量付费，自建ELK为了保证集群的正常运行需要留有很多磁盘冗余。
![](https://support.huaweicloud.com/lts_faq/zh-cn_image_0000001485025401.png "点击放大")
**场景三：**
假设客户每天原始日志5TB（日志平均速率58MB/s），日志平均存储30天，30天原始日志总量为150TB，日志存储方式为一主一副本。
根据Elasticsearch官方推荐，在一主一副本存储方式下，原始日志+副本数据+索引数据等合计占用的存储空间约为原始日志大小2.2倍，另外由于ES集群存在写不均匀且磁盘不能被耗尽，因此为了存储150TB原始日志，至少需要准备150TB\*2.2（存储膨胀）\*2（50%磁盘冗余）=660 TB磁盘。
搭建ES最小典型配置是66台ECS（16U64G10TB），kafka双副本能支持缓存最近12小时的日志。
表3自建ELK 
| 大类      | 小类                     | 月成本（**合计：374202元**）     | 费用占比  |
|:---|:---|:---|:---|
| 搭建ES    | 66 \* ECS（C6 16U64G）   | 66\*1999=131934元        | 35.3% |
| 搭建ES    | 云硬盘EVS（高IO 660TB）      | 0.35\*660\*1024=236544元 | 63.2% |
| 搭建KAFKA | 3 \* ECS（2U4G）         | 3\*208=624元             | 0.2%  |
| 搭建KAFKA | 云硬盘EVS（超高IO 3\*1700GB） | 5100元                   | 1.4%  |
   
LTS使用[价格计算器](https://www.huaweicloud.com/pricing.html?tab=detail#/lts)，计算出来月成本约为**107655元** ，使用LTS的成本约为自建ELK成本的**28.8%**，原因是LTS的存储收费是按用量付费，自建ELK为了保证集群的正常运行需要留有很多磁盘冗余。
![](https://support.huaweicloud.com/lts_faq/zh-cn_image_0000001434589594.png "点击放大")
#### 总结
云日志服务LTS在功能、性能、成本方面对比ELK都有明显的优势，推荐您使用全托管式的云日志服务替代自建ELK。
