1.安装总览
- 软件版本
hadoop-2.7.2
spark-2.0.1-bin-hadoop2.7
scala-2.11.8
sqoop-1.4.6
mysql-5.6.15
hbase-0.98.24-hadoop2
apache-hive-2.1.1
apache-kylin-2.0.0
zookeeper-3.3.6
apache-flume-1.7.0-bin
- 安装规划
机器IP | 主机名称 | 组件 | 用户 | 密码 |
10.112.171.47 | vm-10-112-171-47 |
NameNode ResourceManager, spark, scala |
hadoop | hadoop |
10.112.171.48 | vm-10-112-171-48 |
Secondary NameNode,spark, scala |
hadoop | hadoop |
10.112.171.49 | vm-10-112-171-49 |
DataNode 、 hive 、mysql, hbase,zk,kylin ,spark, scala |
hadoop | hadoop |
10.112.171.50 | vm-10-112-171-50 |
DataNode 、 hive 、 hbase,zk,sqoop ,flume ,spark, scala |
hadoop |
hadoop |
10.112.171.51 | vm-10-112-171-51 |
DataNode 、 hive 、 hbase,zk,spark, scala |
hadoop | hadoop |
- 预期目标
使用flume采集日志数据到hdfs,利用spark等工具进行日志分析
使用sqoop从oracle,mysql数据库导入数据到hdfs,利用kylin进行统计分析
2.hadoop安装
- 在各台机器上创建用户
#创建用户并指定主目录 useradd -d /home/hadoop -m hadoop #设置登录密码 passwd hadoop #设置hadoop目录及文件的修改权限 chmod 777 /home/hadoop #更改hadoop目录的所属用户和所属组 chown -R hadoop:hadoop /home/hadoop #设置hadoop登录 cp -a /etc/skel/. /home/hadoop/ #以hadoop用户登录各台机器,创建如下目录 cd /home/hadoop/ mkdir tmp mkdir journal
- 在各台机器上设置环境变量
vi /etc/profile # 在结尾处添加HADOOP环境变量,类似于JAVA_HOME的配置 export HADOOP_HOME=/home/hadoop/hadoop-2.7.2 export PATH=$PATH:$HADOOP_HOME/bin # 刷新配置文件 source /etc/profile
- 在各台机器上配置host
vi /etc/hosts #在后边追加 10.112.171.47 vm-10-112-171-47 10.112.171.48 vm-10-112-171-48 10.112.171.49 vm-10-112-171-49 10.112.171.50 vm-10-112-171-50 10.112.171.51 vm-10-112-171-51
- 在各台机器上安装hadoop-2.7.2
首先在10.112.171.47节点上安装hadoop-2.7.2,安装目录为:/home/hadoop/hadoop-2.7.2 ,进入目录/home/hadoop/hadoop-2.7.2/etc/hadoop,修改hdfs-site.xml文件:
<configuration> <!--指定hdfs的nameservice为CashierHadoop,需要和core-site.xml中的保持一致 --> <property> <name>dfs.nameservices</name> <value>CashierHadoop</value> </property> <!-- CashierHadoop下面有两个NameNode,分别是nn1,nn2 --> <property> <name>dfs.ha.namenodes.CashierHadoop</name> <value>nn1,nn2</value> </property> <!-- nn1的RPC通信地址 --> <property> <name>dfs.namenode.rpc-address.CashierHadoop.nn1</name> <value>vm-10-112-171-47:9000</value> </property> <!-- nn1的http通信地址 --> <property> <name>dfs.namenode.http-address.CashierHadoop.nn1</name> <value>vm-10-112-171-47:50070</value> </property> <!-- nn2的RPC通信地址 --> <property> <name>dfs.namenode.rpc-address.CashierHadoop.nn2</name> <value>vm-10-112-171-48:9000</value> </property> <!-- nn2的http通信地址 --> <property> <name>dfs.namenode.http-address.CashierHadoop.nn2</name> <value>vm-10-112-171-48:50070</value> </property> <!-- 指定NameNode的元数据在JournalNode上的存放位置 --> <property> <name>dfs.namenode.shared.edits.dir</name> <value>qjournal://vm-10-112-171-49:8485;vm-10-112-171-50:8485;vm-10-112-171-51:8485/CashierHadoop</value> </property> <!-- 指定JournalNode在本地磁盘存放数据的位置 --> <property> <name>dfs.journalnode.edits.dir</name> <value>/app/hadoop/journal</value> </property> <!-- 开启NameNode失败自动切换 --> <property> <name>dfs.ha.automatic-failover.enabled</name> <value>true</value> </property> <!-- 配置失败自动切换实现方式 --> <property> <name>dfs.client.failover.proxy.provider.CashierHadoop</name> <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> </property> <!-- 配置隔离机制 --> <property> <name>dfs.ha.fencing.methods</name> <value>sshfence</value> </property> <!-- 使用隔离机制时需要ssh免登陆 --> <property> <name>dfs.ha.fencing.ssh.private-key-files</name> <value>/app/hadoop/.ssh/id_rsa</value> </property> <!-- NFS挂载 --> <property> <name>nfs.dump.dir</name> <value>/tmp/.hdfs-nfs</value> </property> <property> <name>nfs.rtmax</name> <value>1048576</value> <description>This is the maximum size in bytes of a READ request supported by the NFS gateway. If you change this, make sure you also update the nfs mount's rsize(add rsize= # of bytes to the mount directive).</description> </property> <property> <name>nfs.wtmax</name> <value>65536</value> <description>This is the maximum size in bytes of a WRITE request supported by the NFS gateway. If you change this, make sure you also update the nfs mount's wsize(add wsize = # of bytes to the mount directive).</description> </property> <property> <name>nfs.exports.allowed.hosts</name> <value>* rw</value> <description>allow All Hosts read and write</description> </property> </configuration>
- 修改core-site.xml文件(zk安装机器见总体规划)
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://CashierHadoop</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/app/hadoop/tmp</value> </property> <property> <name>ha.zookeeper.quorum</name> <value>10.112.171.49:2181,10.112.171.50:2181,10.112.171.51:2181</value> </property> <property> <name>nfs.superuser</name> <value>hadoop</value> </property> <property> <name>hadoop.proxyuser.root.groups</name> <value>*</value> <description>Allow the superuser oozie to impersonate any members of the group group1 and group2</description> </property> <property> <name>hadoop.proxyuser.root.hosts</name> <value>*</value> <description>The superuser can connect only from host1 and host2 to impersonate a user</description> </property> <property> <name>hadoop.proxyuser.hadoop.groups</name> <value>hadoop</value> <description>Allow the superuser oozie to impersonate any members of the group group1 and group2</description> </property> <property> <name>hadoop.proxyuser.hadoop.hosts</name> <value>10.112.171.49</value> <description>The superuser can connect only from host1 and host2 to impersonate a user</description> </property> </configuration>
- 修改mapred-site.xml文件
<configuration> <!-- 指定mr框架为yarn方式 --> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
- 修改yarn-site.xml文件
<configuration> <!-- 指定resourcemanager地址 --> <property> <name>yarn.resourcemanager.hostname</name> <value>vm-10-112-171-47</value> </property> <!-- 指定nodemanager启动时加载server的方式为shuffle server --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
- 修改slaves文件
vm-10-112-171-49 vm-10-112-171-50 vm-10-112-171-51
- 设置管理节点和其他节点之间各台机器包括本机相互信任(非常重要)
#在10.112.171.47机器上运行如下命令生成公钥和私钥 ssh-keygen -t rsa #将公钥copy到其他机器节点上,以下命令单条执行 ssh-copy-id -i vm-10-112-171-47 ssh-copy-id -i vm-10-112-171-48 ssh-copy-id -i vm-10-112-171-49 ssh-copy-id -i vm-10-112-171-50 ssh-copy-id -i vm-10-112-171-51 #在10.112.171.48机器上运行如下命令生成公钥和私钥 ssh-keygen -t rsa #将公钥copy到其他机器节点上,以下命令单条执行 ssh-copy-id -i vm-10-112-171-47 ssh-copy-id -i vm-10-112-171-48 ssh-copy-id -i vm-10-112-171-49 ssh-copy-id -i vm-10-112-171-50 ssh-copy-id -i vm-10-112-171-51
- 将在10.112.171.47机器上安装好的hadoop-2.7.2拷贝到其他机器的同级目录下 /home/hadoop/hadoop-2.7.2
3.hadoop启动
- 启动namenode日志同步节点
cd /home/hadoop/hadoop-2.7.2/sbin ./hadoop-daemons.sh start journalnode
- 第一次启动需要格式化namenode
cd /home/hadoop/hadoop-2.7.2/bin hadoop namenode -format
- 第一次需要格式化zookeeper,在namenode上执行,执行完毕后,将tmp目录下的文件拷贝到备用namenode节点上
hdfs zkfc -formatZK
相关推荐
总之,Hadoop-3.1.3在Linux上的安装和配置是一个系统性的过程,涵盖了Java环境的准备、Hadoop配置文件的修改、服务的启动和测试等多个环节。这个过程不仅帮助我们理解Hadoop的基本原理,也为实际的大数据处理任务...
2、大数据环境-安装Hadoop2.5.2伪分布式傻瓜教程 原创
在大数据领域,Hadoop是一个核心的开源框架,用于存储和处理海量数据。本"大数据开发--hadoop全套学习课程"涵盖了大数据技术的多个关键组成部分,包括Hadoop2.x及其生态系统中的其他工具,如Hive、HBase、Flume、...
大数据组件-监控-hadoop-datanodes的prometheus模板插件
### 大数据、Hadoop与HDFS详解 随着信息技术的快速发展和互联网的普及,数据量呈爆炸性增长态势。传统的数据处理工具和技术已无法满足如此大规模数据的存储、管理和分析需求。为此,Apache Hadoop应运而生,它提供...
大数据高级-hadoop部署
大数据组件-监控-hadoop的prometheus-grafana模板插件
小牛学堂-大数据24期-04-Hadoop Hive Hbase Flume Sqoop-12天适合初学者.txt
标题中的"apache-hadoop-3.1.0-winutils-master.zip"是一个针对Windows用户的Hadoop工具包,它包含了运行Hadoop所需的特定于Windows的工具和配置。`winutils.exe`是这个工具包的关键组件,它是Hadoop在Windows上的一...
总的来说,`flink-shaded-hadoop-2-uber-2.7.5-10.0.jar.zip` 提供了一个方便、兼容且冲突解决的 Flink-Hadoop 集成方案,是大数据开发者在处理涉及 Flink 和 Hadoop 的复杂场景时的重要工具。理解并熟练使用这种 ...
标题中的“云计算与大数据技术-Hadoop分布式大数据系统”揭示了我们即将探讨的核心主题:Hadoop在云计算环境中的应用,以及它如何处理和分析大规模数据。Hadoop是Apache软件基金会的一个开源项目,它提供了一个...
大数据全套视频教程。linux,hadoop,spark,storm,hive,flume,oozie,,hbase,zookeeper,mysql,mongodb,redis,多个项目实践等等,应有尽有。
总的来说,这个“大数据-hadoop-mapreduce代码”资源对于想要深入理解Hadoop MapReduce机制,或者需要开发和优化MapReduce应用程序的人来说,是一个宝贵的参考资料。通过研究这些代码,你可以学习到如何处理Hadoop...
flink-shaded-hadoop-3下载
Hadoop大数据平台集成实施方案 Hadoop大数据平台集成实施方案是指基于Hadoop的大数据平台的技术方案、集成实施方案、项目实施与管理等相关内容的整合方案。该方案旨在为大数据平台的建设和实施提供一个完善的解决...
文档为PPT,与百度文库里的Hadoop大数据开发基础为一套,里面内容相对比较基础~可做基础学习资料PPT。 【实例截图】 【核心代码】 Hadoop大数据开发基础-PPT课件 └── 37066-Hadoop大数据开发基础-PPT课件 ├── ...
在实际使用中,安装Hadoop-Eclipse-Plugin非常简单。只需将jar文件(如hadoop-eclipse-plugin-2.8.0.jar)复制到Eclipse的plugins目录下,然后重启Eclipse,即可在“New Project”中看到Hadoop相关的项目类型。在...
# 解压命令 tar -zxvf flink-shaded-hadoop-2-uber-3.0.0-cdh6.2.0-7.0.jar.tar.gz # 介绍 用于CDH部署 Flink所依赖的jar包
Hadoop企业级大数据平台-测试报告