hadoop 集群搭建-suse linux 11

好久都没写了啊。感觉自己都不像是一个搞技术都了。
来个存货吧!

hadoop 集群搭建

3台机器 suse 系统

规划

IP 主机名 hostname hadoop角色
10.96.91.93 namenode93 NameNode、SecondaryNameNode 、ResourceManage、 DataNode 、NodeManager
10.96.91.129 datanode129 DataNode NodeManager
10.96.91.130 datanode130 DataNode NodeManager
创建 hadoop 用户

useradd -u 501 -g users -d /home/hadoop -s /bin/bash hadoop
mkdir /home/hadoop
chown -R hadoop:users /home/hadoop
passwd hadoop 密码设置
方便记忆,我设置到用户名和密码一样

修改主机名

文件位置 /etc/HOSTNAME

vim /etc/HOSTNAME文件
/etc/rc.d/boot.localnet start

修改host文件 !三台机器都要修改!

文件位置 /etc/hosts

10.96.91.93 namenode93
10.96.91.129 datanode129
10.96.91.130 datanode130
配置ssh免密码登录

ssh-keygen -t rsa
.ssh目录下

cat id_rsa.pub >> authorized_keys
把自己本机公钥发送到目标机器

ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop@datanode129
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop@datanode130
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop@namenode93
配置环境

文件位置 /etc/profile

export JAVA_HOME=/home/hadoop/jdk1.8.0_191
export JRE_HOME=/home/hadoop/jdk1.8.0_191/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH

export HADOOP_HOME=/home/hadoop/hadoop-2.9.1
export PATH="$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH"
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
最重要到-----Hadoop文件配置

创建hdfs文件夹

文件夹不是必须这样创建,但是,一定要和配置文件对应上。 创建后如下:

/home/hadoop/hadoop-2.9.1/hdfs
/home/hadoop/hadoop-2.9.1/hdfs/tmp
/home/hadoop/hadoop-2.9.1/hdfs/name
/home/hadoop/hadoop-2.9.1/hdfs/data
进入配置目录

cd /home/hadoop/hadoop-2.9.1/etc/hadoop
配置core-site.xml

在<configuration></configuration>中加入

<property>
   <name>hadoop.tmp.dir</name>
   <value>/home/hadoop/hadoop-2.9.1/hdfs/tmpp</value>
   <description>A base for other temporary directories.</description>
 </property>
 <property>
  <name>io.file.buffer.size</name>
   <value>131072</value>
 </property>
 <property>
   <name>fs.defaultFS</name>
   <value>hdfs://namenode93:9000</value>
 </property>

注意:hadoop.tmp.dir的value和我们之前创建的/home/hadoop/hadoop-2.9.1/hdfs/tmp路径要一致

配置 hadoop-env.sh文件

将JAVA_HOME文件配置为本机JAVA_HOME路径

export JAVA_HOME=/home/hadoop/jdk1.8.0_191
配配置 yarn-env.sh

将其中的JAVA_HOME修改为本机JAVA_HOME路径

export JAVA_HOME=/home/hadoop/jdk1.8.0_191
配置hdfs-site.xml

在<configuration></configuration>中加入

<property>
 <name>dfs.replication</name>
   <value>2</value>
 </property>
 <property>
   <name>dfs.namenode.name.dir</name>
   <value>file:/home/hadoop/hadoop-2.9.1/hdfs/name</value>
   <final>true</final>
</property>
 <property>
   <name>dfs.datanode.data.dir</name>
   <value>file:/home/hadoop/hadoop-2.9.1/hdfs/data</value>
   <final>true</final>
 </property>
 <property>
  <name>dfs.namenode.secondary.http-address</name>
   <value>namenode93:9001</value>
 </property>
 <property>
   <name>dfs.webhdfs.enabled</name>
   <value>true</value>
 </property>
 <property>
   <name>dfs.permissions</name>
   <value>false</value>
 </property>

注意:dfs.namenode.name.dir和dfs.datanode.data.dir的value和之前创建的/hdfs/name和/hdfs/data路径一致

配置mapred-site.xml

复制mapred-site.xml.template文件,并命名为mapred-site.xml

cp mapred-site.xml.template mapred-site.xml
配置 mapred-site.xml,在标签<configuration>中添加

 <property>
   <name>mapreduce.framework.name</name>
   <value>yarn</value>
 </property>

