【问题标题】:DataStax Enterprise 4.8.4 on Ubuntu 14.04 LTS install error when using apt repository installation使用 apt 存储库安装时,Ubuntu 14.04 LTS 上的 DataStax Enterprise 4.8.4 安装错误
【发布时间】:2016-02-04 03:43:30
【问题描述】:

我完全按照 docs.datastax.com/en/datastax_enterprise/install/installDEBdse.html 中所述使用了 apt 存储库安装方法

密钥没有问题。我有 Oracle Server JDK 8(截至今天最新)。来自 Miniconda 的 Python 2.7(今天也全新安装),使用默认值并允许预先添加 PATH 变量。

安装后,出现未满足依赖关系的错误:

dse-full : Depends: dse (=4.8.4-1) but it is not going to be installed
           Depends: dse-hive (=4.8.4-1) but it is not going to be installed
           Depends: dse-pig (=4.8.4-1) but it is not going to be installed
           Depends: dse-demos (=4.8.4-1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

这台服务器完全被核弹了,所以 Ubuntu 环境很干净并且更新了。

我已经删除了 sources.list.d 文件夹,获得了一个新的密钥(删除这个文件夹也删除了与任何密钥对的关联),并发现了完全相同的错误。

这里不知道如何更正和继续。

可能相关的附加信息是 nuking 是因为在我之前的安装尝试中,apt 存储库抛出了 http 和 https 错误,因此下载文件并在使其可执行后安装。没有抛出任何错误。但是,在尝试安装最新的 OpsCenter 时,出现与丢失文件和文件夹有关的错误。我什至无法根据 DSE 文档卸载,因为从未创建 /usr/share/dse 文件夹。

更多信息:错误和环境

环境--

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.3 LTS
Release:    14.04
Codename:   trusty

$ java -version
java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)

$ python --version
Python 2.7.5

缓存内容--

$ apt-cache madison dse-full | grep 4.8
  dse-full |    4.8.4-1 | https://debian.datastax.com/enterprise/ stable/main amd64 Packages
  dse-full |    4.8.3-1 | https://debian.datastax.com/enterprise/ stable/main amd64 Packages
  dse-full |    4.8.2-1 | https://debian.datastax.com/enterprise/ stable/main amd64 Packages
  dse-full |    4.8.1-1 | https://debian.datastax.com/enterprise/ stable/main amd64 Packages
  dse-full |    4.8.0-1 | https://debian.datastax.com/enterprise/ stable/main amd64 Packages

移除--

$ sudo apt-get purge "dse*" datastax-agent

Package 'datastax-agent' is not installed, so not removed
Package 'dse-demos' is not installed, so not removed
Package 'dse-full' is not installed, so not removed
Package 'dse-hive' is not installed, so not removed
Package 'dse-libcassandra' is not installed, so not removed
Package 'dse-libhadoop-native' is not installed, so not removed
Package 'dse-libhadoop' is not installed, so not removed
Package 'dse-libhive' is not installed, so not removed
Package 'dse-liblog4j' is not installed, so not removed
Package 'dse-libmahout' is not installed, so not removed
Package 'dse-libpig' is not installed, so not removed
Package 'dse-libsolr' is not installed, so not removed
Package 'dse-libspark' is not installed, so not removed
Package 'dse-libsqoop' is not installed, so not removed
Package 'dse-libtomcat' is not installed, so not removed
Package 'dse-pig' is not installed, so not removed
Package 'dse' is not installed, so not removed

新安装--

