快速部署高可用的ClickHouse集群
此解决方案帮助您快速的在亚马逊云上部署高可用的ClickHouse集群。ClickHouse是一款用于联机分析(OLAP)的列式数据库管理系统(DBMS)。它可以被用于多种场景,如电子商务中用户行为数据的记录和分析,广告网络及电信行业中的数据存储和数据统计,信息安全中的日志分析,遥感中的信息挖掘,商业智能、网络游戏以及物联网中的数据处理和价值数据分析等。关于详细的特性信息,请见ClickHouse网站。
为了便于您的测试及使用部署好的ClickHouse集群,此解决方案以OnTime航班飞行公开数据集为例,对数据基于Grafana工具进行了可视化,并提供了统计分析报告。
此解决方案帮助您一键部署高可用的ClickHouse集群环境,您可以通过部署界面选择部署规模和配置参数。此方案还与Amazon S3和Amazon CloudWatch等云服务进行了集成。
该解决方案将会部署如下资源:
1. 为保证高可用,方案支持部署在两个可用区中。
2. 在Amazon Virtual Private Cloud (Amazon VPC) 隔离的网络中划分出公共子网和私有子网部署方案中使用的资源。
3. 动态生成的随机文本字符串用作密码存储在Amazon Secrets Manager。
4. 在公共子网中部署了如下资源:
一台Linux堡垒机作为互联网访问入口,提供Secure Shell (SSH)接入通道,并通过Amazon Auto Scaling group来保证高可用。 Linux堡垒机绑定了一个弹性公网IP对外提供服务。 Linux堡垒机通过一个互联网网关接收网络流量。 使用NAT gateway为Amazon VPC内无公网IP的Amazon EC2实例提供访问互联网的代理服务。5. 在私有子网中部署了如下资源:
一台部署了ClickHouse客户端的服务器提供对ClickHouse集群的管理访问能力,包括命令行和图形界面的连接方式。 一个使用Amazon EC2实例部署的ClickHouse集群,默认2个节点。 一个使用Amazon EC2实例部署的Zookeeper集群,默认3个节点。用于保存ClickHouse元数据以同步各节点的表复制状态。 一个Amazon ELB使用Network Load Balancer部署在ClickHouse集群之前进行负载均衡。6. 使用了三个安全组来限制对Amazon EC2实例的访问:
堡垒机安全组用来限制互联网接入的访问地址。 ClickHouse安全组用来限制ClickHouse集群内部通讯访问。 管理安全组用来限制对ClickHouse客户端的访问。7. 使用一个Amazon S3桶提供ClickHouse分级存储特性,以“clickhouse-data-vpcid”命名规则来创建。
8. 通过Amazon CloudWatch Logs采集和集中管理ClickHouse集群日志并定义了日志保存期限。
9. 使用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。10. 在您部署解决方案后,您可以使用预先导入的航班样例数据集OnTime,通过 客户端进行统计分析。
部署指南:https://s3.cn-north-1.amazonaws.com.cn/aws-dam-prod/china/Solutions/clickhouse-on-aws/Deployment_Guide_ClickHouse_on_AWS.pdf
相关文章
- Eureka 集群部署
- Kubernetes 二进制部署(三)集群部署(多 Master 节点通过 Nginx 负载均衡)
- elasticsearch集群搭建对服务器硬件_elasticsearch开发
- 基于Docker部署 Tomcat集群、 Nginx负载均衡
- MongoDB分片集群部署详解
- Windows环境部署Redis集群
- Oracle 集群的快速部署与配置(oracle集群配置)
- HAProxy+Varnish+LNMP实现高可用负载均衡动静分离集群部署
- 轻松部署Oracle RAC: 实现高可用性数据库集群(oraclerac部署)
- MySQL数据库集群:强大功能和持久性.(mysql的数据库集群)
- 如何删除Redis集群(怎样删除redis集群)
- 管理Redis集群的命令行技巧(根据redis集群命令行)
- 一键部署新世代Redis云数据库集群版(云数据库redis集群版)
- 基于Redis实现卓越集群部署(redis集群集群搭建)
- 快速搭建Redis集群,展现它强大功能(redis集群部署搭建)
- 基于Redis集群的优化架构方案(redis集群架构方案)
- Redis集群搭建实现多机部署(redis集群搭建成功)
- 如何提升Redis集群性能(redis集群性能调优)
- 研究Redis集群写入的机制(redis集群写入过程)
- 话Redis集群技术实现高效的会话管理(redis集群会)
- 利用Redis集群与Solr实现提升搜索结果效果(redis集群 solr)
- 重启集群,重新激活Redis之火(redis重新激活集群)
- 重装集群,构建Redis新环境(redis重新安装集群)
- 缩小部署仅用单台Redis集群实现高可用(redis集群单数台)
- 安装Redis集群仅需单台部署,尽享高效便捷(redis集群单数台)
- 构建Redis集群单机部署时的考量(redis集群单数台)
- 构建安全的Redis集群基于JWT的认证方案(redis集群jwt)