Hadoop完全分布

Hadoop完全分布,第1张

Hadoop完全分布

一,配置免密(需要输入密码的输入密码即可)

     1.在每个节点生成公钥和私钥,并拷贝

Hadoop100:  

生成公钥和私钥

[root@hadoop100] ssh-keygen -t rsa

然后敲(三个回车)

将公钥拷贝到要免密登录的目标机器上

[root@hadoop100] ssh-copy-id hadoop100

[root@hadoop100] ssh-copy-id hadoop101

[root@hadoop100] ssh-copy-id hadoop102

Hadoop101:  

生成公钥和私钥

[root@hadoop101] ssh-keygen -t rsa

然后敲(三个回车)

将公钥拷贝到要免密登录的目标机器上

[root@hadoop101] ssh-copy-id hadoop100

[root@hadoop101] ssh-copy-id hadoop101

[root@hadoop101] ssh-copy-id hadoop102

Hadoop102:  

生成公钥和私钥

[root@hadoop102] ssh-keygen -t rsa

然后敲(三个回车)

将公钥拷贝到要免密登录的目标机器上

[root@hadoop102] ssh-copy-id hadoop100

[root@hadoop102] ssh-copy-id hadoop101

[root@hadoop102] ssh-copy-id hadoop102

     2.修改hadoop配置文件(修改环境变量)

(1)在hadoop100上的start-dfs.sh 和stop-dfs.sh 文件最上边添加几行数据

先切换路径:

cd /opt/module/hadoop-3.1.3/sbin

在进入编辑模式:

vi start-dfs.sh

添加:

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

保存退出

在进入编辑模式:

vi stop-dfs.sh

添加:

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root


(2)在 start-yarn.sh 和 stop-yarn.sh文件最上方添加几行数据

 进入编辑模式:

vi start-yarn.sh

添加:

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root


保存退出

在进入编辑模式:

vi stop-yarn.sh

添加:

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root 

 3.在hadoop100上修改workers:

cd /opt/module/hadoop-3.1.3/etc/hadoop

                                   进入编辑:

vi workers

添加:

hadoop100
hadoop101
hadoop102

在把上面的修改同步到hadoop101、hadoop102上:

scp -r /opt/module/hadoop-3.1.3/sbin/ hadoop101:/opt/module/hadoop-3.1.3/sbin/ 

scp -r /opt/module/hadoop-3.1.3/sbin/ hadoop102:/opt/module/hadoop-3.1.3/sbin/

scp -r /opt/module/hadoop-3.1.3/etc/hadoop/ hadoop101:/opt/module/hadoop-3.1.3/etc/hadoop/

scp -r /opt/module/hadoop-3.1.3/etc/hadoop/ hadoop102:/opt/module/hadoop-3.1.3/etc/hadoop/

二,配置文件(在/opt/module/hadoop-3.1.3/etc/hadoop目录下)

cd /opt/module/hadoop-3.1.3/etc/hadoop

     1.配置:hadoop-env.sh

在hadoop-env.sh文件中修改JAVA_HOME 路径: (在第54行修改)

export JAVA_HOME=/opt/module/jdk1.8.0_212

     2.配置core-site.xml

进入命令:

vi core-site.xml

添加:





  

  

fs.defaultFS

hdfs://hadoop100:9820



  

  

hadoop.data.dir  

/opt/module/hadoop-3.1.3/data  



2.配置hdfs-site.xml(HDFS文件的配置) 

进入命令:

vi hdfs-site.xml

添加:





  

    dfs.namenode.name.dir
    file://${hadoop.data.dir}/name
  

  
  
    dfs.datanode.data.dir
    file://${hadoop.data.dir}/data
  

  
    
    dfs.namenode.checkpoint.dir
    file://${hadoop.data.dir}/namesecondary
  

  
  
    dfs.client.datanode-restart.timeout
    30
  

  

    dfs.namenode.http-address
    hadoop100:9870


  
  
    dfs.namenode.secondary.http-address
    hadoop102:9868
  

     3.配置yarn-site.xml(YARN文件的配置)

进入命令:

vi yarn-site.xml

添加:

 



    
        yarn.nodemanager.aux-services
        mapreduce_shuffle
    
    
        yarn.resourcemanager.hostname
        hadoop101
    
    
        yarn.nodemanager.env-whitelist
        JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME
    


     4.配置mapred-site.xml(MapReduce文件的配置)

进入命令:

vi mapred-site.xml

添加:





  
    mapreduce.framework.name
    yarn
  

三,集群分发

     1.把module目录拷贝到hadoop101,hadoop102(会运行一下等他结束就行):

切换路径:

cd /opt
scp -r module/ hadoop101:/opt/

scp -r module/ hadoop102:/opt/

     2.把 /etc/profile拷贝到hadoop101,hadoop102

scp -r /etc/profile hadoop101:/etc

scp -r /etc/profile hadoop102:/etc

     3.在hadoop101和hadoop102上分别要进行source /etc/profile

[root@hadoop101 opt]# source /etc/profile

[root@hadoop102 opt]# source /etc/profile

四,分布式集群格式化(分布式集群第一次启动之前要格式化格式化之前,要把三个服务器上的hadoop安装目录下的 data目录和logs目录都删掉)

切换路径:

cd /opt/module/hadoop-3.1.3
[root@hadoop100 opt]# rm -rf data

[root@hadoop100 opt]# rm -rf logs

在指定namenode运行的服务器上执行格式化(namenode指定在hadoop100上运行的):

命令:

hdfs namenode -format

五,集群单点启动 
Hadoop100:

hdfs --daemon start namenode
hdfs --daemon start datanode
yarn --daemon start nodemanager


hadoop101:

yarn --daemon start resourcemanager
hdfs --daemon start datanode
yarn --daemon start nodemanager


hadoop102:

hdfs --daemon start secondarynamenode
hdfs --daemon start datanode
yarn --daemon start nodemanager

启动hdfs相关
 

hdfs --daemon start namenode
hdfs --daemon start datanode


启动yarn相关

yarn --daemon start resourcemanager
yarn --daemon start nodemanager

六,启动停止集群

如果集群上已经启动hadoop相关程序,可以先执行停止。
在hadoop100上执行以下脚本,用来启动hdfs:

[root@hadoop100] start-dfs.sh


在hadoop101上执行以下脚本,用来启动yarn:

[root@hadoop101] start-yarn.sh


停止集群:
在hadoop100上执行以下脚本,用来停止hdfs:

[root@hadoop100] stop-dfs.sh


在hadoop101上执行以下脚本,用来停止yarn:

[root@hadoop101] stop-yarn.sh

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5669221.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存