首页 » 亚马逊云科技解决方案 » 数据分析 » 快速部署高可用的 ClickHouse 集群
快速部署高可用的 ClickHouse 集群
一键部署高可用、成本优化的 ClickHouse 集群,实现海量数据的实时数据仓库。
首页 » 亚马逊云科技解决方案 » 数据分析 » 快速部署高可用的 ClickHouse 集群
快速部署高可用的 ClickHouse 集群
一键部署高可用、成本优化的 ClickHouse 集群,实现海量数据的实时数据仓库。
概览
此解决方案帮助您快速的在亚马逊云上部署高可用的 ClickHouse 集群。ClickHouse 是一款用于联机分析(OLAP)的列式数据库管理系统(DBMS)。它可以被用于多种场景,如电子商务中用户行为数据的记录和分析,广告网络及电信行业中的数据存储和数据统计,信息安全中的日志分析,遥感中的信息挖掘,商业智能、网络游戏以及物联网中的数据处理和价值数据分析等。关于详细的特性信息,请见 ClickHouse 网站。
为了便于您的测试及使用部署好的 ClickHouse 集群,此解决方案以 OnTime 航班飞行公开数据集为例,对数据基于 Grafana 工具进行了可视化,并提供了统计分析报告。
优势
ClickHouse 在管理监控上还需要和很多第三方服务配合,需要用户自行对接或开发。本解决方案集成了 Amazon S3 实现分级存储,与 Amazon CloudWatch 集成日志采集和资源指标仪表盘,以及提供 Grafana 图形化客户端。
ClickHouse 在管理监控上还需要和很多第三方服务配合,需要用户自行对接或开发。本解决方案集成了 Amazon S3 实现分级存储,与 Amazon CloudWatch 集成日志采集和资源指标仪表盘,以及提供 Grafana 图形化客户端。
ClickHouse 的优化特性将硬件性能发挥到极致,但也给客户带来较大硬件需求负担。本解决方案支持部署在 ARM 架构上的 Amazon EC2 实例上,帮助您节省硬件投入。
ClickHouse 的优化特性将硬件性能发挥到极致,但也给客户带来较大硬件需求负担。本解决方案支持部署在 ARM 架构上的 Amazon EC2 实例上,帮助您节省硬件投入。
ClickHouse 提供了强大的性能和灵活的功能,但需要精细配置才能实现,本解决方案提供一个最佳实践示例,帮助用户快速搭建 ClickHouse 分布式集群环境。您可以在使用 Amazon CloudFormation 模板一键部署该解决方案。详情请参考方案部署指南。
ClickHouse 提供了强大的性能和灵活的功能,但需要精细配置才能实现,本解决方案提供一个最佳实践示例,帮助用户快速搭建 ClickHouse 分布式集群环境。您可以在使用 Amazon CloudFormation 模板一键部署该解决方案。详情请参考方案部署指南。
技术详情
此解决方案帮助您一键部署高可用的 ClickHouse 集群环境,您可以通过部署界面选择部署规模和配置参数。此方案还与 Amazon S3 和 Amazon CloudWatch 等云服务进行了集成。
为保证高可用,方案支持部署在两个可用区中。
在 Amazon Virtual Private Cloud (Amazon VPC) 隔离的网络中划分出公共子网和私有子网部署方案中使用的资源。
动态生成的随机文本字符串用作密码存储在 Amazon Secrets Manager。
在公共子网中部署了如下资源:
- 一台 Linux 堡垒机作为互联网访问入口,提供 Secure Shell (SSH) 接入通道,并通过Amazon Auto Scaling group 来保证高可用。
- Linux 堡垒机绑定了一个弹性公网 IP 对外提供服务。
- Linux 堡垒机通过一个互联网网关接收网络流量。
- 使用 NAT gateway 为 Amazon VPC 内无公网 IP 的 Amazon EC2 实例提供访问互联网的代理服务。
在私有子网中部署了如下资源:
- 一台部署了 ClickHouse 客户端的服务器提供对 ClickHouse 集群的管理访问能力,包括命令行和图形界面的连接方式。
- 一个使用 Amazon EC2 实例部署的 ClickHouse 集群,默认2个节点。
- 一个使用 Amazon EC2 实例部署的 Zookeeper 集群,默认3个节点。用于保存ClickHouse元数据以同步各节点的表复制状态。
- 一个 Amazon ELB 使用 Network Load Balancer 部署在 ClickHouse 集群之前进行负载均衡。
使用了三个安全组来限制对 Amazon EC2 实例的访问:
- 堡垒机安全组用来限制互联网接入的访问地址。
- ClickHouse 安全组用来限制 ClickHouse 集群内部通讯访问。
- 管理安全组用来限制对 ClickHouse 客户端的访问。
使用一个 Amazon S3 桶提供 ClickHouse 分级存储特性,以“clickhouse-data-vpcid”命名规则来创建。
通过 Amazon CloudWatch Logs 采集和集中管理 ClickHouse 集群日志并定义了日志保存期限。
使用 Amazon CloudWatch 仪表板来监测 ClickHouse 和 Zookeeper 集群中 Amazon EC2 实例的 CPU、内存、磁盘 IO 和网络指标,并当部分指标达到阈值时触发告警,通过Amazon Simple Notification Service (Amazon SNS)发送邮件通知。
- CPU 利用率指标包括 cpu_usage_user 和 cpu_usage_system,当 CPU 利用率超过90%并且持续超过5分钟时触发告警。
- 内存利用率指标包括 mem_used_percent,当内存利用率超过 90% 并且持续超过5分钟时触发告警。
- 磁盘 IO 指标包括 diskio_writes 和 diskio_reads。
- 网络指标包括 net_bytes_sent 和 net_bytes_recv。
在您部署解决方案后,您可以使用预先导入的航班样例数据集 OnTime,通过 客户端进行统计分析。
从亚马逊云科技中国(宁夏)区域控制台中启动方案(新 VPC) 从亚马逊云科技中国(北京)区域控制台中启动方案(新 VPC) 从亚马逊云科技中国(宁夏)区域控制台中启动方案(现有 VPC) 从亚马逊云科技中国(北京)区域控制台中启动方案(现有 VPC) 从亚马逊云科技海外区域控制台中启动方案(新 VPC) 从亚马逊云科技海外区域控制台中启动方案(现有 VPC)