Hadoop完全分布式搭建全过程
本次操作共4台虚拟机(node211,node212,node213,node214),node211为NameNode,其余3台为DataNode,SecondaryNamenode为node212
一、角色资源对应分配
NN DN SNN
node211: *
node212: * *
node213: *
node214: *
二、基础设施配置(node211-node214)
网络:IP --》/etc/sysconfig/network-scripts/ifcfg-eth0
hosts --》/etc/hosts
hostname --》/etc/sysconfig/network
|
ssh配置(node211):
cd ~/.ssh --如果此目录不存在:ssh localhost,然后再exit退出 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa --生成的密钥对:id_rsa和id_rsa.pub。默认存储在"/home/hadoop/.ssh"文件夹下 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys --把id_rsa.pub追加到授权的key里面去
node211:发送node211公钥到其他主机对应目录
cd ~/.ssh scp ./id_dsa.pub root@node212:`pwd`/node211.pub scp ./id_dsa.pub root@node213:`pwd`/node211.pub scp ./id_dsa.pub root@node214:`pwd`/node211.pub
node212-node214:
cd ~/.ssh cat node211.pub >> authorized_keys
jdk配置(node211-node214):
rpm -i jdk-7u67-linux-x64.rpm
export JAVA_HOME=/usr/java/default export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
三、应用搭建
文件解压部署(node211):
tar xf hadoop-2.6.5.tar.gz --解压Hadoop mkdir -p /opt/manzi --创建文件夹 mv ~/hadoop/ /opt/manzi/ --文件拷贝 vi /etc/profile --配置Hadoop环境变量 export JAVA_HOME=/usr/java/default export HADOOP_HOME=/opt/manzi/hadoop export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
四、应用配置(node211)
文件目录
cd $HADOOP_HOME/etc/hadoop --hadoop配置文件目录
vi hadoop-env.sh
export JAVA_HOME=/usr/java/default --修改jdk环境变量为静态路径(原写法${JAVA_HOME取不到值})
vi core-site.xml --NameNode配置文件
<!--决定NameNode在哪里启动--> <property> <name>fs.defaultFS</name> <value>hdfs://node211:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/var/manzi/hadoop/local</value> </property>
vi hdfs-site.xml --hdfs配置文件
//副本数量为2个 <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>node212:50090</value> </property>
vi slaves --DataNode配置文件
node212 node213 node214
将配置完毕的Hadoop拷贝到其他主机
cd /opt --将Hadoop拷贝到其他主机 scp -r ./manzi/ node212:`pwd` scp -r ./manzi/ node213:`pwd` scp -r ./manzi/ node214:`pwd` scp /etc/profile node212:/etc --拷贝profile文件到其他主机 scp /etc/profile node213:/etc scp /etc/profile node214:/etc
五、启动程序
到此为止,Hadoop配置完毕,启动程序
1、NameNode格式化(node211)
hdfs namenode -format
启动成功后 ,NameNode配置文件对应目录会有相应name文件夹及生成新的fsimage及edits文件
|
2、启动程序hdfs(node211)
start-dfs.sh
运行到此步骤,web页面能查看到文件系统及节点情况,启动日志也可以看出是否启动成功
|
六、测试
在user文件夹下添加root用户文件夹
hdfs dfs -mkdir -p /user/root
添加数据测试,此处为方便查看block数量,设置block大小为1M
hdfs dfs -D dfs.blocksize=1048576 -put file.txt /user/root
web页面查看数据
|