Hadoop完全分布式配置
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,一、首先说一下,Hadoop有三种运行模式。第一个是独立(或本地)运行模式:无需运行任何守护进程,所有程序都在一个同一个JVM上执行。第二个是伪分布模式:Hadoop守护进程运行在本地机器上,模拟一个
千家信息网最后更新 2025年12月03日Hadoop完全分布式配置
一、首先说一下,Hadoop有三种运行模式。第一个是独立(或本地)运行模式:无需运行任何守护进程,所有程序都在一个同一个JVM上执行。第二个是伪分布模式:Hadoop守护进程运行在本地机器上,模拟一个小规模的集群。第三个是全分布模式,也就是通常所说的完全分布式模式:Hadoop守护进程运行在一个集群上。 下面简单介绍下完全分布式的配置: 首先准备三台机器,系统公共配置部分: 系统信息:[root@hadoop1 ~]# cat /etc/redhat-releaseCentOS release 6.7 (Final)[centos@hadoop1 ~]$ uname -r2.6.32-573.el6.x86_64[root@hadoop1 ~]# uname -mx86_64 公共操作用户:centoscentos用户在/etc/sudoers中的公共配置:[root@hadoop1 ~]# grep centos /etc/sudoerscentos ALL=(ALL) NOPASSWD: ALL 环境变量如下:[root@hadoop1 ~]# tail -16 /etc/profile#javaJAVA_HOME=/home/centos/download/jdkPATH=$JAVA_HOME/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport JAVA_HOMEexport CLASSPATH#hadoopHADOOP_HOME=/home/centos/download/hadoopPATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbinexport PATH 主机IP域名映射如下:[root@hadoop1 ~]# cat /etc/hosts10.0.0.101 hadoop110.0.0.102 hadoop210.0.0.103 hadoop3 主节点IP为:[root@hadoop1 ~]# ifconfig | awk -F '[ :]+' 'NR==2{print $4}'10.0.0.101从节点IP分别为:[root@hadoop2 ~]# ifconfig | awk -F '[ :]+' 'NR==2{print $4}'10.0.0.102[root@hadoop3 ~]# ifconfig | awk -F '[ :]+' 'NR==2{print $4}'10.0.0.103 Java版本[root@hadoop1 ~]# java -versionjava version "1.8.0_65"Java(TM) SE Runtime Environment (build1.8.0_65-b17)Java HotSpot(TM) 64-Bit Server VM (build25.65-b01, mixed mode) Hadoop版本[root@hadoop1 ~]# hadoop versionHadoop 2.7.3Subversionhttps://git-wip-us.apache.org/repos/asf/hadoop.git -r baa91f7c6bc9cb92be5982de4719c1c8af91ccffCompiled by root on 2016-08-18T01:41ZCompiled with protoc 2.5.0From source with checksum2e4ce5f957ea4db193bce3734ff29ff4This command was run using/home/centos/download/hadoop-2.7.3/share/hadoop/common/hadoop-common-2.7.3.jar 二、配置ssh首先在三台机器上的家目录分别执行下述生成密钥对脚本,这样的话,三台机器的centos之间就可以免密码登录、免密码传输文件等操作。[centos@hadoop1 ~]$ ll createssh.sh-rwxr-xr-x 1 centos centos 51 May 14 11:05createssh.sh[centos@hadoop1 ~]$ cat createssh.sh#!/bin/shssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa 然后在三台机器上的家目录分别执行下述分发公钥[centos@hadoop1 ~]$ ll fen.sh-rwxr-xr-x 1 centos centos 142 May 14 12:14fen.sh[centos@hadoop1 ~]$ cat fen.sh#!/bin/shssh-copy-id -i ~/.ssh/id_rsa.pub centos@hadoop1ssh-copy-id -i ~/.ssh/id_rsa.pub centos@hadoop2ssh-copy-id -i ~/.ssh/id_rsa.pub centos@hadoop3 #上述只是在执行的时候会输入yes和系统用户密码,其他在执行的时候就不会再次输入密码了。执行SSH的目的是,比如在配置好完全分布式的时候,主节点会自动吊起从节点的日志并且往里面写入数据,此时SSH的密钥对就起作用了。 #经常碰到的坑,要配置三台机器家目录中.ssh的权限为700,而且要配置家目录中.ssh目录中的authorized_keys权限为644.[centos@hadoop1 ~]$ chmod 700 .ssh[centos@hadoop1 ~]$ chmod 644 .ssh/authorized_keys 三、重点的配置文件内容 #三台机器共同配置[centos@hadoop1 ~]$ grep JAVA_HOME download/hadoop/etc/hadoop/hadoop-env.sh# The only required environment variable isJAVA_HOME. All others are# set JAVA_HOME in this file, so that it iscorrectly defined onexport JAVA_HOME=/home/centos/download/jdk #JAVA环境变量要在这再配置一下 [centos@hadoop1 ~]$ cat download/hadoop/etc/hadoop/core-site.xml fs.defaultFS hdfs://hadoop1 [centos@hadoop1 ~]$ cat download/hadoop/etc/hadoop/hdfs-site.xml dfs.replication 2 #副本数,对应从节点数 [centos@hadoop1 ~]$ cat download/hadoop/etc/hadoop/mapred-site.xml mapreduce.framework.name yarn [centos@hadoop1 ~]$ cat download/hadoop/etc/hadoop/yarn-site.xml yarn.resourcemanager.hostname hadoop1 yarn.nodemanager.aux-services mapreduce_shuffle #注意这里只配置从节点的域名[centos@hadoop1 ~]$ cat download/hadoop/etc/hadoop/slaveshadoop2hadoop3 四、启动hadoop #下述命令只在主节点hadoop1中执行!#首先执行格式化命令[centos@hadoop1 ~]$ hadoop namenode -format #然后启动hadoop[centos@hadoop1 ~]$ start-all.sh #查看启动进程#主节点执行,名称节点只会存在于主节点中,包括文件名称等内容。[centos@hadoop1 ~]$ jps2736 SecondaryNameNode2961 Jps2889 ResourceManager2539 NameNode #从节点执行,数据节点只会存在于从节点,是真正存放数据的地方。[centos@hadoop2 ~]$ jps2322 NodeManager2234 DataNode2380 Jps [centos@hadoop3 ~]$ jps2481 DataNode2646 Jps2569 NodeManager #临时文件都生成在了根目录下的/tmp目录下[centos@hadoop1 ~]$ ll /tmp/total 32drwxrwxr-x 3 centos centos 4096 May 1414:05 hadoop-centos-rw-rw-r-- 1 centos centos 5 May 14 14:06 hadoop-centos-namenode.pid-rw-rw-r-- 1 centos centos 5 May 14 14:06hadoop-centos-secondarynamenode.piddrwxr-xr-x 2 centos centos 4096 May 1414:06 hsperfdata_centosdrwxrwxr-x 3 centos centos 4096 May 1414:06 Jetty_0_0_0_0_50070_hdfs____w2cu08drwxrwxr-x 3 centos centos 4096 May 1414:06 Jetty_0_0_0_0_50090_secondary____y6aanvdrwxrwxr-x 4 centos centos 4096 May 1414:06 Jetty_hadoop1_8088_cluster____.jtly5k-rw-rw-r-- 1 centos centos 5 May 14 14:06yarn-centos-resourcemanager.pid
节点
配置
机器
目录
三台
模式
运行
密码
文件
进程
分布式
数据
时候
用户
系统
内容
变量
名称
命令
域名
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
搭建的网站可以连接到服务器吗
计算机网络技术插本容易吗
建设银行电话客服数据库异常
数据库服务名怎么在电脑查
网络安全人才培养方案
海南 网络安全 招聘
数据库er图矩形菱形椭圆形
数据库取数建个用户名
什么数据库可以检索到会议论文
大连东软网络安全工程师月薪
linux怎么重启服务器
邮件服务器租用
华科云R1服务器端软件
国内服务器配置最高的主机
网络安全系统设置教程
停车软件开发论文
数据库中怎么分组
nacos不配置数据库
服务器水冷管理技术
战锤3全面战争无法访问服务器
网络安全产业理解
手游cf无法连接服务器
网络安全员证书怎么查询
北大网络安全专业排名
网贷是网络安全
易语言如何快速查找数据库
中国联通网络技术研究院王硕
无线传感网络技术期末
我的世界服务器空岛
中通服网络技术深圳分公司