VirtualBox 虚拟机 Debian系统上安装Cassandra步骤及遇到的问题

本文记录一下我在VirtualBox 虚拟机 Debian系统上安装Cassandra步骤及遇到的问题。其它Linux系统碰到的问题应该大同小异。

 

一、网络问题

Sun的VirtualBox中文界面,而且开源,有什么理由不用呢?最近想看看各种Linux操作系统的差异,和RHEL系列的比,果然有很大的差别。下载Debian,第一张盘就行了,因为习惯自己编译了,不用本地源,常用的东西都是下载好了的。接下来,安装好Debian,无论是中文也好英文也罢。

 

下面就是配置网络的问题,由于Debian默认的网段是10.10.*.*的,我本机还访问不了,因此需要修改IP地址。修改了很多次才成功。记录下成功的这次。

 

安装完VirtualBox虚拟机后,会多一个网卡——VirtualBox Host-Only Network,默认IP是192.168.56.1。启动VirtualBox时,网络连接选择Host-only Adapter。这种模式是主机和虚拟机能够互相通信,但是虚拟机不能上网。对开发环境来说已经足够了。至于Nat和Bridged没有去尝试,Nat的要做端口映射,Bridged要占用主机网段IP,可能会抢同事的IP,就不尝试了。

 

下面是配置网络。Debian的网络设置和RHEL的不一样。设置网卡是在/etc/network/interfaces文件,设置DNS是在/etc/resolv.conf 文件。现在设置如下:

 

首先通过命令 # ifconfig -a 查看到当前外网网卡标识。我前几次操作错误,现在的标识是eth2。

在/etc/network/interfaces 文件加入:

 

auto eth2
iface eth2 inet dhcp

auto eth2

iface eth2 inet dhcp

 

然后通过 

#ifdown eth2

#ifup eth2

重新载入设置。现在网络就OK了。

 

二、Java安装

Cassandra是基于Java的程序,先去下载和Jre,我下载的Jre1.6 update18——“jre-6u18-linux-i586.bin”。把文件传过去,然后在虚拟机运行:

#cd ~    //我的是root帐号,我的文件就传到了/root目录

#chmod +x jre-6u18-linux-i586.bin

#./jre-6u18-linux-i586.bin

#cp jre1.6.0_18/ /usr/local/ -r

现在就把jre的文件拷贝到了/usr/local/jre1.6.0_18/目录。

现在要设置Java了,在RHEL使用alternatives命令,而在Debian使用update-alternatives命令,语法一样的。

Debian默认是没装Java的,现在开始设置:

#update-alternatives --install  /usr/bin/java java /usr/local/jre1.6.0_18/bin/java 300  

如果要是已经安装了java要换版本,可以用update-alternatives --display java查看当前安装的java,使用update-alternatives --config java进行版本切换。

现在输入

#java -version

java version "1.6.0_18"

Java(TM) SE Runtime Environment (build 1.6.0_18-b07)

Java HotSpot(TM) Client VM (build 16.0-b13, mixed mode)

 

OK了,一切正常。

 

 

三、安装和启动

先到http://incubator.apache.org/cassandra/页面下载Cassandra。

我下载的是 apache-cassandra-0.5.1-bin.tar.gz

然后传到虚拟机上。

执行命令

#tar zxvf apache-cassandra-0.5.1-bin.tar.gz   //解压缩

#cd apache-cassandra-0.5.1/bin

#./cassandra

输出

Listening for transport dt_socket at address: 8888

INFO - Replaying /var/lib/cassandra/commitlog/CommitLog-1268246662083.log

INFO - LocationInfo has reached its threshold; switching in a fresh Memtable

INFO - Enqueuing flush of Memtable(LocationInfo)@19897293

INFO - Sorting Memtable(LocationInfo)@19897293

INFO - Writing Memtable(LocationInfo)@19897293

INFO - Completed flushing /var/lib/cassandra/data/system/LocationInfo-1-Data.db

INFO - Log replay complete

INFO - Saved Token found: 59927080841113489954773621748862915294

INFO - Starting up server gossip

 

成功了,呵呵。

 

当然,要用到生产环境的话可能还需要做很多工作。比如配置啊,开发啊什么的。自己弄来看看的话,这已经是第一步了,呵呵。

 

posted @ 2010-03-10 18:51 Birdshover 阅读(...) 评论(...) 编辑 收藏