You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 7.9安装自托管Sentry时Clickhouse连接报错如何解决

问题说明

参考Sentry官方自托管文档在CentOS Linux release 7.9.2009 (Core) 上部署自托管Sentry,执行sudo ./install.sh命令时出现ClickHouse连接失败报错。

安装脚本报错内容

Failed to connect to clickhouse:9000
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/clickhouse_driver/connection.py", line 260, in connect
    return self._init_connection(host, port)
  File "/usr/local/lib/python3.8/site-packages/clickhouse_driver/connection.py", line 226, in _init_connection
    self.socket = self._create_socket(host, port)
  File "/usr/local/lib/python3.8/site-packages/clickhouse_driver/connection.py", line 202, in _create_socket
    for res in socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM):
  File "/usr/local/lib/python3.8/socket.py", line 918, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known
Connection to Clickhouse cluster clickhouse:9000 failed (attempt 9)
Traceback (most recent call last):
  File "/usr/src/snuba/snuba/clickhouse/native.py", line 81, in execute
    result: Sequence[Any] = conn.execute(
  File "/usr/local/lib/python3.8/site-packages/clickhouse_driver/client.py", line 205, in execute
    self.connection.force_connect()
  File "/usr/local/lib/python3.8/site-packages/clickhouse_driver/connection.py", line 180, in force_connect
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/clickhouse_driver/connection.py", line 279, in connect
    raise err
clickhouse_driver.errors.NetworkError: Code: 210. Name or service not known (clickhouse:9000)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/usr/src/snuba/snuba/migrations/connect.py", line 30, in check_clickhouse_connections
    check_clickhouse(clickhouse)
  File "/usr/src/snuba/snuba/migrations/connect.py", line 49, in check_clickhouse
    ver = clickhouse.execute("SELECT version()")[0][0]
  File "/usr/src/snuba/snuba/clickhouse/native.py", line 96, in execute
    raise ClickhouseError(e.code, e.message) from e
snuba.clickhouse.errors.ClickhouseError: [210] Name or service not known (clickhouse:9000)
Failed to connect to clickhouse:9000
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/clickhouse_driver/connection.py", line 260, in connect
    return self._init_connection(host, port)
  File "/usr/local/lib/python3.8/site-packages/clickhouse_driver/connection.py", line 226, in _init_connection
    self.socket = self._create_socket(host, port)
  File "/usr/local/lib/python3.8/site-packages/clickhouse_driver/connection.py", line 202, in _create_socket
    for res in socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM):
  File "/usr/local/lib/python3.8/socket.py", line 918, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

ClickHouse服务日志

执行docker-compose logs clickhouse查看服务日志,核心报错如下:

clickhouse_1                                | Processing configuration file '/etc/clickhouse-server/config.xml'.
clickhouse_1                                | Merging configuration file '/etc/clickhouse-server/config.d/docker_related_config.xml'.
clickhouse_1                                | Merging configuration file '/etc/clickhouse-server/config.d/sentry.xml'.
clickhouse_1                                | Poco::Exception. Code: 1000, e.code() = 0, e.displayText() = Exception: Failed to merge config with '/etc/clickhouse-server/config.d/sentry.xml': Access to file denied: /etc/clickhouse-server/config.d/sentry.xml, Stack trace (when copying this message, always include the lines below):
clickhouse_1                                |
clickhouse_1                                | 0. Poco::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) @ 0x105351b0 in /usr/bin/clickhouse
clickhouse_1                                | 1. ? @ 0xdefbd83 in /usr/bin/clickhouse
clickhouse_1                                | 2. DB::ConfigProcessor::loadConfig(bool) @ 0xdef9e97 in /usr/bin/clickhouse
clickhouse_1                                | 3. BaseDaemon::reloadConfiguration() @ 0x9157010 in /usr/bin/clickhouse
clickhouse_1                                | 4. BaseDaemon::initialize(Poco::Util::Application&) @ 0x91597d2 in /usr/bin/clickhouse
clickhouse_1                                | 5. DB::Server::initialize(Poco::Util::Application&) @ 0x8f96458 in /usr/bin/clickhouse
clickhouse_1                                | 6. Poco::Util::Application::run() @ 0x10457659 in /usr/bin/clickhouse
clickhouse_1                                | 7. DB::Server::run() @ 0x8f96045 in /usr/bin/clickhouse
clickhouse_1                                | 8. mainEntryClickHouseServer(int, char**) @ 0x8f8ce23 in /usr/bin/clickhouse
clickhouse_1                                | 9. main @ 0x8ee8799 in /usr/bin/clickhouse
clickhouse_1                                | 10. __libc_start_main @ 0x21b97 in /lib/x86_64-linux-gnu/libc-2.27.so
clickhouse_1                                | 11. _start @ 0x8ee802e in /usr/bin/clickhouse
clickhouse_1                                |  (version 20.3.9.70 (official build))

核心错误为:Access to file denied: /etc/clickhouse-server/config.d/sentry.xml

解决步骤
  1. 停止当前所有Sentry相关容器
docker-compose down
  1. 进入你下载的Sentry自托管项目根目录,找到ClickHouse配置文件的宿主机挂载路径,默认路径为./clickhouse/config.d/sentry.xml
  2. 修改配置文件权限和所属用户,ClickHouse容器内进程默认使用UID为101的用户运行,直接给该用户授予读取权限即可:
# 修改文件读写权限
sudo chmod 644 ./clickhouse/config.d/sentry.xml
# 修改文件所属用户和用户组
sudo chown 101:101 ./clickhouse/config.d/sentry.xml
  1. 如果你使用的是CentOS默认开启SELinux的环境,可临时关闭SELinux验证是否是权限限制导致:
sudo setenforce 0

如果修改后问题解决,可编辑/etc/selinux/config文件,将SELINUX参数值修改为permissive,永久关闭SELinux的强制模式。
5. 重新执行Sentry安装脚本即可

sudo ./install.sh

内容的提问来源于stack exchange,提问作者Maksym

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 12:21:00