更新时间:2022-12-08 GMT+08:00

配置ClickHouse默认用户密码

ClickHouse集群创建成功后,可以通过ClickHouse客户端访问连接ClickHouse服务端,默认的用户名为“default”,密码为空。

该操作指导ClickHouse集群创建成功后,设置ClickHouse的用户名密码。

前提条件

已安装客户端,例如安装目录为“/opt/Bigdata/client”。以下操作的客户端目录只是举例,请根据实际安装目录修改。

配置ClickHouse用户名密码

  1. 登录MRS管理控制台,单击具体的集群名称,进入集群详情页面。
  2. 在MRS集群详情页面,选择“组件管理 > ClickHouse > 实例”,获取ClickHouse实例的IP地址。
  3. 使用ssh登录任意一个ClickHouse实例所在主机节点,执行以下命令查看ClickHouse进程,获取ClickHouse配置文件路径。

    ps -ef | grep clickhouse
    图1 ClickHouse配置文件路径

  4. 进入配置文件目录。

    cd ${BIGDATA_HOME}/FusionInsight_ClickHouse_*/x_x_clickhouse实例名/etc

    例如:cd ${BIGDATA_HOME}/FusionInsight_ClickHouse_8.0.2.1/1_6_clickhouse/etc

  5. 执行以下命令,获取users.xml和metrika.xml配置文件的内容,以备后续操作步骤使用。

    获取users.xml配置文件内容:

    cat users.xml

    获取metrika.xml配置文件内容:

    cat metrika.xml

  6. 登录ClickHouse集群的FusionInsight Manager,具体请参见访问FusionInsight Manager(MRS 3.x及之后版本)
  7. 选择“集群 > 服务 > ClickHouse”,单击“配置 > 全部配置”,选择“ClickHouse”下面的“_user-xml-content”参数。
  8. 5中获取的users.xml配置文件内容,拷贝到“_user-xml-content”参数值中,并修改参数配置中<password>的值为自定义密码。修改完成单击“保存”保存参数配置。

    例如,如下集群配置当前修改“default”用户的密码为:“Password_123”。注意,具体配置请以实际环境为准。

    <yandex>
      <users>
        <default>
          <profile>default</profile>
          <networks>
            <ip>::/0</ip>
          </networks>
          <quota>default</quota>
          <password>Password_123</password>
        </default>
      </users>
    </yandex>

    修改密码时,只是修改password参数值,其他参数值保持现状即可。

  9. 在FusionInsight Manager上,选择“集群 > 服务 > ClickHouse”,单击“配置 > 全部配置”,选择“ClickHouse”下面的“_metrika-xml-content”参数。
  10. 5中获取的metrika.xml内容,拷贝到“_metrika-xml-content”参数值中,参考如下示例在参数配置中添加用户名和密码。修改完成单击“保存”保存参数配置。

    注意:以下配置只是参考示例,具体请按照实际环境修改。

    修改前,因为当前default用户没有密码,所以配置文件中没有用户名和密码信息:

    <yandex>
      <clickhouse_remote_servers>
        <default_cluster>
          <shard>
            <replica>
              <host>ClickHouseIiKz0001</host>
              <port>9000</port>
            </replica>
            <replica>
              <host>ClickHouseIiKz0002</host>
              <port>9000</port>
            </replica>
            <internal_replication>true</internal_replication>
          </shard>
        </default_cluster>
        ...
    </yandex>

    修改后,在所有<replica>下添加<user>和<password>参数,<password>参数值为新修改的密码值。

    <yandex>
      <clickhouse_remote_servers>
        <default_cluster>
          <shard>
            <replica>
              <host>ClickHouseIiKz0001</host>
              <port>9000</port>
              <user>default</user>
              <password>Password_123</password>
            </replica>
            <replica>
              <host>ClickHouseIiKz0002</host>
              <port>9000</port>
              <user>default</user>
              <password>Password_123</password>
            </replica>
            <internal_replication>true</internal_replication>
          </shard>
        </default_cluster>
        ...
    </yandex>

  11. 登录安装客户端的节点,执行以下命令,切换到客户端安装目录。

    cd /opt/Bigdata/client

  12. 执行以下命令配置环境变量。

    source bigdata_env

  13. 使用新修改的密码登录ClickHouse。

    clickhouse client --host clickhouse实例IP --user default --password Password_123

    ClickHouse实例IP获取方式:在集群详情页面,选择“组件管理 > ClickHouse > 实例”,获取ClickHouse的IP地址。