由于要近期使用hadoop等进行相关任务执行,操作linux时候就多了
以前只在linux上配置J2EE项目执行环境,无非配置下jdk,部署tomcat,再通过docker或者jenkins自动部署上去
看下进程,复制粘贴删除等基本操作,很多东西久了不用就忘了,所有写个demo巩固下曾经的linux知识
后续会有hadoop等主流的大数据相关环境的搭建及使用
---------------------------------------------------------------------------------------------------------------------------------------------------------
这次讲hadoop 2.7.4环境搭建
本次需要三个节点 操作用户均为root
192.168.0.80 master
192.168.0.81 slave1
192.168.0.82 slave2
1.按照 Linux巩固记录(1) J2EE开发环境搭建及网络配置 配置好三台虚拟机的网络和jdk 并能互通(都关掉防火墙)
2.更改80虚拟机hostname为master,81为slave1,82为slave2
vi /etc/sysconfig/network
以80为例:删除localhost 增加 HOSTNAME=master
3.修改三台虚拟机的hosts, 三台虚拟机一样
vi /etc/hosts
192.168.0.80 master
192.168.0.81 slave1
192.168.0.82 slave2
4.修改sshd配置
vi /etc/ssh/sshd_config
#放开注释
RSAAuthentication yes
PubkeyAuthentication yes
5.三台虚拟机全部重启 shutdown -r now
--------------------------------------------------------------
6.ssh key配置,
cd ~/.ssh #(.ssh是目录,如果没有,执行$ ssh xxxxxx)
#master
ssh master
ssh-keygen –t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
scp -r root@slave1:~/.ssh/id_rsa.pub slave1.pub
scp -r root@slave2:~/.ssh/id_rsa.pub slave2.pub
cat ~/.ssh/slave2.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/slave1.pub >> ~/.ssh/authorized_keys
#slave1
ssh slave1
ssh-keygen –t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
scp -r root@master:~/.ssh/id_rsa.pub master.pub
scp -r root@slave2:~/.ssh/id_rsa.pub slave2.pub
cat ~/.ssh/slave2.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/master.pub >> ~/.ssh/authorized_keys
#slave2
ssh slave2
ssh-keygen –t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
scp -r root@master:~/.ssh/id_rsa.pub master.pub
scp -r root@slave1:~/.ssh/id_rsa.pub slave1.pub
cat ~/.ssh/slave1.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/master.pub >> ~/.ssh/authorized_keys
配置完毕后可以无密码登录 如master中到salve1 ssh slave1
[root@master /]# ssh slave1
Last login: Wed Aug 30 21:34:51 2017 from slave2
[root@slave1 ~]#
hadoop配置只需要在master上进行,配置完成后复制到slave上即可
7. 下载hadoop 2.7.4压缩包到master /home下并解压 重命名为 hadoop-2.7.4 tar -xzvf xxxxxx /home/hadoop-2.7.4
并设置hadoop环境变量
vi /etc/profile
export HADOOP_HOME=/home/hadoop-2.7.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
8.
vi /home/hadoop-2.7.4/etc/hadoop/hadoop-env.sh 设置JAVA_HOME
vi /home/hadoop-2.7.4/etc/hadoop/mapred-env.sh 设置JAVA_HOME
9 修改 /home/hadoop-2.7.4/etc/hadoop/core-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> <description>设定namenode的主机名及端口(建议不要更改端口号)</description> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> <description> 设置缓存大小 </description> </property> <property> <name>hadoop.tmp.dir</name> <value>file:/home/hadoop-2.7.4/tmp</value> <description> 存放临时文件的目录 </description> </property> <property> <name>hadoop.security.authorization</name> <value>false</value> </property> </configuration>
10 修改 /home/hadoop-2.7.4/etc/hadoop/hdfs-site.xml
<configuration> <property> <name>dfs.namenode.name.dir</name> <value>file:/home/hadoop-2.7.4/hdfs/name</value> <description> namenode 用来持续存放命名空间和交换日志的本地文件系统路径 </description> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/home/hadoop-2.7.4/hdfs/data</value> <description> DataNode 在本地存放块文件的目录列表,用逗号分隔 </description> </property> <property> <name>dfs.replication</name> <value>2</value> <description> 设定 HDFS 存储文件的副本个数,默认为3 </description> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration>
11 修改 /home/hadoop-2.7.4/etc/hadoop/mapred-site.xml
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> <final>true</final> </property> <property> <name>mapreduce.jobtracker.http.address</name> <value>master:50030</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>master:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>master:19888</value> </property> <property> <name>mapred.job.tracker</name> <value>http://master:9001</value> </property> </configuration>
12 修改 /home/hadoop-2.7.4/etc/hadoop/yarn-site.xml
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <name>yarn.resourcemanager.address</name> <value>master:8032</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>master:8030</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>master:8031</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>master:8033</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>master:8088</value> </property> </configuration>
13 创建对应的文件夹 mkdir -p logs (其实可以先创建好了文件夹再复制,文件夹多了不影响)
在每个节点上创建数据存储目录/home/hadoop-2.7.4/hdfs 用来存放集群数据。
在主节点node上创建目录/home/hadoop-2.7.4/hdfs/name 用来存放文件系统元数据。
在每个从节点上创建目录/home/hadoop-2.7.4/hdfs/data 用来存放真正的数据。
所有节点上的日志目录为/home/hadoop-2.7.4/logs
所有节点上的临时目录为/home/hadoop-2.7.4/tmp
14复制配置好的配置到slave节点
scp -r /home/hadoop-2.7.4 root@slave1:/home/hadoop-2.7.4
scp -r /home/hadoop-2.7.4 root@slave2:/home/hadoop-2.7.4
15 在master节点上配置hadoop salve配置文件 增加节点
vi /home/hadoop-2.7.4/etc/hadoop/slaves
增加
salve1
slave2
16格式化namenode和datanode并启动,(在master上执行就可以了 不需要在slave上执行)
/home/hadoop-2.7.4/bin/hadoop namenode -format
/home/hadoop-2.7.4/bin/hadoop datanode -format
/home/hadoop-2.7.4/sbin/start-all.sh
17 通过jps命令查看是否启动成功
[root@master ~]# ssh master
Last login: Sat Sep 2 00:47:50 2017 from slave1
[root@master ~]# jps
9187 Jps
3221 ResourceManager
3062 SecondaryNameNode
2856 NameNode
[root@master ~]# ssh slave1
Last login: Sat Sep 2 00:25:55 2017 from master
[root@slave1 ~]# jps
6044 Jps
2685 NodeManager
2590 DataNode
[root@slave1 ~]# ssh slave2
Last login: Wed Aug 30 21:34:38 2017 from master
j[root@slave2 ~]# jps
2679 NodeManager
5994 Jps
2590 DataNode
[root@slave2 ~]#
如果启动异常,一定要仔细看log并修正配置
相关推荐
Hadoop 2.7.4是Hadoop发展过程中的一个重要版本,它提供了许多增强特性和稳定性改进,使得大规模数据处理更加高效和可靠。 `hadoop-2.7.4.tar.gz`包含了构建和运行Hadoop集群所需的所有组件和配置,是学习和实践...
在标题中提到的“hadoop2.7.4 hadoop.dll包括winutils.exe”,指的是在Windows环境下使用Hadoop时的一些关键组件。 `hadoop.dll`是Hadoop在Windows平台上的动态链接库文件,它包含了运行Hadoop服务所需的部分核心...
5. **Windows安装与配置**:虽然Hadoop最初主要针对Linux环境,但2.7.4版本已经支持Windows。安装时需设置环境变量,配置Hadoop配置文件(如core-site.xml、hdfs-site.xml、yarn-site.xml等),并进行格式化NameNode...
在Linux环境下编译Hadoop 2.7.4是一个涉及多步骤的过程,它不仅需要对Hadoop本身有深入的理解,还要求对Linux操作系统和相关工具如Ant、Maven以及Protobuf有一定的熟悉。以下是对这个过程的详细阐述: 首先,我们...
经本人亲自测试,本地可用,hadoop-eclipse-plugin-2.7.4.jar放到eclipse的插件目录,hadoop.dll 请放到system32目录,eclipse版本我本地下载的是Oxygen.1a Release (4.7.1a)。
### Hadoop 2.7.4 与 Spark 2.2.1 集群环境搭建详解 #### 一、概述 本文档旨在提供一份关于如何在三台虚拟机上搭建基于Hadoop 2.7.4 和 Spark 2.2.1 的大数据集群环境的详细指南。该文档适合于那些希望了解并实践...
在Windows 10环境下搭建和操作Hadoop 2.7.4集群,主要涉及两个核心组件:Hadoop Distributed File System (HDFS) 和 MapReduce。本文将详细介绍如何在Win10上配置Hadoop环境,使用Eclipse进行Java API开发,并进行...
总结来说,"hadoop2.7.4的eclipse插件下载"提供的文件可以帮助开发者在Eclipse Mars 2环境下无缝地与Hadoop2.7.4进行交互,提高开发效率。通过使用这个插件,你可以更加便捷地进行Hadoop应用的开发、测试和部署,...
在Windows 7 64位环境下编译Hadoop 2.7.4版本是一项技术挑战,因为Hadoop通常是为Linux环境设计的。本篇文章将深入探讨如何在Windows上进行这一操作,并分享编译过程中的关键步骤和知识点。 首先,理解Hadoop的架构...
本文将深入探讨Hadoop 2.7.4在Windows 64位环境下的编译bin目录以及如何进行本地配置。 Hadoop最初设计时主要考虑的是Linux环境,但随着Windows平台上的需求增加,Hadoop也提供了在Windows上的支持。Hadoop在...
1. **winutils.exe**: 这是Hadoop为Windows系统定制的一个实用工具,它提供了与Linux环境下`hadoop`命令行工具类似的功能,如配置HDFS(Hadoop Distributed File System)操作、设置Hadoop环境变量、管理HDFS用户...
不过,通过一些额外的配置,我们可以在Windows上搭建一个本地Hadoop开发环境。 首先,你需要下载Hadoop 2.7.4的二进制发行版,并解压到你选择的目录。这个压缩包中的文件应该包括了Hadoop的核心组件、MapReduce框架...
Hadoop2.7.4版本通过编译源码的方式支持了Snappy压缩算法。Snappy是一种由Google开发的压缩库,旨在提供高速压缩和解压缩能力,同时也保证了一定的压缩率。在大数据场景中,选择合适的压缩算法对于提高整体系统的...
2. **Hadoop on Windows**:在Windows环境下安装Hadoop通常比在Linux上复杂,因为Hadoop最初是为Linux设计的。不过,通过使用预编译的bin包,用户可以直接在Windows上运行Hadoop的命令行工具,无需编译源代码。 3. ...
Hadoop 2.7.4 API 帮助文档 ,这份帮助文档很全,包括了源码等等,你值得拥有。
hadoop2.7.4hadoop2.7.4hadoop2.7.4hadoop2.7.4hadoop2.7.4hadoop2.7.4hadoop2.7.4hadoop2.7.4hadoop2.7.4hadoop2.7.4
标题中的“Hadoop 2.7.4 Windows 7 64位 编译bin(包含winutils.exe, hadoop.dll等)”指的是一个专为Windows ...对于初学者或者开发者来说,这是一个宝贵的资源,可以帮助他们在非Linux环境中快速搭建Hadoop开发环境。
需要注意的是,虽然Windows上的Hadoop环境搭建可能比Linux更复杂,但通过编译和使用自定义的winutils.exe和hadoop.dll,可以在Windows环境中进行Hadoop相关的开发和测试工作。这对于开发者来说是一个重要的能力,...
解决hadoop版本不同而引起的org.apache.hadoop.io.nativeio.NativeIO$Windows.createDirectoryWithMode0(Ljava/lang/String;I)V, Could not locate executable null \bin\winutils.exe in the hadoop binaries