配置yarn-site.xml

在<configuration>标签中添加以

<property>
 <name>yarn.resourcemanager.address</name>
   <valu>namenode93:18040</value>
 </property>
 <property>
   <name>yarn.resourcemanager.scheduler.address</name>
   <value>namenode93:18030</value>
 </property>
 <property>
   <name>yarn.resourcemanager.webapp.address</name>
   <value>namenode93:18088</value>
 </property>
 <property>
   <name>yarn.resourcemanager.resource-tracker.address</name>
   <value>namenode93:18025</value>
 </property>
 <property>
   <name>yarn.resourcemanager.admin.address</name>
   <value>namenode93:18141</value>
 </property>
 <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
 </property>
 <property>
     <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
     <value>org.apache.hadoop.mapred.ShuffleHandler</value>
 </property>

配置slaves 文件

把原本的localhost删掉,改为

namenode93
datanode129
datanode130
将hadoop-2.9.1文件夹传到其他虚拟机上

scp -r hadoop-2.9.1 hadoop@datanode129:~/
scp -r hadoop-2.9.1 hadoop@datanode130:~/
注意:hadoop是虚拟机的用户名,

初始化hadoop 在namenode机器上

hdfs namenode -format

启动Hadoop

start-dfs.sh
start-yarn.sh
或者

start-all.sh
停止Hadoop

stop-yarn.sh
stop-dfs.sh
或者

stop-all.sh
查看命令

可以查看到当前登录机器到角色

jps
jps查询结果如下

hadoop@namenode93:~> jps
15314 SecondaryNameNode
15484 ResourceManager
14956 NameNode
15116 DataNode
15612 NodeManager
16781 Jps

129 130两个机器是 DataNode,在Hadoop到配置里,可以灵活配置各个机器角色 详细到配置官网上有 jps查询结果如下

hadoop@datanode130:~> jps
10233 NodeManager
10365 Jps
10110 DataNode
到这里,三台机器搭建的Hadoop集群就组建完毕了。

用自带的样例测试hadoop集群跑任务

使用命令

hadoop jar /home/hadoop/hadoop-2.9.1/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.1.jar pi 10 10
用来求圆周率,pi是类名,第一个10表示Map次数,第二个10表示随机生成点的次数

最后出现结果

Job Finished in 32.014 seconds
Estimated value of Pi is 3.20000000000000000000
ok,集群测试可用。 网上还有测试统计字数到例子,有兴趣可以尝试一下

HDFS管理界面

http://10.96.91.93:50070/

yarn管理界面

http://10.96.91.93:18088/

其他suse命令

查看版本

lsb_release -d
SUSE11下: 关闭防

service SuSEfirewall2_setup stop
service SuSEfirewall2_init stop
取消开机启动防火墙:

chkconfig SuSEfirewall2_setup off
chkconfig SuSEfirewall2_init off
查看端口情况

netstat -ntpl
参考资料

CentOs6搭建Hadoop环境,这是一个网上比较好的例子。尤其是Hadoop HA安装这部分比较全面。
Hadoop配置文件参数详解,这个只是参考,Hadoop版本不一样可能使用到配置也有一些差别。具体查看项目对应版本的配置部分文档。
Apache Hadoop 2.9.1项目

原文地址:https://blog.51cto.com/3409736/2354531

时间: 2024-10-10 00:22:20

hadoop 集群搭建-suse linux 11的相关文章

三节点Hadoop集群搭建

1. 基础环境搭建 新建3个CentOS6.5操作系统的虚拟机,命名(可自定)为masternode.slavenode1和slavenode2.该过程参考上一篇博文CentOS6.5安装配置详解 2.Hadoop集群搭建(以下操作中三个节点相同的地方就只给出主节点的截图,不同的才给出所有节点的截图)   2.1 系统时间同步 使用date命令查看当前系统时间 系统时间同步 [[email protected] ~]# cd /usr/share/zoneinfo/ [[email protec

完全分布式Hadoop集群搭建

学习了这么久hadoop,都没有搭过集群,是不合格的.这次搭建完,细扣具体的Job运行情况,日志信息,对Hadoop了解更深了.后面也要陆续搭建分布式flume,kafka,hbase,mysql来完成最终的离线批处理分析项目. 搭建步骤 虚拟机环境准备(IP地址.主机名.新用户.防火墙.SSH免密访问) 安装jdk 安装hadoop 配置hadoop文件 虚拟机环境准备 用VMware配置三台Ubuntu 18.04虚拟机.配置如下: 内存4GB 处理器4 硬盘20GB VMware Tool

