在ubuntu系统上使用Hadoop搭建集群

在ubuntu系统上使用Hadoop搭建集群










两台ubuntu(注意:hosts、config以及hadoop中的主节点、附属节点的主机名应保持一致)参考博客

1、配置ssh(默认连接方式 ssh 用户名@主机ip)使得免ip、免用户名登录(ssh 自定义主机名)

  • 修改/etc/hosts文件添加主机名和ip的映射,使得免ip

  • 修改~/.ssh/config 文件使得免用户名

2、安装hadoop并配置hadoop环境变量、安装java并配置JAVA_HOME(参考博客)

3、修改/usr/local/hadoop/etc/hadoop 中的几个配置文件

  • hadoop-env.sh :配置运行时的环境,指定JAVA_HOME的安装目录:export JAVA_HOME=安装目录(注意必须直接指出安装路径,不能使用$JAVA_HOME,否则运行时会报错找不到JAVA_HOME)

  • slaves (标明所有的附属节点主机名,使用该主机名可以直接ssh登录主机)(该文件仅master节点持有)把所有从节点的主机名写到这儿就可以,这是告诉hadoop进程哪些机器是从节点。每行写一个,例如

    前提是你已经为每个节点进行了hostname的命名。而且每个节点的hosts文件你修改了本地dns的指向,让这些主机指向约定好的IP。然后每个节点的hosts文件保持同步。

  • 核心配置文件:core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml

    core-site.xml :文件系统采用hdfs实现、临时数据存放的位置、缓冲区大小,实际工作中根据服务器性能动态调整、开启hdfs的垃圾桶机制,删除掉的数据可以从垃圾桶中回收

    hdfs-site.xml :

    mapred-site.xml

    yarn-site.xml :这个文件就是配置资源管理系统yarn了,其中主要指定了一些节点资源管理器nodemanager,以及总资源管理器resourcemanager的配置。 可以看到这个配置中,跟mapreduce框架是相关的。

4、将hadoop文件夹发送给其他的slave节点、删除其中的slaves文件、在各个slave节点上配置hadoop环境变量、安装java并配置JAVA_HOME(参考博客)

5、启动(在master节点)

  • 执行NameNode的格式化:hdfs namenode -format(第一次启动服务前进行的操作,之后再开启集群无需此操作)

  • 启动 Hadoop:
    start-dfs.sh
    start-yarn.sh
    mr-jobhistory-daemon.sh start historyserver

  • 可以在master和slave节点上使用jps命令查看各个节点所启动的进程

    master

    slave1

  • 关闭集群
    stop-yarn.sh
    stop-dfs.sh
    mr-jobhistory-daemon.sh stop historyserver

相关推荐
云和数据.ChenGuang1 小时前
Django 应用安装脚本 – 如何将应用添加到 INSTALLED_APPS 设置中 原创
数据库·django·sqlite
woshilys1 小时前
sql server 查询对象的修改时间
运维·数据库·sqlserver
Hacker_LaoYi1 小时前
SQL注入的那些面试题总结
数据库·sql
建投数据2 小时前
建投数据与腾讯云数据库TDSQL完成产品兼容性互认证
数据库·腾讯云
Hacker_LaoYi3 小时前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀3 小时前
Redis梳理
数据库·redis·缓存
独行soc3 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
你的微笑,乱了夏天4 小时前
linux centos 7 安装 mongodb7
数据库·mongodb
工业甲酰苯胺4 小时前
分布式系统架构:服务容错
数据库·架构
独行soc5 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