访问E-MapReduce(简称EMR)上的ClickHouse集群支持通过原生JDBC访问和通过负载均衡SLB访问两种方式。本文为您介绍如何通过这两种方式访问ClickHouse集群。
背景信息
- 通过原生JDBC访问ClickHouse集群的架构图如下。
- 通过负载均衡器SLB访问ClickHouse集群的架构图如下。
前提条件
- 已创建E-MapReduce的ClickHouse集群,详情请参见创建ClickHouse集群。
- 已创建SLB服务,详情请参见创建和管理CLB实例。重要 如果是想通过负载均衡器SLB访问ClickHouse集群,则需要创建SLB服务。并且在创建SLB服务时,如果实例类型选择的是私网,则在选择专有网络时,必须选择与EMR ClickHouse集群相同的VPC。
通过原生JDBC访问ClickHouse集群
- 获取主机的IP地址。
- 配置JDBC以访问ClickHouse集群,详情请参见ClickHouse JDBC driver。
通过负载均衡器SLB访问ClickHouse集群
- 配置SLB服务,详情请参见配置实例。通常情况下,ClickHouse使用SLB服务仅需要配置HTTP及TCP两种协议的监听,如果您有需要,也可以配置HTTPS的监听。配置监听详情,请参见添加TCP监听、添加HTTP监听和添加HTTPS监听。重要
- TCP监听所使用的虚拟服务器组,其端口应为ClickHouse通过TCP连接到服务器的端口,默认为9000。您可以在EMR控制台ClickHouse服务的配置页面,在搜索区域搜索tcp_port参数,参数值即为TCP端口。
- HTTP监听所使用的虚拟服务器组,其端口应为ClickHouse通过HTTP连接到服务器的端口,默认为8123。您可以在EMR控制台ClickHouse服务的配置页面,在搜索区域搜索http_port参数,参数值即为HTTP端口。
- 在实例管理页面,获取SLB的服务地址。
- 配置JDBC以访问ClickHouse集群,详情请参见ClickHouse JDBC driver。