1、hadoop全分布前期准备主机名更改1.1 修改主机名# vim /etc/sysconfig/networkHOSTNAME=master1.2 修改主机名和IP的映射关系(hosts)# vim /etc/hosts例如添加:192.168.111.131 master:wq! #保存退出reboot #重启系统后重新显示关闭防火墙service iptables stop(关闭防火墙)service iptables status(查看防火墙状态)chkconfigiptables off(永久关闭防火墙)关闭selinuxvi etc/selinux/config添加 SELINUX=
2、disabled重启之后命令getenforce显示 disabled添加用户useradd Hadooppasswd Hadoop配置java(root权限下)上传mkdir /usr/javaexport JAVA_HOME=/usr/java/jdk1.8.0_65export JRE_HOME=$JAVA_HOME/jreexport CLASS_HOME=$JAVA_HOME/libexport PATH=$PATH:$JAVA_HOME/bin修改hadoop所属 /hadoop/hadoop1.2.1chown R hadoop:hadoop /hadoopchmod R 755
3、 /hadoopsuhadoop切换到hadoop下添加hadoop用户环境变量在hadoop用户下配置环境变量vi .bash_profileHadoop1*用户环境变量添加HADOOP_HOME=/hadoop/hadoop-1.2.1PATH=$PATH:$HADOOP_HOME/bin刷新source .bash_profilehadoop2*用户环境变量vi .bash_profile添加HADOOP_HOME=/usr/hadoop/hadoop-2.6.2PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbinHADOOP_LOG_DIR=$HA
4、DOOP_HOME/logsYARN_LOG_DIR=$HADOOP_LOG_DIRHADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/nativeHADOOP_OPTS=-Djava.library.path=$HADOOP_HOME/libhadoop用户下建立.ssh*.pub(一定要两个表示追加)并建立所有的ssh公钥互信用户权限下传输文件scp -r 文件夹主机:目录用户权限下hadoop1.*配置修改配置文件第一个:hadoop-env.sh vim hadoop-env.sh 第二个:core-site.xml vim core-site.
5、xml fs.default.name hdfs:/主机名(或IP):9000 hadoop.tmp.dir (hadoop绝对路径)/tmp 第三个:hdfs-site.xml(第二个是namenode节点存储hadoop文件系统信息的本地系统路径,可修改 第三个是datanode节点被指定要存储数据的本地系统路径,可修改) vim hdfs-site.xml dfs.replication 3 dfs.name.dir hadoop.tmp.dir(hadoop.tmp.dir可自己更改,但要写绝对路径,并赋予写的权限) dfs.data.dir hadoop.tmp.dir(hadoop
6、.tmp.dir可自己更改,但要写绝对路径,并赋予写的权限) 第四个:mapred-site.xml vim mapred-site.xml mapred.job.tracker (master主机名或jobteacker的主机名):9001 第五个:master(单机测试不修改slave即可,成功后在修改) 第六个:slave 将nemenode和secondarynamenode分离在core-site.xml中添加fs.checkpoint.period3600同步时间fs.checkpoint.size67108864块大小fs.checkpoint.dir/./hdfs/namese
7、condarysecondarynamenode所在目录在hdfs-site.xml中添加 dfs.secondary.http.address (secondarynamenode的主机名):50090dfs.http.address(namenode的主机名):50070The address and the base port where the dfsnamenode web ui will listen on.If the port is 0 then the server will start on a free port.并修改master文件jps测试线程 master显示 n
8、amenode secondarynamenode jobtracker slave显示 datanode tasktracker查看hadoop集群的状态hadoopdfsadmin -reporthadoop2.*配置修改配置文件/etc/hadoop第一个:hadoop-env.sh vim hadoop-env.sh $JAVA_HOME=/usr/java/jdk1.8.0_65 yarn-env.sh vim yarn-env.sh $JAVA_HOME第二个:core-site.xml vim core-site.xml fs.defaultFS hdfs:/主机名(或IP):9
9、000 hadoop.tmp.dir (hadoop绝对路径)/tmp io.file.buffer.size 131072 可选配置 hadoop.proxyuser.hduser.hosts * hadoop.proxyuser.hduser.groups * 第三个:hdfs-site.xml vim hdfs-site.xml dfs.replication 2 dfs.webhdfs.enabled true dfs.namenode.secondary.http-address (mastersecondary主机名):9001 dfs.namenode.name.dir file
10、:/usr/hadoop/hadoop-2.6.2/hdfs/name dfs.datanode.data.dir file:/usr/hadoop/hadoop-2.6.2/hdfs/data 可选配置 *dfs.datanode.ipc.address 0.0.0.0:50020 *dfs.datanode.http.address 0.0.0.0:50075 dfs.namenode.http-address(namenode的主机名):50070 dfs.namenode.secondary.http-address (secondarynamenode的主机名):50090dfs.n
11、amenode.checkpoint.dirfile:/usr/hadoop/hadoop-2.6.2/hdfs/namesecondarydfs.namenode.checkpoint.period3600 第四个:mapred-site.xml vim mapred-site.xml mapreduce.framework.name yarn mapreduce.jobhistory.address (master主机名或jobteacker的主机名):10020 maoreduce.jobhistory.webapp.address (master主机名或jobteacker的主机名):
12、10021 第五个:yarn-site.xml vim yarn-site.xml yarn.nodemanager.aux-services mapreduce_shuffle yarn.nodemanager.aux-services.mapreduce.shuffle.class org.apache.hadoop.mapred.ShuffleHandler yarn.resourcemanager.scheduler.address (master主机名或jobteacker的主机名):8030 yarn.resourcemanager.resource-tracker.address
13、 (master主机名或jobteacker的主机名):8031 yarn.resourcemanager.address (master主机名或jobteacker的主机名):8032 yarn.resourcemanager.admin.address (master主机名或jobteacker的主机名):8033 第六个:slave(单机测试不修改slave即可,成功后在修改)将nemenode和secondarynamenode分离在hdfs-site.xml中添加 dfs.namenode.secondary.http-address (secondarynamenode的主机名):
14、50090dfs.namenode.http-address(namenode的主机名):50070The address and the base port where the dfsnamenode web ui will listen on.If the port is 0 then the server will start on a free port.dfs.namenode.checkpoint.dirfile:/usr/hadoop/hadoop-2.6.2/hdfs/namesecondarydfs.namenode.checkpoint.period3600并修改maste
15、r文件 jps测试线程 master显示 SecondaryNameNode ResourceManager NameNode slave显示 NodeManager DataNode查看hadoop集群的状态hadoopdfsadminreport特有问题打开debug export HADOOP_ROOT_LOGGER=DEBUG,console在执行hadoop fs -lsll /lib64/libc.so.6显示 /lib64/libc.so.6-libc-2.12.so(也可用ldd -version )所以版本不同2.12和2.14的区别解决方案手动升级libc64到2.14版本
16、glibc-2.14自己下载放到/mnt/yum install gccyum install ntpdateyum install -y gcc-c+yum install gperf (会在make install时出现错误:gperf)mkdir /usr/buildcp -r /mnt/glibc-2.14 /usr/buildcd /usr/buildmkdir glibc-2.14-buildcd glibc-2.14-build/lsexport CFLAGS=-g -o2./glibc-2.14/configure -prefix=/usrmakefile /lib64/libc.so.6ll /lib64/libc.so.6make install (后续错误自己排除)Datanode错误解决方案如果机器都能互相ssh则是因为文件损坏时间同步ntp是时间服务器ntpdate是时间客户端ntpdate (时间服务器)与windows同步
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1