为什么HDP在我选择现有的mysql时安装了mysql

时间:2017-05-17 03:44:00

标签: hortonworks-data-platform ambari

我通过Ambari 2.5.0.3安装HDP 2.6,错误显示在Hive客户端安装中。错误日志:



resource_management.core.exceptions.ExecutionFailed: Execution of '/usr/bin/zypper --quiet install --auto-agree-with-licenses --no-confirm mysql-client' returned 4. Problem: mysql-community-client-5.7.17-1.sles11.x86_64 conflicts with namespace:otherproviders(mysql-client) provided by mysql-client-5.5.31-0.7.10.x86_64
 Solution 1: Following actions will be done:
  deinstallation of mysql-community-client-5.7.17-1.sles11.x86_64
  deinstallation of mysql-community-server-5.7.17-1.sles11.x86_64
 Solution 2: do not install mysql-client-5.5.31-0.7.10.x86_64

Choose from above solutions by number or cancel [1/2/c] (c): c




我选择了现有的mysql数据库,为什么ambari还在尝试安装? 或者无论如何选择" 2"在上面的选项?

1 个答案:

答案 0 :(得分:0)

您从非默认系统存储库安装了mysql。 Ambari不会检查软件包是否已经安装,它只是在集群部署期间(或添加服务/主机时)为每个服务安装软件包。

包依赖关系在metainfo.xml个文件中定义。您可以尝试查找相关的Ambari服务元信息文件,并围绕服务依赖关系定义。它看起来像

    <osSpecific>
      <osFamily>suse</osFamily>
      <packages>
        <package>
          <name>mysql-client</name>
        </package>
      </packages>
    </osSpecific>

metainfo.xml个文件可能位于两个位置。确保选择正确的文件。

  • 默认服务元信息/var/lib/ambari-server/resources/common-services/<service name>/<service version>/metainfo.xml
  • per-stack覆盖/var/lib/ambari-server/resources/stacks/<stack id>/<stack version>/services/<service name>/metainfo.xml

别忘了重启ambari-server!它在开始时读取服务定义。

相关EPIC附件解释了继承的逻辑https://issues.apache.org/jira/browse/AMBARI-7201