Hadoop完全分布式配置
发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,一、首先说一下,Hadoop有三种运行模式。第一个是独立(或本地)运行模式:无需运行任何守护进程,所有程序都在一个同一个JVM上执行。第二个是伪分布模式:Hadoop守护进程运行在本地机器上,模拟一个
千家信息网最后更新 2024年09月22日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[centos@hadoop1 ~]$ cat download/hadoop/etc/hadoop/hdfs-site.xml fs.defaultFS hdfs://hadoop1 [centos@hadoop1 ~]$ cat download/hadoop/etc/hadoop/mapred-site.xml dfs.replication 2 #副本数,对应从节点数[centos@hadoop1 ~]$ cat download/hadoop/etc/hadoop/yarn-site.xml mapreduce.framework.name yarn #注意这里只配置从节点的域名[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 yarn.resourcemanager.hostname hadoop1 yarn.nodemanager.aux-services mapreduce_shuffle
节点
配置
机器
目录
三台
模式
运行
密码
文件
进程
分布式
数据
时候
用户
系统
内容
变量
名称
命令
域名
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
上海微梦创科网络技术有限公司
上海众人网络安全待遇怎么样
电信网络安全宣传口号
东莞网络安全绘画
萌芽网络技术有限公司怎么样
高校网络安全保卫处
青岛数据分析软件开发
连续数据库的用途有哪些
mpp数据库数据倾斜
加强网络安全信息采集
深圳市悦时代网络技术有限
常州网络软件开发供应商
windows 域服务器
千年沧海服务器
数据库格式能转换吗
ios 数据库开发工具
苏州比较好的软件开发
公司内部网络安全吗
网络安全防护产品包括哪些
数据库运行管理的要求
数据库中的整数数值宽度
计算机和网络技术的弊端
山东服务器机柜有哪些
网络安全意识形态分析报告
西安电子科技大学网络安全就业率
软件开发发展建议
重庆领赞网络技术
金龙数据库
物流数据库包含哪些内容
如何设置两个字段为数据库主键