ubuntu安装hadoop(全分布式)

前段时间安装后依稀记起来的步骤 纯手打,有错误望指出

安装包(http://hadoop.apache.org/)

开始安装之前需要做的事情

1.因为hadoop是用java实现的所以第一步先安装java 并且在/etc/profile 配置环境变量,接着来一发 source /etc/profile使新的环境变量生效。

2.vi /etc/hostname  改成hadoop01 

vi /etc/hosts 

192.168.2.133  hadoop01 wwww.hadoop01.com

192.168.2.129  hadoop02 wwww.hadoop02.com

192.168.2.131  hadoop03 wwww.hadoop03.com

开始安装:

1..开始安装hadoop(一主两从,主:hadoop01,从:hadoop02,hadoop03)

 ①.tar -zxvf hadoop //解压安装包

 ②.配置环境变量 vi /etc/profile   export HADOOP_HOME=/usr/local/hadoop-3.1.3  export PATH=$HADOOP_HOME/bin  source /etc/profile 使其生效

 ③.vi /etc/hadoop/hadoop-env.sh 配置环境变量(把java的加进去)

2.配置5个xml文件(咱们到/hadoop/etc/hadoop目录下)

1.core-site.xml

<!--配置hdfs文件系统的命名空间-->
<property>
   <name>fs.defaultFS</name>
   <value>hdfs://hadoop01:9000</value>
 </property>
<!--操作hdfs的缓存大小-->
<property>
   <name>io.file.buffer.size</name>
   <value>4096</value>
</property>
<!--配置临时数据存储目录-->
 <property>
   <name>hadoop.tmp.dir</name>
   <value>/home/bigdata/tmp</value>
 </property>

2.hdfs-site.xml

<!--副本数-->
  <property>
  <name>dfs.replication</name>
  <value>3</value>
  </property>
<!--块大小 128m haddop2-->
<property>
   <name>dfs.block.size</name>
   <value>134217728</value>
 </property>
<!--hdfs元数据存储的位置-->
<property>
   <name>dfs.namenode.name.dir</name>
   <value>/home/hadoopdata/dfs/name</value>
 </property>
<!--hdfs数据存储位置-->
<property>
   <name>dfs.datanode.data.dir</name>
   <value>/home/hadoopdata/dfs/data</value>
 </property>
<!--hdfs的检测目录-->
<property>
   <name>dfs.checkpoint.dir</name>
   <value>/home/hadoopdata/checkpoint/dfs/cname</value>
 </property>
<!--hdfs的namenode的web地址-->

<property>
   <name>dfs..http.address</name>
   <value>hadoop01:50070</value>
 </property>

<!--hdfs的snn的web地址-->
<property>
   <name>dfs.namenode.secondary.http.address</name>
   <value>hadoop01:50090</value>
 </property>
<!--是否开启web操作hdfs-->
<property>
   <name>dfs.webhdfs.enabled</name>
   <value>false</value>
 </property>
<!--是否启用hdfs权限控制(acl)-->
<property>
   <name>dfs.permissions</name>
   <value>false</value>
 </property>
</configuration> 

3.mapred-site.xml

 <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
        <final><true></final>
    </property>
<!--历史服务的通信地址-->
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>hadoop01:10020</value>
    </property>
<!--历史服务的webui地址-->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>hadoop01:19888</value>
    </property>

4.yarn-site.xml

<!--指定mapreduce的shuffle-->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

<!--指定resourcemanager主机名-->
   <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop01</value>
    </property>
<!--指定rm的scheduler内部通信地址-->
 <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>hadoop01:8030</value>
    </property>

<!--指定rm的resource-tracker内部通信地址-->
   <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>hadoop01:8031</value>
    </property>
<!--指定rm的admin的内部通信地址-->
   <property>
        <name>yarn.resourcemanager.admin.address</name>
        <value>hadoop01:8033</value>
    </property>

<!--指定rm的web ui 监控地址-->
    <property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>hadoop01:8088</value>
    </property>

配置完成后咱们

分发到其他服务器
scp -r /usr/local/hadoop/ hadoop2:/usr/local scp -r /usr/local/hadoop/ hadoop3:/usr/local

接着配置ssh免密登陆

ssh-keygen -t rsa
//一直回车
分发公钥
ssh-copy-id hadoop01
ssh-copy-id hadoop02
ssh-copy-id hadoop03

记得启动之前注意两点

1.将linux的时间统一
2.hadoop namenode -format 格式化 hadoop01(主节点的)

开始启动命令

全启动 start-all.sh
全关闭 stop-all.sh
模块启动
start-dfs.sh
start-yarn.sh
单个进程启动
hadoop-daemon.sh start/stop namenode
hadoop-daemons.sh start/stop  datanode 
yarn-daemon.sh start/stop namenode
yarn-daemons.sh start/stop  datanode

启动之后查看jps
root@hadoop01:~# jps 3606 SecondaryNameNode 12921 Jps 3258 NameNode 4011 NodeManager 3870 ResourceManager
hadoop02 hadoop03
3843 DataNode 5557 Jps 3975 NodeManager

以上就可以运行了 

接下来贴下启动过程中报的错误,如果有缘看到这篇博客,可以把自己遇到的错误以及解决方案评论,

1.启动报错:Attempting to operate on hdfs namenode as root
解决方案
修改start/stop-hdfs.sh (直接添加)
HDFS_DATANODE_USER=root  
HDFS_DATANODE_SECURE_USER=hdfs  
HDFS_NAMENODE_USER=root  
HDFS_SECONDARYNAMENODE_USER=root 
修改start/stop-yarn.sh
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

猜你喜欢

转载自www.cnblogs.com/guochenchen/p/12591075.html