在Ubuntu 14.04上安装cassandra时出错

时间:2019-05-25 14:04:14

标签: cassandra installation ubuntu-14.04 cassandra-3.0

我正在尝试在ubuntu 14.04上安装cassandra 3.11.4。 当我运行install命令时,返回以下错误

  

dpkg-deb:错误:存档   '/var/cache/apt/archives/cassandra_3.11.4_all.deb'过早   成员“ control.tar.gz”之前的“ control.tar.xz”成员,放弃了

     

dpkg:错误处理存档   /var/cache/apt/archives/cassandra_3.11.4_all.deb(--unpack):   子进程dpkg-deb --control返回错误退出状态2

     

处理时遇到错误:   /var/cache/apt/archives/cassandra_3.11.4_all.deb E:子进程   / usr / bin / dpkg返回错误代码(1)

1 个答案:

答案 0 :(得分:0)

我也曾经遇到过这个问题。 请按照以下步骤操作,在安装Cassandra之前,请确保已安装JDK和python2.7。

步骤1:安装OpenJDK JRE 8 Apache Cassandra需要Java 8的最新版本。为此,您可以选择安装OpenJDK JRE 1.8的最新版本,如下所示:

sudo apt install openjdk-8-jre -y

已安装OpenJDK JRE 1.8,可以确认安装结果:

java -version

输出将类似于以下内容:

openjdk version "1.8.0_151" OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.16.04.2-b12) OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)

(可选)您可以如下创建JAVA_HOME环境变量:

echo "JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")" | sudo tee -a /etc/profile
source /etc/profile
echo $JAVA_HOME

第2步:如果系统中缺少Python 2.7,请安装 Apache Cassandra需要使用Python 2.7而不是Python3。如果在Python 3环境中运行Apache Cassandra,则可能无法启动  Apache Cassandra的外壳。 首先,确定计算机上Python的存在和版本:

python -V

在Ubuntu 16.04 LTS上,输出可能会有些混乱:

The program 'python' can be found in the following packages:
* python-minimal
* python3
Ask your administrator to install one of them

这实际上意味着您需要自己安装Python 2.7:

sudo apt install python -y

重新运行  命令,输出将变为:

Python 2.7.12

第3步:安装Apache Cassandra的最新稳定版本 创建Apache Cassandra 3.11.x apt仓库:

echo "deb http://www.apache.org/dist/cassandra/debian 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
curl https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -

如果遇到GPG公钥错误,请运行以下命令以添加提到的Apache Cassandra公钥,即  在这种情况下:

sudo apt-key adv --keyserver pool.sks-keyservers.net --recv-key A278B781FE4B2BDA
sudo apt-get update

使用新添加的存储库来安装Apache Cassandra:

sudo apt-get install cassandra

第4步:测试Apache Cassandra的安装 启动Apache Cassandra守护程序:

sudo service cassandra start

如果要使Apache Cassandra在系统引导时自动启动,请运行以下命令:

sudo update-rc.d cassandra defaults

接下来,使用nodetool  程序以在当前节点上显示Apache Cassandra的状态:

nodetool status

输出将类似于以下内容:

Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address    Load       Tokens       Owns (effective)  Host ID                               Rack
UN  127.0.0.1  102.66 KiB  256          100.0%            23916cfd-892d-4898-857c-aff9efe2354a  rack1

您可以使用  Shell与Apache Cassandra进行交互:

  

cqlsh本地主机

输出将类似于以下内容: 现在,只需键入  然后按ENTER退出cqlsh shell。 如果要停止Apache Cassandra,请执行以下命令:

sudo service cassandra stop