暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Hadoop集群配置

程序媛的新被窝 2021-11-14
455

1、配置方式


hadoop102hadoop103hadoop104
HDFSNameNode、DataNodeDataNodeSecondaryNameNode、DataNode
YARNNodeManagerResourceManager、NodeManagerNodeManager

这个表格表示的是我们的集群规划,为了合理分配资源,NN和2NN和RM不要放在同一台服务器上。

2、更新配置文件

hadoop的自定义配置文件在/opt/module/hadoop-3.1.3/etc/hadoop目录下,分别是core-site.xml,hdfs-site.xml,yarn-site.xml和mapred-site.xml。

2.1 hadoop102上,编辑core-site.xml。

<configuration>
    <!-- 指定namenode的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop102:8020</value>
    </property>
    
    <!-- 指定hadoop数据的存储目录 -->    
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/module/hadoop-1.3.1/data</value>
    </property>
    
    <!-- 配置HDFS网页登录使用的静态用户为ywang,这个property先没有写 -->
    <property>
        <name>hadoop.http.staticuser.user</name>
        <value>ywang</value>
    </property>
</configuration>

复制

2.2 hadoop102上,编辑hdfs-site.xml。

<configuration>
 <!-- nn web端访问地址 -->
    <property>
        <name>dfs.namenode.http-address</name>
        <value>hadoop102:9870</value>
    </property>

    <!-- 2nn web端访问地址 -->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>hadoop104:9868</value>
    </property>
</configuration>

复制

2.3 hadoop102上,编辑yarn-site.xml。

<configuration>     
    <!-- 指定MR走mapreduce_shuffle --> 
    <property> 
        <name>yarn.nodemanager.aux-services</name> 
        <value>mapreduce_shuffle</value> 
    </property> 

    <!-- 指定 ResourceManager 的地址--> 
    <property> 
        <name>yarn.resourcemanager.hostname</name> 
        <value>hadoop103</value> 
    </property> 

    <!-- 环境变量的继承 --> 
    <property> 
        <name>yarn.nodemanager.env-whitelist</name>  <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value> 
    </property> 
</configuration>

复制

2.4 hadoop102上,编辑mapred-site.xml。

<configuration> 
    <!-- 指定 MapReduce 程序运行在 Yarn 上 --> 
    <property> 
        <name>mapreduce.framework.name</name> 
        <value>yarn</value> 
    </property> 
</configuration> 

复制

然后利用xsync将/opt/module/hadoop-3.1.3/etc/hadoop/ 进行到hadoop103、hadoop104的分发。

2、群起集群与测试

2.1 修改启动配置文件

在/opt/module/hadoop-3.1.3/etc/hadoop/目录下修改workers,它类似一个启动集群的配置文件,修改为

hadoop102
hadoop103
hadoop104

复制

注意这里不要有多余的空格、tab或者空行!然后利用xsync将/opt/module/hadoop-3.1.3/etc/hadoop/workers 进行到hadoop103、hadoop104的分发。

2.2 启动集群

2.2.1 初始化

如果是初次启动,必须先进行初始化操作,初始化命令:

ywang@hadoop102 hadoop-3.1.3]$ hdfs namenode -format

复制

出现这种输出即为初始化成功,会在下面的目录生成的VERSION中出现版本信息

[ywang@hadoop102 current]$ pwd
/opt/module/hadoop-3.1.3/data/dfs/name/current
[ywang@hadoop102 current]$ ls
fsimage_0000000000000000000  fsimage_0000000000000000000.md5  seen_txid  VERSION
[ywang@hadoop102 current]$ cat VERSION 
#Sun Nov 14 11:19:19 CST 2021
namespaceID=1358991188
clusterID=CID-8f5933cb-7d9c-437b-aa09-dc9987a813a3
cTime=1636859959897
storageType=NAME_NODE
blockpoolID=BP-1453840589-192.168.10.102-1636859959897
layoutVersion=-64
[ywang@hadoop102 current]$ 

复制

2.2.2 启动HDFS(102)

[ywang@hadoop102 hadoop-3.1.3]$ ./sbin/start-dfs.sh 
Starting namenodes on [hadoop102]
Starting datanodes
hadoop104: WARNING: /opt/module/hadoop-3.1.3/logs does not exist. Creating.
hadoop103: WARNING: /opt/module/hadoop-3.1.3/logs does not exist. Creating.
Starting secondary namenodes [hadoop104]
[ywang@hadoop102 hadoop-3.1.3]$ 

复制

在三台服务器中jps后,会出现与 配置方式图 一致的配置信息,说明配置成功

[ywang@hadoop102 hadoop-3.1.3]$ jps
5762 DataNode
6034 Jps
5589 NameNode

[ywang@hadoop103 ~]$ jps
4365 DataNode
4559 Jps

[ywang@hadoop104 ~]$ jps
4240 DataNode
4529 Jps
4339 SecondaryNameNode

复制

另外,在web中 http://hadoop102:9870 也会出现相应的HDFS上存储的数据信息

2.2.3 启动YARN(103)

[ywang@hadoop103 hadoop-3.1.3]$ ./sbin/start-yarn.sh 
Starting resourcemanager
resourcemanager is running as process 4891.  Stop it first.
Starting nodemanagers
hadoop103: sign_and_send_pubkey: signing failed: agent refused operation
hadoop103: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
hadoop102: sign_and_send_pubkey: signing failed: agent refused operation
hadoop102: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
hadoop104: sign_and_send_pubkey: signing failed: agent refused operation
hadoop104: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
[ywang@hadoop103 hadoop-3.1.3]$ 

复制

应该是ssh中公钥和私钥的问题,bug太多,下期再解决吧。


查看更多Hadoop系列文章

[1] 从头学习Hadoop

 

文章转载自程序媛的新被窝,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论