有很多步骤没给截图或者没说明原因了,有时间我会赶紧补上,不好意思各位小伙伴
1 安装JDK和Hadoop
在/root/software执行 rpm -i jdk-7u67-linux-x64.rpm 安装JDK
JDK 的安装路径在/usr/java/jdk1.7.0_67
1.1配置环境变量
执行 vi + /etc/profile 编辑配置文件 +表示执行到文件的末尾
export JAVA_HOME=/usr/java/jdk1.7.0_67/
PATH=
JAVA_HOME/bin
保存退出
执行. /etc/profile 配置文件
执行jps 查看是否安装成功 如果出现 XXXX Jps 表示JDK 安装成功
1.2配置Hadoop环境变量
执行 mkdir -p /opt/sxt 创建 /opt/sxt 目录
在目录 /root/software 下解压Hadoop 安装包
执行 tar xf hadoop-2.6.5.tar.gz -C /opt/sxt/ 将安装包解压到刚刚创建的/opt/sxt/ 目录下 -C 表示只要不是在这个目录下执行 切换目录
cd /opt/sxt/ 进入到sxt目录下 里边有个hadoop-2.6.5目录
cd hadoop-2.6.5 目录下
执行pwd 查看当前目录 /opt/sxt/hadoop-2.6.5为当前目录
执行vi + /etc/profile 编辑配置文件
export JAVA_HOME=/usr/java/jdk1.7.0_67
export HADOOP_HOME=/opt/sxt/hadoop-2.6.5 #追加的hadoop路径 还有:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
执行source /etc/profile 使配置文件生效
敲hd 看是否能补全 hdfs 代码,补全证明hadoop 配置成功
2 修改hadoop的配置文件
cd /opt/sxt/hadoop-2.6.5/etc/hadoop
1. 修改core-site.xml 配置文件
[root@node1 hadoop]# vi hdfs-site.xml
fs.defaultFS
hdfs://node001:9000
hadoop.tmp.dir
/var/sxt/hadoop/full
将上边的配置加入到配置文件中
2. 修改hdfs-site.xml
[root@node001 hadoop]# vi hdfs-site.xml #2为副本因子 默认为3个
dfs.replication
2
dfs.namenode.secondary.http-address
node002:50090
3. 修改slaves
[root@node001 hadoop]# vi slaves #把从节点的主机名写上
node002
node003
node004
3 SSH免秘钥登陆
[root@node001 ~]# ll -a 在该目录下是没有.ssh目录的 -a表示显示隐藏文件
1.首先执行ssh localhost 再输入yes 输入密码 然后可以看到.ssh目录
2. 进入.ssh目录 执行ssh-keygen 生成id_rsa.pub 公钥文件
[root@node001 ~]# cd .ssh/
[root@node001 .ssh]# ll
total 16
-rw------- 1 root root 394 May 13 23:09 authorized_keys
-rw------- 1 root root 1675 May 13 23:08 id_rsa
-rw-r–r-- 1 root root 394 May 13 23:08 id_rsa.pub
-rw-r–r-- 1 root root 2007 May 13 23:11 known_hosts
3. 执行 ssh-copy-id -i id_rsa.pub node001 (要免密登陆的节点名称) 将公钥文件复制给哪个节点,登陆哪个节点就免密要
4. 将node001上的公钥文件分发给2,3,4
ssh-copy-id -i id_rsa.pub node002
ssh-copy-id -i id_rsa.pub node003
ssh-copy-id -i id_rsa.pub node004
4 将node001上的配置文件分发给其他节点
[root@node001 .ssh]# scp /etc/profile node002:/etc/
profile 100% 1939 1.9KB/s 00:00
[root@node001 .ssh]# scp /etc/profile node003:/etc/
profile 100% 1939 1.9KB/s 00:00
[root@node001 .ssh]# scp /etc/profile n ode004:/etc/
profile
将/opt/sxt 下hadoop分发给其他目录
[root@node001 opt]# scp -r sxt/ node002:`pwd`
[root@node001 opt]# scp -r sxt/ node003:`pwd`
[root@node001 opt]# scp -r sxt/ node004:`pwd`
[root@node001 hadoop]# vi hadoop-env.sh 添加export JAVA_HOME=/usr/java/jdk1.7.0_67/
[root@node001 hadoop]# vi mapred-env.sh 添加export JAVA_HOME=/usr/java/jdk1.7.0_67/
[root@node001 hadoop]# vi yarn-env.sh 添加export JAVA_HOME=/usr/java/jdk1.7.0_67/
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/hadoop-env.sh node002:/opt/sxt/hadoop-2.6.5/etc/hadoop/
hadoop-env.sh 100% 4234 4.1KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/hadoop-env.sh node003:/opt/sxt/hadoop-2.6.5/etc/hadoop/
hadoop-env.sh 100% 4234 4.1KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/hadoop-env.sh node004:/opt/sxt/hadoop-2.6.5/etc/hadoop/
hadoop-env.sh 100% 4234 4.1KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/mapred-env.sh node002:/opt/sxt/hadoop-2.6.5/etc/hadoop/
mapred-env.sh 100% 1378 1.4KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/mapred-env.sh node003:/opt/sxt/hadoop-2.6.5/etc/hadoop/
mapred-env.sh 100% 1378 1.4KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/mapred-env.sh node004:/opt/sxt/hadoop-2.6.5/etc/hadoop/
mapred-env.sh 100% 1378 1.4KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/yarn-env.sh node002:/opt/sxt/hadoop-2.6.5/etc/hadoop/
yarn-env.sh 100% 4562 4.5KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/yarn-env.sh node003:/opt/sxt/hadoop-2.6.5/etc/hadoop/
yarn-env.sh 100% 4562 4.5KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/yarn-env.sh node004:/opt/sxt/hadoop-2.6.5/etc/hadoop/
yarn-env.sh
执行 ./etc/profile 在每个节点上 使用配置文件生效 执行hdfs 看是否配置成功
5 执行hdfs namenode -format 初始化
在执行之前没有/var/sxt/hadoop/full 目录 执行后自动创建 该目录
6 启动集群
执行start-dfs.sh
[root@node001 opt]# start-dfs.sh
Starting namenodes on [node001]
node001: starting namenode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-namenode-node001.out
node002: starting datanode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-datanode-node002.out
node003: starting datanode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-datanode-node003.out
node004: starting datanode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-datanode-node004.out
Starting secondary namenodes [node002]
node002: starting secondarynamenode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-secondarynamenode-node002.out
[root@node001 opt]# jps
2005 Jps
1792 NameNode
[root@node002 hadoop]# jps
1580 SecondaryNameNode
1627 Jps
1507 DataNode
[root@node003 .ssh]# jps
1502 DataNode
1569 Jps
[root@node004 .ssh]# jps
1519 DataNode
1586 Jps
7登陆集群 在谷歌游览器登陆http://node001:50070/
执行hdfs dfs -mkdir -p /user/root 创建目录
在游览器可以看到该目录
缺点:单点故障,主节点出问题就完蛋了1 安装JDK和Hadoop
在/root/software执行 rpm -i jdk-7u67-linux-x64.rpm 安装JDK
JDK 的安装路径在/usr/java/jdk1.7.0_67
1.1配置环境变量
执行 vi + /etc/profile 编辑配置文件 +表示执行到文件的末尾
export JAVA_HOME=/usr/java/jdk1.7.0_67/
PATH=$PATH:$JAVA_HOME/bin
保存退出
执行. /etc/profile 配置文件
执行jps 查看是否安装成功 如果出现 XXXX Jps 表示JDK 安装成功
1.2配置Hadoop环境变量
执行 mkdir -p /opt/sxt 创建 /opt/sxt 目录
在目录 /root/software 下解压Hadoop 安装包
执行 tar xf hadoop-2.6.5.tar.gz -C /opt/sxt/ 将安装包解压到刚刚创建的/opt/sxt/ 目录下 -C 表示只要不是在这个目录下执行 切换目录
cd /opt/sxt/ 进入到sxt目录下 里边有个hadoop-2.6.5目录
cd hadoop-2.6.5 目录下
执行pwd 查看当前目录 /opt/sxt/hadoop-2.6.5为当前目录
执行vi + /etc/profile 编辑配置文件
export JAVA_HOME=/usr/java/jdk1.7.0_67
export HADOOP_HOME=/opt/sxt/hadoop-2.6.5 #追加的hadoop路径 还有:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
执行source /etc/profile 使配置文件生效
敲hd 看是否能补全 hdfs 代码,补全证明hadoop 配置成功
2 修改hadoop的配置文件
cd /opt/sxt/hadoop-2.6.5/etc/hadoop
1. 修改core-site.xml 配置文件
[root@node1 hadoop]# vi hdfs-site.xml
fs.defaultFS
hdfs://node001:9000
hadoop.tmp.dir
/var/sxt/hadoop/full
将上边的配置加入到配置文件中
2. 修改hdfs-site.xml
[root@node001 hadoop]# vi hdfs-site.xml #2为副本因子 默认为3个
dfs.replication
2
dfs.namenode.secondary.http-address
node002:50090
3. 修改slaves
[root@node001 hadoop]# vi slaves #把从节点的主机名写上
node002
node003
node004
3 SSH免秘钥登陆
[root@node001 ~]# ll -a 在该目录下是没有.ssh目录的 -a表示显示隐藏文件
1.首先执行ssh localhost 再输入yes 输入密码 然后可以看到.ssh目录
2. 进入.ssh目录 执行ssh-keygen 生成id_rsa.pub 公钥文件
[root@node001 ~]# cd .ssh/
[root@node001 .ssh]# ll
total 16
-rw------- 1 root root 394 May 13 23:09 authorized_keys
-rw------- 1 root root 1675 May 13 23:08 id_rsa
-rw-r–r-- 1 root root 394 May 13 23:08 id_rsa.pub
-rw-r–r-- 1 root root 2007 May 13 23:11 known_hosts
3. 执行 ssh-copy-id -i id_rsa.pub node001 (要免密登陆的节点名称) 将公钥文件复制给哪个节点,登陆哪个节点就免密要
4. 将node001上的公钥文件分发给2,3,4
ssh-copy-id -i id_rsa.pub node002
ssh-copy-id -i id_rsa.pub node003
ssh-copy-id -i id_rsa.pub node004
4 将node001上的配置文件分发给其他节点
[root@node001 .ssh]# scp /etc/profile node002:/etc/
profile 100% 1939 1.9KB/s 00:00
[root@node001 .ssh]# scp /etc/profile node003:/etc/
profile 100% 1939 1.9KB/s 00:00
[root@node001 .ssh]# scp /etc/profile n ode004:/etc/
profile
将/opt/sxt 下hadoop分发给其他目录
[root@node001 opt]# scp -r sxt/ node002:`pwd`
[root@node001 opt]# scp -r sxt/ node003:`pwd`
[root@node001 opt]# scp -r sxt/ node004:`pwd`
[root@node001 hadoop]# vi hadoop-env.sh 添加export JAVA_HOME=/usr/java/jdk1.7.0_67/
[root@node001 hadoop]# vi mapred-env.sh 添加export JAVA_HOME=/usr/java/jdk1.7.0_67/
[root@node001 hadoop]# vi yarn-env.sh 添加export JAVA_HOME=/usr/java/jdk1.7.0_67/
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/hadoop-env.sh node002:/opt/sxt/hadoop-2.6.5/etc/hadoop/
hadoop-env.sh 100% 4234 4.1KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/hadoop-env.sh node003:/opt/sxt/hadoop-2.6.5/etc/hadoop/
hadoop-env.sh 100% 4234 4.1KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/hadoop-env.sh node004:/opt/sxt/hadoop-2.6.5/etc/hadoop/
hadoop-env.sh 100% 4234 4.1KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/mapred-env.sh node002:/opt/sxt/hadoop-2.6.5/etc/hadoop/
mapred-env.sh 100% 1378 1.4KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/mapred-env.sh node003:/opt/sxt/hadoop-2.6.5/etc/hadoop/
mapred-env.sh 100% 1378 1.4KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/mapred-env.sh node004:/opt/sxt/hadoop-2.6.5/etc/hadoop/
mapred-env.sh 100% 1378 1.4KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/yarn-env.sh node002:/opt/sxt/hadoop-2.6.5/etc/hadoop/
yarn-env.sh 100% 4562 4.5KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/yarn-env.sh node003:/opt/sxt/hadoop-2.6.5/etc/hadoop/
yarn-env.sh 100% 4562 4.5KB/s 00:00
[root@node001 hadoop]# scp /opt/sxt/hadoop-2.6.5/etc/hadoop/yarn-env.sh node004:/opt/sxt/hadoop-2.6.5/etc/hadoop/
yarn-env.sh
执行 ./etc/profile 在每个节点上 使用配置文件生效 执行hdfs 看是否配置成功
5 执行hdfs namenode -format 初始化
在执行之前没有/var/sxt/hadoop/full 目录 执行后自动创建 该目录
6 启动集群
执行start-dfs.sh
[root@node001 opt]# start-dfs.sh
Starting namenodes on [node001]
node001: starting namenode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-namenode-node001.out
node002: starting datanode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-datanode-node002.out
node003: starting datanode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-datanode-node003.out
node004: starting datanode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-datanode-node004.out
Starting secondary namenodes [node002]
node002: starting secondarynamenode, logging to /opt/sxt/hadoop-2.6.5/logs/hadoop-root-secondarynamenode-node002.out
[root@node001 opt]# jps
2005 Jps
1792 NameNode
[root@node002 hadoop]# jps
1580 SecondaryNameNode
1627 Jps
1507 DataNode
[root@node003 .ssh]# jps
1502 DataNode
1569 Jps
[root@node004 .ssh]# jps
1519 DataNode
1586 Jps
7登陆集群 在谷歌游览器登陆http://node001:50070/
执行hdfs dfs -mkdir -p /user/root 创建目录
在游览器可以看到该目录
缺点:单点故障,主节点出问题就完蛋了