///////////////////////////////////////////////
Hadoop 272 Linux分布式环境:
1. 创建用户hadoop,
sudo useradd –d /home/hadoop –m hadoop –G admin,root
sudo passwd hadoop
主机名设置,
master,slave1,slave2
网络设置
1,IP设置
2.配置 文件路径为;/etc/hosts
10.0.0.110master.localdomain
10.0.0.111slave1.localdomain
10.0.0.112slave2.localdomain
重启网络生效:servicenetworkrestart
2. OpenSSH, 免密码登陆
(1) 每个结点分别产生公私密钥。同样的方法在剩下的两个结点中如法炮制即可。
(2) 单机回环ssh免密码登录测试
(3) 让主结点(master)能通过SSH免密码登录两个子结点(slave)
为了实现这个功能,两个slave结点的公钥文件中必须要包含主结点的公钥信息
将master结点的公钥文件追加至authorized_keys文件中
scp hadoop@192.168.110.130:~/.ssh/id_rsa.pub ~/.ssh/master_rsa.pub
cat master_rsa.pub >> authroized_keys
3. JDK(tar.gz),环境变量
卸载:
rpm -qa|grep
java查看
rpm -e --nodeps ???
1)./usr/local/
java/
2)
注意,如果编译hadoop2.6.5,需要jdk7
export JAVA_HOME=/usr/local/java/jdk1.8.0_102/
export JAVA_BIN=$JAVA_HOME/bin
export JRE_HOME=$JAVA_HOME/jre
export JAVA_LIB=$JAVA_HOME/lib
#export CLASSPATH=.:$JAVA_LIB/tools.jar:$JAVA_LIB/dt.jar
export CLASSPATH=.:$JAVA_LIB
export PATH=$JAVA_BIN:$PATH
4. Hadoop设置------本机伪分布式/集群
1)目录:
~/hadoop
---hadoop2.7.2
---hadoop-dir
---hadoop7.7.2-src
---hadoop-plugin
#创建目录
cd ~/hadoop/hadoop-dir
mkdir tmp
mkdir -p hdfs/name
mkdir hdfs/data
2)配置文件:
可能需要在hadoop-env.sh yarn-env.sh 中设置JAVA_HOME
1> 配置hadoop-env.sh
export JAVA_HOME=/usr/local/java/jdk1.7.0_80/
2> Core-site.xml配置
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop/hadoop-dir/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
3>
Hdfs-site.xml配置
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hadoop/hadoop/hadoop-dir/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/hadoop/hadoop/hadoop-dir/hdfs/data</value>
</property>
</configuration>
4> mapred-site.xml文件
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>hdfs://master:9001</value>
</property>
</configuration>
5>
yarn-site.xml;
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
</configuration>
6>
hadoop--配置masters和slaves文件
在masters文件中填入:
master
在slaves文件中填入:
slave1
slave2
3)环境变量:
export HADOOP_HOME=/home/hadoop/hadoop/hadoop-2.7.2
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
6.0 赋予用户对hadoop安装目录可写的权限 sudo chown -hR 用户 hadoop根目录
6.1 通过SSH 向各节点复制hadoop
7.格式化,---主结点master上进行操作:
hadoop namenode -format
8.启动,----也在主结点master上进行操作
9.用jps检验各后台进程是否成功启动
在主结点master上查看namenode,jobtracker,secondarynamenode进程是否启动。
在node1和node2结点了查看tasktracker和datanode进程是否启动。
10.监测, 运行
通过网站查看集群情况
在浏览器中输入:http://192.168.110.130:50030,网址为master结点所对应的IP:
在浏览器中输入:http://192.168.110.130:50070,网址为master结点所对应的I
============================
1.hadoop编译
1)maven的安装
export MAVEN_HOME=/home/hadoop/hadoop/tools/apache-maven-3.3.9
export PATH=$PATH:$MAVEN_HOME/bin
2)ant安装 yum
3)findbugs
export FINDBUGS_HOME=/home/hadoop/hadoop/tools/findbugs-3.0.1
export PATH=$PATH:$FINDBUGS_HOME/bin
3)protobuf250
源码安装
3):others:
yum install openssl-devel
yum install snappy snappy-devel
4) 检查 cmake 版本
下面开始编译hadoop (-X)
进入到hadoop-2.7.1-src目录
使用命令:
mvn clean package -Pdist,native -DskipTests -Dtar
或者:
mvn package -Pdist,native -DskipTests -Dtar
注意,如果编译hadoop2.6.5,
mvn clean package -Pdist,native -DskipTests -Dtar -Dmaven.javadoc.skip=true
进行编译。
务必保持网络畅通,
file hadoop/hadoop-2.7.2/lib/native/*
hadoop checknative -a
2.eclipse 插件编译
按照readme, 修改build.xml, lib命名等
4.本地伪分布式
0)STOP ALL !!!!
check -version
1)bash_profile 修改
export HADOOP_HOME=/home/hadoop/hadoop/hadoop-2.7.2-pseudo
check -version
2)eclipse 修改
hadoop home:
dfs location:
3.插件验证
eclipse 版本很重要, hadoop272在centos6.x 使用 Eclipse IDE for Java Developers ,版本号Mars
验证可用
5.开发