CentOS 7.9 保姆级教程:从零到一搞定ClickHouse离线RPM包安装与配置
CentOS 7.9 离线部署ClickHouse全流程实战指南在企业级生产环境中离线部署数据库系统是许多运维团队面临的常见挑战。本文将手把手带你完成CentOS 7.9系统下ClickHouse的离线安装与配置全过程特别针对没有外网连接的安全隔离环境。1. 离线部署前的准备工作离线部署的核心在于完整的依赖闭环。我们需要在外网环境中预先准备好所有安装包和依赖项形成一个自包含的部署包。以下是关键准备步骤基础环境确认操作系统CentOS 7.9 Minimal安装磁盘空间至少预留10GB可用空间内存建议8GB以上OLAP系统内存敏感外网环境资源下载# 创建下载目录 mkdir -p ~/clickhouse-offline cd ~/clickhouse-offline # 下载ClickHouse官方RPM包以20.5.4.40版本为例 wget https://packagecloud.io/Altinity/clickhouse/packages/el/7/clickhouse-client-20.5.4.40-1.el7.x86_64.rpm wget https://packagecloud.io/Altinity/clickhouse/packages/el/7/clickhouse-server-20.5.4.40-1.el7.x86_64.rpm wget https://packagecloud.io/Altinity/clickhouse/packages/el/7/clickhouse-common-static-20.5.4.40-1.el7.x86_64.rpm wget https://packagecloud.io/Altinity/clickhouse/packages/el/7/clickhouse-server-common-20.5.4.40-1.el7.x86_64.rpm依赖项收集# 使用yum-downloadonly插件获取所有依赖 yum install -y yum-plugin-downloadonly mkdir -p ~/clickhouse-offline/dependencies # 获取unixODBC等关键依赖 yum install --downloadonly --downloaddir~/clickhouse-offline/dependencies unixODBC提示建议使用相同版本的CentOS系统进行依赖收集避免兼容性问题。2. 制作离线安装介质将准备好的资源打包成可移植的安装介质是离线部署的关键环节。我们采用以下结构组织文件clickhouse-offline-bundle/ ├── packages/ # 主程序RPM包 │ ├── clickhouse-*.rpm ├── dependencies/ # 系统依赖项 │ ├── unixODBC-*.rpm ├── scripts/ # 部署脚本 │ ├── preinstall.sh │ ├── postinstall.sh └── README.md # 部署说明关键脚本示例preinstall.sh#!/bin/bash # 关闭SELinux sed -i s/SELINUXenforcing/SELINUXdisabled/g /etc/selinux/config setenforce 0 # 设置文件描述符限制 echo * soft nofile 65536 /etc/security/limits.conf echo * hard nofile 65536 /etc/security/limits.conf使用以下命令创建部署包tar -czvf clickhouse-offline-20.5.4.40.tar.gz clickhouse-offline-bundle3. 离线环境安装实战将部署包传输到目标服务器后执行以下安装流程3.1 系统基础配置安装依赖项cd /path/to/clickhouse-offline-bundle/dependencies rpm -ivh *.rpm --nodeps --force验证依赖安装rpm -qa | grep -E unixODBC|libtool3.2 ClickHouse主程序安装按照特定顺序安装RPM包cd /path/to/clickhouse-offline-bundle/packages rpm -ivh clickhouse-common-static-20.5.4.40-1.el7.x86_64.rpm rpm -ivh clickhouse-server-common-20.5.4.40-1.el7.x86_64.rpm rpm -ivh clickhouse-server-20.5.4.40-1.el7.x86_64.rpm rpm -ivh clickhouse-client-20.5.4.40-1.el7.x86_64.rpm验证安装结果rpm -qa | grep clickhouse3.3 配置文件调整修改关键配置以适配生产环境vim /etc/clickhouse-server/config.xml需要调整的主要参数参数项推荐值说明listen_host0.0.0.0允许远程连接max_memory_usage物理内存的70%防止OOMpath/data/clickhouse数据存储路径tmp_path/data/clickhouse/tmp临时文件路径4. 服务管理与故障排查4.1 服务控制命令# 启动服务 systemctl start clickhouse-server # 设置开机自启可选 systemctl enable clickhouse-server # 检查服务状态 systemctl status clickhouse-server -l4.2 常见问题解决方案依赖缺失错误error: Failed dependencies: libodbc.so.2()(64bit) is needed by clickhouse-server-20.5.4.40-1.el7.x86_64解决方案确保所有依赖包已正确安装必要时使用--nodeps参数强制安装端口冲突问题netstat -tulnp | grep 9000内存不足警告 在users.xml中调整内存限制max_memory_usage8589934592/max_memory_usage !-- 8GB --5. 生产环境优化建议目录结构规划mkdir -p /data/clickhouse/{data,metadata,logs,tmp} chown -R clickhouse:clickhouse /data/clickhouse关键性能参数!-- config.xml -- background_pool_size16/background_pool_size max_concurrent_queries100/max_concurrent_queries监控配置# 启用Prometheus监控 prometheus endpoint/metrics/endpoint port9363/port /prometheus在实际部署中遇到过最棘手的问题是权限配置不当导致的数据目录访问失败解决方案是在config.xml中明确指定path和tmp_path后执行chown -R clickhouse:clickhouse /data/clickhouse确保服务账户有完整权限。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2559086.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!