$ sudo apt-get install dse-full
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 dse-full : Depends: dse (= 4.8.4-1) but it is not going to be installed
            Depends: dse-hive (= 4.8.4-1) but it is not going to be installed
            Depends: dse-pig (= 4.8.4-1) but it is not going to be installed
            Depends: dse-demos (= 4.8.4-1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

【问题讨论】:

    标签: datastax datastax-enterprise


    【解决方案1】:

    我自己也走上了这条路。我强烈推荐以下内容:

    1) 从 Ubuntu 12 节点重新开始。 (对我来说,我使用了 Amazon EC2 ami-15cbe87f。)

    2) 节点启动后,下载并运行最新的 Datastax Enterprise 安装程序。这会升级集群,并将 hadoop 放在 /usr/share/dse/resources/hadoop 中。 (对我来说,我使用了 DataStaxEnterprise-4.8.4.2016011118-linux-x64-installer.run)

    2) 在 /etc/dse/cassandra/cassandra.yaml 中: - 设置集群名称 - 使用内部地址 172.xx.xx.xx 作为种子节点、listen_address、broadcast_address、broadcast_rpc_address - 使用 0.0.0.0 作为 rpc_address - 使用 PropertyFileSnitch 并编辑 /etc/dse/cassandra/cassandra-topology.properties。为内部和外部 IP 添加条目。 -- # Cassandra 节点 IP=数据中心:机架 -- 52.xx.xx.xx=us-east:1a -- 172.xx.xx.xx=us-east:1a -- # 未知节点的默认值 -- default=us-east:1a

    3) 将 /etc/dse/hadoop/taskcontroller.cfg 复制到 /etc/hadoop/taskcontroller.cfg。还有一段代码没有使用HADOOP_CONF_DIR。

    4) 将目录更改为 /usr/share/dse/resources/hadoop/native/Linux-amd64-64/bin 和 chmod 4750 task-controller

    5) 是的,4750。

    6) 不要忘记编辑 /var/lib/datastax-agent/conf/address.yaml 以包含: - stomp_interface:172.xx.xx.xx - 本地接口:172.xx.xx.xx - use_ssl: 0

    7) 在某些时候,您需要返回并设置 ssl。

    8) sudo service dse start 并检查 /var/log/cassandra/output.log 和 system.log 中的错误

    9) 修复后,您可以删除集群并重新开始,方法是进入 /var/lib/cassandra 并删除其中的所有内容。 (小心!)然后,返回第 8 步。重复直到没有错误。

    10) 使用这种方法让 Cassandra-only 节点干净地工作。然后,使用这种方法让 spark/hadoop 节点干净地工作。然后,您可以将它们组合起来并扩展您的集群。

    【讨论】:

      【解决方案2】:

      不是答案,而是一些有助于解决此问题的想法。需要注意的一点是当前版本是 4.8.4(不是 4.8.6)。

      我刚刚在一个新的 Ubuntu 14.04 VM 上安装了 Java (OpenJDK) 和 Python,一切都按照文档进行。

      $ lsb_release -a
      No LSB modules are available.
      Distributor ID: Ubuntu
      Description:    Ubuntu 14.04.3 LTS
      Release:    14.04
      Codename:   trusty
      $ java -version
      openjdk version "1.8.0_72-internal"
      OpenJDK Runtime Environment (build 1.8.0_72-internal-b05)
      OpenJDK 64-Bit Server VM (build 25.72-b05, mixed mode)
      $ python --version
      Python 2.7.6
      

      一些故障排除/清理步骤:

      $ sudo apt-get update
      $ # confirm 4.8.4 is the latest package known
      $ apt-cache madison dse-full | grep 4.8
        dse-full |    4.8.4-1 | http://debian.datastax.com/enterprise/ stable/main amd64 Packages
        dse-full |    4.8.3-1 | http://debian.datastax.com/enterprise/ stable/main amd64 Packages
        dse-full |    4.8.2-1 | http://debian.datastax.com/enterprise/ stable/main amd64 Packages
        dse-full |    4.8.1-1 | http://debian.datastax.com/enterprise/ stable/main amd64 Packages
        dse-full |    4.8.0-1 | http://debian.datastax.com/enterprise/ stable/main amd64 Packages
      
      $ # remove any DSE packages
      $ sudo apt-get purge "dse*" datastax-agent
      
      $ # see if any packages marked as held
      $ dpkg --get-selections | grep hold
      $ # for each package from above (package_name) set it to 'install'
      $ echo "package_name install" | sudo dpkg --set-selections
      
      $ # try again to install DSE
      $ sudo apt-get install dse-full
      

      如果这些步骤不起作用,请包含完整的命令和运行 apt-get install 的响应。

      【讨论】:

      • 我认为问题在于 Java 的版本。我虽然安装了 Oracle Server JDK 8,但看起来它可能是 JRE?运行的版本是 Java(TM) SE Runtime Environment (build 1.8.0_72-b15) Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)。
      • 好吧..这可能不是问题所在:$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/latest/jdk1.8.0_72 /bin/java" 1 $ sudo update-alternatives --config java 替代 java 有 1 种选择(提供 /usr/bin/java)。选择路径优先级状态----------------------------------------------- -------------- 0 /usr/java/latest/jdk1.8.0_72/bin/java 1 自动模式 * 1 /usr/java/latest/jdk1.8.0_72/bin/java 1个手动模式
      • 查看添加的关于环境和错误输出到终端的文本。
      【解决方案3】:

      这似乎不是 DataStax 包本身的问题,但感觉像是服务器上的 repo 有问题。

      在很多情况下,“未满足的依赖关系”是由于重复的存储库造成的。删除所有重复项并在再次安装之前执行清理,正如上面@BrianC 所记录的那样。

      【讨论】:

      • 在下一个建议的底部查看我的评论。
      【解决方案4】:

      当您安装时,请尝试使用以下版本而不是 dse-full 执行。在安装之前确保执行“yum update”

      sudo yum install dse-full-4.8.4-1

      根据以下内容; Oracle JRE 8 满足安装要求 http://docs.datastax.com/en/datastax_enterprise/4.8/datastax_enterprise/install/installRHELdse.html

      如果安装失败,您可以发布安装命令和以下输出。

      【讨论】:

      • 接下来按照 flightc 的建议查看您的存储库。您的 repo 文件列表中应该只列出一个存储库。 [datastax] 名称 = DataStax Enterprise 的 DataStax 存储库 baseurl=dsa_email_address:password@rpm.datastax.com/enterprise enabled=1 gpgcheck=0 docs.datastax.com/en/datastax_enterprise/4.8/…
      • 我尝试从您从他们的网页获得的 tarball 下载进行安装,但出现有关 sysaat 被引用但未找到的错误,并且无法安装它。后来在日志中指出,由于依赖于 sysaat,无法安装 datastax 代理。服务器管理员核对操作系统后,将重试。这可能一直是问题,因为当我尝试使用 datastax-agent 卸载它时,我收到一个错误,即找不到代理并且没有安装要卸载的 datastax 文件(请参阅帖子中的“删除”)。
      • 当您测试安装时,请使用一条路径。鉴于您在安装包时遇到的挑战,可能更适合您使用。你看过你的存储库列表吗?你只列出了一个吗? Datastax 让您在他们的学院创建一个帐户以获取下载凭据。你创造了那些?之后你更新 yum 了吗?
      猜你喜欢
      • 1970-01-01
      • 2015-05-31
      • 2015-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-25
      • 2016-02-24
      相关资源
      最近更新 更多