hadoop centos搭建,免密

1 篇文章 0 订阅
1 篇文章 0 订阅

防火墙 centOS firewalld
https://www.cnblogs.com/moxiaoan/p/5683743.html

hadoop文档
http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_shell.html

hadoop下载地址:
http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.9.2/hadoop-2.9.2.tar.gz

zookeeper
https://www.cnblogs.com/zengxiaoliang/p/8442815.html

java 编程开发hfds
https://www.cnblogs.com/codeOfLife/p/5396624.html

pdf 教程
https://blog.csdn.net/myvanguard/article/details/83896365

一、安装hadoop
1.安装jdk
2.安装hadoop 2.4.1

  • hadoop 包介绍
  • bin 可执行脚本
  • sbin系统脚本
  • etc 配置文件
  • lib jar包
  • include 本地包
  • share 程序开发需要的jar包
  • common 公共组件包
  • hdfs 存储文件包
  • httpfs 提供api包
  • mapreduce 模型包
  • tools 工具包
  • yarn 对应的yarn包

修改主机名称,不修改会出问题
yarn-site.xml

  1. 安装修改配置文件 etc中的文件修改
  • hadoop-env.sh 环境配置文件
    • 修改java_home配置路径,替换${JAVA_HOME} 为当前对应的java_home 路径
  • core-site.xml 核心代码配置文件 公共的代码
<configuration>
<property>
# 默认文件系统,hdfs
<name>fs.default.name</name> 
# uri 文件地址
<value>hdfs://192.168.5.130:90000</value>
</property>

<property>
#默认文件存储位置 ,公共目录
#生产系统挂在到磁盘点,可以拓展磁盘
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop-2.9.2/data</value>
</property>

</configuration>
  • hdfs-site.xml 文件存储配置文件,运行的具体参数
<configuration>
# 分部署数据存储备份数
<property>
    <name>dfs.replication</name>
    <value>1<value>
</property>
</configuration>
  • mapreduce-site.xml 模型配置文件 将mapreduce-site.xml.template 替换成 mapreduce-site.xml
<configuration>
# 指定到yarn 上面跑,不然是单机程序。
#放到yarn是分布式程序
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn<value>
    </property>
</configuration>

  • yarn-site.xml yarn配置文件
<configuration>
# yarn 的老大
<property>
<name>yarn.resourcemanage.hostname</name>
<value>192.168.5.130</value>
</property>
#重节点 map 中产生的结果怎么传递给reduce
#写死shuffle
<property>
<name>yarn.nodemanage.aux-services</name>
<value>mapreduce_shuffle</value>
<value></value>
</property>

</configuration>

4.准备工作(关闭防火墙,或者配置端口)

service iptables stop
//不要自启服务
chkconfig iptables status
//关闭防火墙
chkconfig iptables off 

hadoop/etc/slaves 配置那些机器datanode

  • datanode 很多
  • 哪些机器要启动datanode

5.第一次启动hadoop 第一次初始化一下

添加环境变量

vi /etc/profil
export HADOOP_HOME=/opt/hadoop-2.9.2
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile

格式化namenode hadoop namenode -format

启动 在sbin 目录中

  • ./start-dfs.sh 启动文件服务 bash 启动
  • jps 查看启动进程 dfs 应该有三个启动
    • secondaryNameNode
    • NameNode 只有一个存储路径索引
    • DataNode 多个集群
    • ResourceManager yarn管理

启动 yarn

  • ./start-yarn.sh 启动yarn
  1. 查看dfs 测试

192.168.5.130:50070

  • 上传文件到dfs
//上传
hadoop fs -put jdk-8u11-linux-x64.tar.gz hdfs://192.168.5.130:9000/
//下载文件
hadoop fs -get hdfs:192.168.5.130:9000/jdk-8u11-linux-x64.tar.gz

7.测试mapreduce
/opt/hadoop-2.9.2/share/hadoop/mapreduce

// 统计圆周率 5 map 的任务数 5 reduce 取数数
 hadoop jar hadoop-mapreduce-examples-2.9.2.jar pi 5 5
//dfs 创建目录
hadoop fs -mkdir /word
//统计input 中的文件单词数量 数据到output 文件中
hadoop jar hadoop-mapreduce-examples-2.9.2.jar wordcount /word/input /word/output

8.ssh秘钥登录设置

将别的服务器的公钥放到authorized_keys 登录

  • ssh秘钥实现原理

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KEiO8tFh-1591155668627)(https://ws1.sinaimg.cn/large/006tNc79gy1g2jwxcu7dkj30qo0h6q3s.jpg)]

https://www.cnblogs.com/dadonggg/p/7520249.html
1.生成秘钥对 在 /home/user/.ssh/ 
ssh-keygen -t rsa 
2.将生成的公密放到对应的服务器上面 
3.将公密放到对应的authorized_keys 里面去,如果没有则在.ssh中创建。权限必须是600 chmod 600 authorized_keys 
cat id_rsa.pub >> authorized_keys 

# vi /etc/ssh/sshd_config    //开启以下内容
HostKey /etc/ssh/ssh_host_rsa_key
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

# /etc/init.d/sshd restart

刷新
source /etc/hosts

blocksize 可以调整大小 dfs.block.size 在hdfs-site.xml 中配置

9.hdfs java 编程

java中配置文件core-site.xml配置文件和hdfs-site.xml

  • 别的机器上面需要修改hadoop用户名称 在jvm 中配置
-DHADOOP_USER_NAME=root 
或者 
FileSystem fs = FileSystem.get(new URI("hdfs://192.168.5.130:9000/"),configuration,"root");中设定

10.rpc调用 hadoop rpc
soap = http+xml
https://blog.csdn.net/watter1985/article/details/84322118

  1. mapreduce 程序
  • map对象继承Mapper
  • 本地运行需要在本地环境配置hadoop与hadoop的环境变量
  • 自定义bean 需要实现hadoop 相对于的序列号接口

  1. yarn 8088界面
    yarn-site.xml yarn.resourcemanager.hostname
    集群电脑配置对应的主机名称的ip地址
    linux host文件中配置主机名和ip地址

本地执行放入yarn中

  • 本地eclipse 使用main 方法执行,想放入yarn 分布式处理,将mapred-site.xml 和yarn-site.xml 放入项目的src 根目录下
  • 或者将配置文件的内容配置到configuration 中
  • 本地打包jar配置wcrunner configuration.set(“mapreduce.job.jar”,“wc.jar”)

13.mapreduce 设置分组和设定reduce执行个数

  • 1.设定分组 instance.setPartitionerClass();继承partitioner 实现数据处理分组
  • 2.设置reduce执行个数 instance.setNumReduceTasks(6);
    reduce有多少个输出的文件就有多少个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值