Linux中单机配置Hadoop
Ubuntu:
一、安装JAVA。
首先安装java。因为Ubuntu里面默认安装了OpenJDK,可以先将其卸载。在终端输入命令:sudo apt-get purge openjdk*。
1、从sun主页下载JDK for linux 版本。我下载的是jdk-6u37-linux-i586.bin。下载地址:点击打开
2、切换到root用户并切换到想要安装的目录。我的安装目录为/usr/lib/jvm/java。将下载的文件拷贝到此目录中。并使用命令:chmod a+x jdk-6u37-linux-i586.bin将此文件权限设置为可执行类型。
3、开始安装。在终端输入:./jdk-6u37-linux-i586.bin,接下来会进行安装过程。安装过程中会提示按Enter键继续。
4、安装完成后,会出现Done。表示完成了java环境的安装。安装的位置为当前目录/usr/java。当然,也可以选择其他的位置。
5、安装完成后,直接在终端输入java会出错。此时还需要配置环境变量。如果只使用export命令则支队当前shell起作用。如果切换shell或重启则依旧会失效。可以选择配置.bashr文件或/etc/profile,后者修改系统配置文件,对所有用户均有效。
6、使用vim打开/etc/profile文件。在末尾添加如下内容:
- export JAVA_HOME=/usr/lib/jvm/java/jdk1.6.0_37
- export JRE_HOME=/usr/lib/jvm/java/jdk1.6.0_37/jre
- export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
- export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export JAVA_HOME=/usr/lib/jvm/java/jdk1.6.0_37 export JRE_HOME=/usr/lib/jvm/java/jdk1.6.0_37/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
(注:注意一定不要错误,否则有可能重启后无法进入系统,如果由于输入错误,导致开机之后只有空白的界面,按ctrl+Alt+F1进入tty1命令行界面,输入命令:sudo vim /etc/profile 检查刚刚的配置是否有错误的地方,改正后重启即可。注意export命令=两边没有空格。)
7、保存后重新启动计算机。
(注:网上有资料说可以使用source更新一下。在终端输入命令:source /etc/profile。经本人测试,这种方法会导致只在一个终端中有效,如果打开新的终端会java配置会失效,除非再次使用source命令更新。)
8、使用env命令查看各环境变量的值。如果各项变量内容都与之前配置的相同,则说明配置成功。也可使用java -version命令察看。如果能输出java version "1.6.0_37"则表明配置正确。
二、创建Hadoop组和Hadoop用户。
1、创建hadoop用户组:sudo addgroup hadoop
2、创建hadoop用户:sudo adduser -ingroup hadoop hadoopusr。过程中会要求你输入密码和用户信息。输入用户信息的时候,可直接点Enter(表示默认)。最后输入y。
3、给刚新建的hadoop用户hadoopusr添加权限,打开/etc/sudoers文件。输入命令:sudo gedit /etc/sudoers。给hadoopusr赋予root用户同样的权限。在文件末尾添加如下信息:
- root ALL=(ALL:ALL) ALL
- hadoopusr ALL=(ALL:ALL) ALL
root ALL=(ALL:ALL) ALL hadoopusr ALL=(ALL:ALL) ALL
三、安装ssh服务
ssh可以实现远程登录和管理,具体可以参考其他相关资料。
输入命令:sudo apt-get install ssh openssh-server,安装openssh-server。
如果你已经安装好了ssh,可以直接进行下一步。
四、建立ssh无密码登录本机
首先要转换成hadoop用户,执行以下命令:su - hadoopusr,再输入密码即可。
ssh生成密钥有rsa和dsa两种生成方式,默认情况下采用rsa方式。
1、创建ssh-key,我们采用rsa方式。输入命令:ssh-keygen -t rsa -P ""
输入命令后会出现提示信息:“Enter file in which to save the key (/home/hadoopusr/.ssh/id_rsa):”,直接点回车即可。出现如下信息:
- Created directory '/home/hadoopusr/.ssh'.
- Your identification has been saved in /home/hadoopusr/.ssh/id_rsa.
- Your public key has been saved in /home/hadoopusr/.ssh/id_rsa.pub.
- The key fingerprint is:
- d4:29:00:6e:20:f0:d9:c6:a2:9b:cd:22:60:44:af:eb hadoopusr@shan-pc
- The key's randomart image is:
- +--[ RSA 2048]----+
- |+.. ... |
- |.o.* . . . |
- | .+.* o o |
- |...+ . . |
- |oo S |
- |o=. |
- |=.o |
- |o. |
- | E |
- +-----------------+
Created directory '/home/hadoopusr/.ssh'. Your identification has been saved in /home/hadoopusr/.ssh/id_rsa. Your public key has been saved in /home/hadoopusr/.ssh/id_rsa.pub. The key fingerprint is: d4:29:00:6e:20:f0:d9:c6:a2:9b:cd:22:60:44:af:eb hadoopusr@shan-pc The key's randomart image is: +--[ RSA 2048]----+ |+.. ... | |.o.* . . . | | .+.* o o | |...+ . . | |oo S | |o=. | |=.o | |o. | | E | +-----------------+
(注:回车后会在~/.ssh/下生成两个文件:id_rsa和id_rsa.pub。这两个文件是成对出现的。)
2、进入~/.ssh/目录下,将id_rsa.pub追加到authorized_keys授权文件中,开始没有authorized_keys文件。执行命令:
cd ~/.ssh
cat id_rsa.pub >> authorized_keys
完成后即可无密码登录本机。
3、登录localhost。在终端输入命令:ssh localhost
(注:当ssh远程登录到其它机器后,你控制的是远程的机器,需要执行退出命令才能重新控制本地主机。)
4、执行退出命令。输入命令:exit
相关阅读: