【问题标题】:Upgrade of datastax-agent fails from opscenter从 opscenter 升级 datastax-agent 失败
【发布时间】:2015-05-07 09:00:55
【问题描述】:

使用 OpsCenter 5.0.0 运行 Datastax Enterprise 4.5.1 并尝试将 OpsCenter 和 datastax-agents 升级到 OpsCenter 5.1.0 版

这是一个 AWS 中 2 个节点的测试集群。

我从 Datastax 网站下载了 OpsCenter 5.1.0,并成功升级了我的测试集群中的 OpsCenter 服务器。正如预期的那样,在连接到新的 OpsCenter 网页后,会显示一条消息,指出代理无法连接。

我尝试从 OpsCenter Web UI 升级代理。我添加了 AWS 的凭证、用户名“ubuntu”和 pem 格式的公钥并运行了升级。失败了。

在 /var/log/opscenterd/opscenterd.log 中,我看到以下内容:

2015-03-05 17:47:33+0000 []  WARN: Marking request e3f82540-3bd8-4d27-81dd-e40fd476dd0a as failed: Failure installing agent on 10.0.11.138.
         Standard output:
                bin/find-java
                bin/install_agent.sh
                bin/sudowrap
                ./datastax-agent.deb
                ./datastax-agent.rpm
                DataStax AMI wasn't used
                * Stopping DataStax Agent datastax-agent
                ...done.
                Reading package lists...
                Building dependency tree...
                Reading state information...
                E: Unable to locate package opscenter-agent
                Starting agent installation process for version 5.1.0
                Reading package lists...
                Building dependency tree...
                Reading state information...
                sysstat is already the newest version.
                0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
                Selecting previously unselected package datastax-agent.
                (Reading database ... 82449 files and directories currently installed.)
                Preparing to unpack .../datastax-agent.deb ...
                Unpacking datastax-agent (5.1.0) ...
                Setting up datastax-agent (5.1.0) ...

                Configuration file '/etc/datastax-agent/datastax-agent-env.sh'
                ==> File on system created by you or by a script.
                ==> File also in package provided by package maintainer.
                What would you like to do about it ?  Your options are:
                Y or I  : install the package maintainer's version
                N or O  : keep your currently-installed version
                D     : show the differences between the versions
                Z     : start a shell to examine the situation
                The default action is to keep your current version.

         Exit code: 130

当我进入节点时,dpkg 进程仍在运行,我不得不手动将其杀死。我再次从 webUI 运行升级程序;这次它说它成功了,但是代理仍然没有连接。

知道发生了什么,或者如何解决?

【问题讨论】:

  • 代理是否在您的节点上运行? ps -ef | grep datastax-agent
  • 为什么有 2 个罐子? opscent+ 20387 1 41 20:52 pts/0 00:00:07 /usr/lib/jvm/java-7-oracle/jre/bin/java -Xmx40M -Xms40M -Dopscenter.ssl.trustStore=/var/lib/datastax-agent/ssl/agentKeyStore -Dopscenter.ssl.keyStore=/var/lib/datastax-agent/ssl/agentKeyStore -Dopscenter.ssl.keyStorePassword=opscenter -Dagent-pidfile=/var/run/datastax-agent/datastax-agent.pid -Dlog4j.configuration=./conf/log4j.properties -Djava.security.auth.login.config=./conf/kerberos.config -jar datastax-agent-5.0.0-standalone.jar datastax-agent-5.1.0-standalone.jar /var/lib/datastax-agent/conf/address.yaml
  • 这看起来很正常。鉴于上述警告,您的配置文件是否格式错误? '/etc/datastax-agent/datastax-agent-env.sh'
  • 在第一个节点上:JVM_OPTS="$JVM_OPTS -Xmx40M" JVM_OPTS="$JVM_OPTS -Xms40M" 在第二个节点上,它是不同的:JVM_OPTS="$JVM_OPTS -Xmx128M -Djclouds.mpu.parts.magnitude=100000 -Djclouds.mpu.parts.size=16777216"
  • 在我看来,apt(或 dpkg)正在询问有关正在安装的新文件的问题,并冻结直到得到响应。这会导致安装超时并失败。

标签: datastax-enterprise datastax opscenter


【解决方案1】:

当用户修改包中已更改的配置文件时,这是一个已知问题。两种可能的解决方法是在每个节点上手动安装代理包,以便您可以选择包管理器应该采取的操作;或恢复 datastax-agent-env.sh 中的更改,通过 OpsCenter 安装代理,然后重新应用更改(只有在您确切知道所做更改的情况下才有可能)。

作为参考,在 OpsCenter 中修复此问题的内部票证是 OPSC-4495,应在即将发布的补丁版本中修复。

【讨论】:

  • 为了完整起见,从 5.0.0 升级时有 3 个文件发生了变化。到 5.1.0 - /etc/datastax-agent/datastax-agent-env.sh, /etc/init.d/datastax-agent, /etc/sudoers.d/opscenter-agent-sudoers
【解决方案2】:

您是否尝试通过sudo apt-get update && sudo apt-get upgrade datastax-agent手动升级每个节点上的datastax-agent?

【讨论】:

  • 不,我没有尝试过,因为我没有从 repo 安装。我从 Datastax 网站下载了适用于 Linux 的 OpsCenter 5.1 安装程序。我正在为企业使用 datastax。
  • 为什么不尝试使用 repos?之后您将使用 tarball 更快、更简单地进行升级
猜你喜欢
  • 2016-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-29
  • 1970-01-01
  • 2016-01-05
  • 2014-09-29
  • 1970-01-01
相关资源
最近更新 更多