您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[Data Summit 2024 数据峰会]:使用 ClickHouse _ Hodges 提升数据 _ Kubernetes 上的实时分析 - 发现报告
当前位置:首页/行业研究/报告详情/

使用 ClickHouse _ Hodges 提升数据 _ Kubernetes 上的实时分析

使用 ClickHouse _ Hodges 提升数据 _ Kubernetes 上的实时分析

提升您的数据 实时分析 使用ClickHouse的Kubernetes 罗伯特·霍奇斯数据峰会波士顿-2024年5月9日 ©2024Altinity,Inc.©2024Altinity,Inc.1 让我们做一些介绍 罗伯特·霍奇斯 数据库极客在DBMS系统上有30多年的经验。日常工作 :AltinityCEO AltinityEngineering 在DBMS和应用程序方面拥有数百年经验的数据库极客 ClickHouse支持和服务,包括Altinity.Cloud作者ClickHouse的AltinityKubernetes运算符 和其他开源项目 ClickHouse是一个实时分析数据库 了解SQL 在裸机上运行到云 EventStreams 仪表板 无共享架构ELT Interactive图形 按列存储数据对象 ClickHouse 并行和矢量化执行存储 APIs 扩展到许多PB这是一个流行的引擎 是开源的(Apache2.0) 实时分析 我们可以用ClickHouse这样的数据库做什么? 一致的次秒响应随资源线性扩展 交付查询结果的成本为是低的和可预测的 使最终用户能够快速、低成本地访问万亿行数据集 市场TICK数据,DNS查询,网络日志,网络流量日志,服务日志,CDN遥测,实时广告出价,... ©2024Altinity,Inc. 4 为什么不直接使用PostgreSQL? PostgreSQL,MySQLClickHouse 读取行中的所有列只读选定的列 行最小或不压缩 高度压缩的列 ClickHouse在分析查询上的速度通常快1000倍 Read3压缩 列在上方8螺纹 Read3压缩 列 2.6MB (.0044%) Read109列 59GB (100%) 读取3列 from109 1.7GB (3%) 21MB(.035%) Kubernetes、运算符和ClickHouse ©2024Altinity,Inc.©2024Altinity,Inc.7 Kubernetes管理基于容器的应用程序 VM 块存储 ClickHouseC容器 持久性Volume Volume AWSEBS 存储 持久性Volume 索赔 Kubernetes将资源定义映射到基础架构 Pod 有状态Set KubernetesResources 容器 运行时抽象 Process运行于 host Physical基础设施 ClickHouse通常有点复杂! 可用区 ClickHouse服务器 可用区 ClickHouse服务器 ClickHouse服务器 shard2 Keeper服务器 Zookeeper服务器 ClickHouse服务器 shard1 Zookeeper服务器 Analyticapplication shard2 shard1 可用区 操作员使复杂的数据库在Kubernetes上工作 kube-system命名空间 AltinityClickHouse操作员 ClickHouse安装CRD “调整现实” kubectl-f适用 演示.yaml Apache2.0源代码,作为Docker分发 图像 您喜欢的命名空间 最佳实践部署 设置您的 firstClickHouse群集在 Kubernetes ©2024Altinity,Inc.©2024Altinity,Inc.12 从GitHub安装ClickHouse运算符 kubectlapply-f\https://raw.githubusercontent.com/Altinity/clickhouse-operator/master/deploy/operator/clickhouse-operator-install-bundle.yaml DefinestheClickHouseCRD 安装操作员 在kube系统中 和其他好 东西 设置ZooKeeper 获取Zookeeper有状态集definition: wget\ 您提供的文本似乎是一个YAML文件的路径,而不是一段描述性的文本。因此,不需要进行翻译。以下是您提供的文本: ``` https://raw.githubusercontent.com/Altinity/clickhouse-operator/master/deploy/仅zo限okDeeevper/zookeepe ``` 安r-m装anuaZllyo/qouikcke-setaprte-prers。istent-volume/zookeeper-1-node.yaml kubectl创建nszoo1nskubectlapply-fzookeeper-1-node.yaml-nzoo1ns Define您的集群(集群配置,第1页) apiVersion:"clickhouse.altinity.com/v1"种类:"ClickHouseInstallation" 元数据: 名称:"demo"spec: 配置: 群集: -名称:"cl"布局: replicasCount:1 shardsCount:1模板: volumeClaimTemplate:storagepodTemplate:副本 动物园管理员:节点: -host:keeper 碎片和副本 用于Pod和存储的Defi[动物园]饲养员在哪里? Define您的集群(poddefinition,第2页) 模板:服务器版本 podTemplates: -名称:副本spec: 容器: -名称:clickhouse 图像:altinity/clickhouse-server:23.8.8.21.altinitystable Defi和您的集群(存储definition,第3页) volumeClaimTemplates: -名称:存储 #DonotdeletePVCifinstallationisdropped.声明政策:保留 spec: accessModes:保护存储不被删除 -ReadWriteOnce资源: 要求:存储大小 存储:50Gi 演示时间! 操作员如何管理添加副本? VM 提供程序添加VM 添加有状态集 更新群集元数据 VM VM VM 复制架构到新副本 数据复制 (ClickHouse这样做) 向上扩展到生产上 Kubernetes ©2024Altinity,Inc.©2024Altinity,Inc.20 选择Kubernetes发行版 * *仅用于演示/测试 您的Kubernetes设置需要做一些正确的事情 置备群集 主节点 Pod Pod Pod Pod 工作节点 ClickHousePod 工作节点 管理云块数据存储 将节点添加/删除为需要(自动缩放) ClickHousePod 只要你有正确的魔法配置... 手表吊舱 资源请求Pod 持久性Volume索赔 持久性Volume 创建PV在回应对索赔 Karpenter存储 Provisioner类 调整 要匹配的VM 工人 工作节点虚拟工机作节点虚拟节机点虚拟机 EBS卷EBS卷EBS卷 分配存储到 匹配PV 我们可以控制VM类型、区域和存储类型 CPU 网络连接 块存储 /data150Gbgp2 2a IOPS VM m6i.largeus-west- RAM 将pod分配给VM类型 模板:pod模板: -名称:server规格: 容器: -名称:clickhouse 镜像:altinity/clickhouse-server:23.3.13.7.altinitystable节点选择器: node.kubernetes.io/instance-type:m6i.large VM类型 “知名”标签 然后让VM更大! 模板:podTemplates:-name:serverspec:containers:-name:clickhouseimage:altinity/clickhouse-server:23.3.13.7.altinitystablenodeSelector:node.kubernetes.io/instance-type: 新✁VM类型 AFfi与反AFfi✁关系 IP10-0-1-30inus-west-2IP10-0-2-151inus-west-2 chi-demo-cl-0 -0 chi-demo-cl-0 Anti-AffiNity -1 AffiNity chi-demo-cl-0 -1 将副本分配给特定可用区域 apiVersion:"clickhouse.altinity.com/v1"种类:"ClickHouseInstallation" 元数据: 名称:"demo"spec: 配置: 群集: -名称:"cl"1个分片✁两个副本 布局: 独立吊舱 每个AZ✁模板 碎片: -副本: -模板: podTemplate:replica-in-zone-us-west-2a -模板: podTemplate:replica-in-zone-us-west-2b 为每个pod添加affinity规则 模板: podTemplates: -名称:replica-in-zone-us-west-2azone: 值:Pod必须在us-west-2a中安排 -“us-west-2a”podDistribution: 将Pod保留在不同✁主机上 -类型:ClickHouseAntiaffinity范围:ClickHouseInstallationspec: 容器: -名称:clickhouse 图像:altinity/clickhouse-server:23.8.8.21.altinitystable 建筑完成 分析堆栈 ©2024Altinity,Inc.©2024Altinity,Inc.30 我们如何以云原生方式部署分析堆栈? 普罗米修斯Resources ZooKeeperResources GrafanaResources ClickHouseResources Git中✁Defi ClickHous普e罗米修斯 分Z析ooDBKe运e营pe指r标 集群共识 仪表板 Grafana 工作Kubernetes集群 ArgoCD将部署从Git[Hub]映射到K8s Kubernetes清单 Kustomize+清单 头盔图 ArgoCD Kubernetes 应用程序资源 应用程序资源 应用程序资源 将您✁配置保持在GitHub中并安装在任何地方 (安装ArgoCD) argocdappcreateclickhouse--repohttps://github.com/Altinity/argocd-examples-clickhouse .git--pathapps/clickhouse--dest-serverhttps://kubernetes.default.svc--dest-namespacedefault Argocd应用程序同步clickhouse https://github.com/Altinity/argocd-examples-clickhouse gitpush 使用GitHub、ArgoCD和Kubernetes✁高级GitOps https://github.com/yourco/modernstack.git ClickHouseapplication ZooKeeperapplication 普罗米修斯application 产品k8s集群 本地k8s集群ch命名空间 应用程序控制器 存储库服务 API Argocd应用程序创建 Argocd应用程序同步 argocd应用程序删除 Argo

你可能感兴趣

hot

Splunk 实时 Kubernetes 监控

信息技术
splunk2021-02-02
hot

使用 Kubernetes 的 VMware vSphere 7

信息技术
Insight2021-10-22
hot

监控 Kubernetes 上的微服务

信息技术
splunk2020-11-10