Hadoop集群搭建步骤

实验性操作是在虚拟机里进行的,除了搭建hadoop本身的操作之外,遇到的其它问题总结如下: 1. 虚拟机挂载windows磁盘: 添加硬件,要保证该硬件此时没有被读写访问等,因为挂载后,该磁盘在宿主机上就不能用了.启动虚拟机linux,执行 fdisk –l 查看windows磁盘的分区,如/dev/sdb2,然后执行挂载命令: mount /dev/sdb2 /mnt/win/ 然后就可以到/mnt/win目录下访问磁盘上的内容了 2. hadoop启动时如果报错,提示JAVA_HOME is

Hadoop集群搭建文档

  环境: Win7系统装虚拟机虚拟机VMware-workstation-full-9.0.0-812388.exe Linux系统Ubuntu12.0.4 JDK                jdk-7u17-linux-i586.tar.gz 搭建步骤: 首先在win系统装虚拟机,执行VMware-workstation-full-9.0.0-812388.exe: 其次需要在虚拟机上装Ubuntu12.0.4: 安装完成Ubuntu12.0.4之后,需要安装JDK,(注意:安装JDK需

Hadoop学习之路(四)Hadoop集群搭建和简单应用

概念了解 主从结构:在一个集群中,会有部分节点充当主服务器的角色,其他服务器都是从服务器的角色,当前这种架构模式叫做主从结构. 主从结构分类: 1.一主多从 2.多主多从 Hadoop中的HDFS和YARN都是主从结构,主从结构中的主节点和从节点有多重概念方式: 1.主节点 从节点 2.master slave 3.管理者 工作者 4.leader follower Hadoop集群中各个角色的名称: 服务 主节点 从节点 HDFS NameNode DataNode YARN Resource

Hadoop学习之路(五)Hadoop集群搭建模式和各模式问题

分布式集群的通用问题 当前的HDFS和YARN都是一主多从的分布式架构,主从节点---管理者和工作者 问题:如果主节点或是管理者宕机了.会出现什么问题? 群龙无首,整个集群不可用.所以在一主多从的架构中都会有一个通用的问题: 当集群中的主节点宕机之后,整个集群不可用.这个现象叫做:单点故障.SPOF 单点故障讲述的概念有两点 1.如果说宕机的那个节点是从节点,那么整个集群能够继续运行,并且对外提供正常的服务. 2.如果说宕机的那个节点是主节点,那么整个集群就处于宕机状态. 通用的解决方案:高可用

大数据-Hadoop生态(4)-Hadoop集群搭建

准备工作 开启全部三台虚拟机,确保hadoop100的机器已经配置完成 脚本 操作hadoop100 新建一个xsync的脚本文件,将下面的脚本复制进去 vim xsync #这个脚本使用的是rsync命令而不是scp命令,是同步而非覆盖文件,所以仅仅会同步过去修改的文件.但是rsync并不是一个原生的Linux命令,需要手动安装.如果没有,请自行安装 #!/bin/bash #1 获取输入参数个数,如果没有参数,直接退出 pcount=$# if ((pcount==0)); then ech

hadoop集群搭建前的准备

1. 修改主机名: [[email protected] home]# sudo vi /etc/sysconfig/network 修改主机名: 2. 设置系统默认启动级别: [[email protected] home]#vi /etc/inittab改默认启动级别,3 是多用户模式,并且不启动图形界面 3. 配置 hadoop 用户 sudoer 权限: 这里使用普通用户hadoop,对Linux进行操作:创建hadoop用户:[[email protected] home]# user

Hadoop集群搭建(自己电脑)

学习搭建方法,搭建3台机器 使用安装包: 将上一篇Linux搭建的虚拟机作为主节点 1.将主节点挂起/关闭,找到主节点所在目录 2.复制2个主节点文件夹并改名slave1和slave2 3.在虚拟机中加载新建的两个文件夹作为新的虚拟机并运行和重命名 4.slave1 → su → cd /etc/sysconfig/network-scripts/ → ls → vim ifcfg-eth0 修改IP地址 5.重启网卡 : /etc/init.d/network restart Linux解决D