完整 安装配置 hadoop 集群
配置hadoop集群首先选准备3台liunx机器(我用的Ubuntu虚拟机)
Ubuntu 还是 Centos 随便
192.168.1.101 h1 (准备装成namenode)
192.168.1.102 h2 (准备装成datanode)
192.168.1.103 h3 (准备装成datanode)
首先,联通这3台机子的使用ssh免密钥:
我自己使用的都是root用户,因为懒的使用其他用户还要赋值权限
生成ssh密钥 命令:
# ssh-keygen -t rsa
Enter file in which to save the key (/root/.ssh/id_rsa): (id_rsa)
Enter passphrase (empty for no passphrase): (密码)
Enter same passphrase again: (再输入密码)
完成后进入 /root/.ssh/ 路径下
拷贝>cp> OK! h1的机子搞完 然后按照上面的步骤把 h2 h3 都生成一边 ssh密钥
接下来要把 h2 h3 的 authorized_keys 里面的内容 都复制到 h1的authorized_keys里面 保证里面所有的公钥都在,配置下hosts 文件
root@h1:~# vim /etc/hosts
127.0.0.1 localhost
127.0.1.1 ubuntu
192.168.1.101 h1
192.168.1.102 h2
192.168.1.103 h3
把h1的authorized_keys 拷贝给h2 和 h3
scp -r /root/.ssh/authorized_keys h2:/root/.ssh/authorized_keys
scp -r /root/.ssh/authorized_keys h3:/root/.ssh/authorized_keys
这样以后就可以免密钥通信了 如果想试试的话 可以使用# ssh h2 命令连过去在 #exit 退出。
顺便也把刚才修改的hosts文件也拷贝过去 省得改了
scp -r /etc/hosts h2:/etc/hosts
scp -r /etc/hosts h3:/etc/hosts
因为这三台的都是新安装的机子 之前的hosts文件没有改过 所以可以这样偷懒 如果是以前用过的机子最好不要
现在开始安装 jdk 网上下了个,把压缩放到liunx里面 然后tar解压
root@h1:~# tar zxvf jdk7 jdk-7u51-linux-x64.tar.gz
//解压之后放到一个制定路径下 可以改名
mv jdk1.7.0_51 /usr/local/jdk
配置jdk的环境变量
root@h1:~# vim /etc/profile 在最下行加入
JAVA_HOME=/usr/local/jdk
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME> 执行 source /etc/profile 让配置立即生效 否则需要重启才可以
在下载一个hadoop 我下载的是1.2.1
root@h1:~# tar zxvf hadoop-1.2.1.tar.gz 我是放在/root 目录下的
现在进去修改hadoop的配置文件
root@h1:~# cd /root/hadoop-1.2.1/config 接下来我们要修改几个配置文件
hadoop-env.sh
core-site.xml
hdfs-site.xml
mapred-site.xml
masters
slaves
修改第一个 vim hadoop-env.sh
# The only required environment variable is JAVA_HOME.All others are
# optional.When running a distributed configuration it is best to
# set JAVA_HOME in this file, so that it is correctly defined on
# remote nodes.
# The java implementation to use.Required.
#这里默认是被注释掉的 现在取消注释 并修改为jdk路径
export JAVA_HOME=/usr/local/jdk
# Extra Java>
# export HADOOP_CLASSPATH=
# The only required environment variable is JAVA_HOME.All others are
# optional.When running a distributed configuration it is best to
# set JAVA_HOME in this file, so that it is correctly defined on
# remote nodes.
# The java implementation to use.Required.
export JAVA_HOME=/usr/local/jdk
# Extra Java>
# export HADOOP_CLASSPATH=
修改第二个 vim core-site.xml
fs.default.name
hdfs://192.168.1.101:9000
hadoop.tmp.dir
/root/hadoop-1.2.1/tmp
14/03/31 01:21:43 INFO namenode.FSEditLog: closing edit log: position=4, editlog=/tmp/hadoop-root/dfs/name/current/edits
14/03/31 01:21:43 INFO namenode.FSEditLog: close success: truncate to 4, editlog=/tmp/hadoop-root/dfs/name/current/edits
14/03/31 01:21:43 INFO common.Storage: Storage directory /tmp/hadoop-root/dfs/name has been successfully formatted.
14/03/31 01:21:43 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at h1/192.168.1.101
************************************************************/
看到 successfully formatted 就成功了
下一步 启动hadoop集群
root@h1:~/hadoop-1.2.1# bin/start-all.sh 启动之后 查看是否启动成功
root@h1:~# /usr/local/jdk/bin/jps 结果为:
3319 JobTracker
3848 Jps
2951 NameNode
3229 SecondaryNameNode
启动成功在去h2 h3看看是否启动成功
4232 Jps
3089 DataNode
3483 TaskTracker
启动成功!OK安装配置 启动都成功了 下面就是开发
页:
[1]