Hadoop入门学习笔记-第一天 (HDFS:分布式存储系统简单集群)
准备工作:
1.安装VMware Workstation Pro
2.新建三个虚拟机,安装centOS7.0 版本不限
配置工作:
1.准备三台服务器(nameNode10、dataNode20、dataNode30)
2.配置三台机器网络ip分别为(192.168.18.10、192.168.18.20、192.168.18.30)
2.1 进入/etc/sysconfig/network-scripts 修改 ifcfg-ens33 文件,定义网卡 信息如下,三台机器都要配置
ONBOOT=yes
IPADDR=192.168.18.30
GATEWAY=192.168.18.2
DNS1=114.114.114.114
2.2网卡验证
执行命令:ping 192.168.18.30
2.3配置hosts域名 文件位置:/etc/hosts
nameNode10.com、dataNode20.com、dataNode30.com
3.安装jdk (三台机器都要配置)
3.1下载jdk安装包
3.2安装并配置环境变量
3.3生效 source profile
3.4验证:java -version
4.安装Hadoop(三台机器都要配置)
4.1下载hadoop安装包
4.2安装并配置环境变量
4.3生效 source profile
4.3验证:hadoop version
5.配置免密登录(三台机器都要配置)
5.1 配置免密
方法一:
1)分别在四台机器上执行 ssh-keygen 一直按回车
2)。分别在四台机器上执行 ssh-coyp-id "目标机器" 命令
比如:
在nameNode10机器上分别执行
ssh-copy-id dataNode20.com
ssh-copy-id dataNode30.com
在nameNode20机器上分别执行------
ssh-copy-id nameNode10.com
ssh-copy-id dateNode30.com
依次类推
方法二(推荐):
1)检查是否安装了ssh相关软件包(openssh-server + openssh-clients + openssh)
$yum list installed | grep ssh
2)检查是否启动了sshd进程
$>ps -Af | grep sshd
3)在client侧生成公私秘钥对。
$>ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
4)生成~/.ssh文件夹,里面有id_rsa(私钥) + id_rsa.pub(公钥)
5)追加公钥到~/.ssh/authorized_keys文件中(文件名、位置固定)
$>cd ~/.ssh
$>cat id_rsa.pub >> authorized_keys
6)修改authorized_keys的权限为644.
$>chmod 644 authorized_keys
7)在每台机器上发送至目标机器并执行
dataNode20.com===> root@nameNode10.com
dataNode20.com===>ssh-copy-id -i ~/.ssh/id_rsa.pub root@nameNode30.com
依次类推
5.2验证方法
在当前服务器下(nameNode10.com),执行ssh nameNode10.com 会自动进入dataNode20.com 服务器
6.配置core-site.xml 指明nameNode节点
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://nameNode10.com:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/data/tmp</value>
</property>
</configuration>
7.配置hdfs-site.xml 指明复制个数
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
8.修改hadoop/etc/hadoop/hadoop-env.sh 指定jdk地址
exoprt JAVA_HOME=/opt/jdk
9.配置dataNode节点 vim /hadoop/etc/hadoop/slaves 文件 (高版本需要路径hadoop/etc/hadoop/workers)
dataNode20.com
dataNode30.com
10.格式化nameNode
hadoop namenode -format
11. 在start-dfs.sh stop-dfs.sh配置权限
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
HDFS_JOURNALNODE_USER=root
HDFS_ZKFC_USER=root
12.关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state
13.启动 ./start-dfs.sh 并上传文件测试:hdfs dfs -put /local/txt /test
查看各控制台
namenode控制台
http://nameNode10.com:9870
hdfs dfs -ls /
hdfs dfs -mkdir /test
hdfs dfs -put /local/txt /test
hdfs dfs -cat /test/txt
....
提交hadoop任务
bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.5.jar wordcount /input/wc.input /output
Hadoop入门学习笔记-第一天 (HDFS:分布式存储系统简单集群)的更多相关文章
- Hadoop入门学习笔记---part3
2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...
- Hadoop入门学习笔记---part1
随着毕业设计的进行,大学四年正式进入尾声.任你玩四年的大学的最后一次作业最后在激烈的选题中尘埃落定.无论选择了怎样的选题,无论最后的结果是怎样的,对于大学里面的这最后一份作业,也希望自己能够尽心尽力, ...
- Hadoop入门学习笔记---part4
紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...
- Hadoop入门学习笔记---part2
在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...
- Hadoop入门学习笔记-第二天 (HDFS:NodeName高可用集群配置)
说明:hdfs:nn单点故障,压力过大,内存受限,扩展受阻.hdfs ha :主备切换方式解决单点故障hdfs Federation联邦:解决鸭梨过大.支持水平扩展,每个nn分管一部分目录,所有nn共 ...
- Hadoop入门学习笔记总结系列文章导航
一.为何要学习Hadoop? 这是一个信息爆炸的时代.经过数十年的积累,很多企业都聚集了大量的数据.这些数据也是企业的核心财富之一,怎样从累积的数据里寻找价值,变废为宝炼数成金成为当务之急.但数据增长 ...
- Hadoop入门学习笔记(一)
Week2 学习笔记 Hadoop核心组件 Hadoop HDFS(分布式文件存储系统):解决海量数据存储 Hadoop YARN(集群资源管理和任务调度框架):解决资源任务调度 Hadoop Map ...
- Hadoop入门学习笔记之一
http://hadoop.apache.org/docs/r1.2.1/api/index.html 适当的利用 null 在map中可以实现对文件的简单处理,如排序,和分集合输出等. 需要关心的内 ...
- Hadoop入门学习笔记-第三天(Yarn高可用集群配置及计算案例)
什么是mapreduce 首先让我们来重温一下 hadoop 的四大组件:HDFS:分布式存储系统MapReduce:分布式计算系统YARN: hadoop 的资源调度系统Common: 以上三大组件 ...
随机推荐
- python3(三十四)unitTest
""" 单元测试 """ __author__on__ = 'shaozhiqi 2019/9/23' class Dict(dict): ...
- Go语言 中文分词技术使用技巧(一)
分词技术就是搜索引擎针对用户提交查询的关键词串进行的查询处理后根据用户的关键词串用各种匹配方法进行分词的一种技术. 中文分词(Chinese Word Segmentation)指的是将一个汉字序列( ...
- Vm安装虚拟机并使用net模式连接外网
Vm安装虚拟机并使用net模式连接外网 最近想搭建一个maven私服和阿波罗配置中心一切准备就绪时 发现本地vm虚拟机无法连接外网,嗯 ~ ~ ,一句cnm不由从嘴里崩了出来.没办法,只能配置一下了接 ...
- L4文本预处理
文本预处理 timemachine.txt数据下载地址 链接:https://pan.baidu.com/s/1RO2OLyTRQZ90HJUW7V7BCQ 提取码:bjox NLTK数据集下载 链接 ...
- SpringBoot系列(八)分分钟学会Springboot多种解决跨域方式
SpringBoot系列(八) 分分钟学会SpringBoot多种跨域解决方式 往期推荐 SpringBoot系列(一)idea新建Springboot项目 SpringBoot系列(二)入门知识 s ...
- windows批处理protoc生成C++代码
1 首先需要生成protoc的可执行文件,具体可以参考 https://www.cnblogs.com/cnxkey/articles/10152646.html 2 将单个protoc文件生成.h ...
- redis: 配置文件详解(十一)
#通用配置 bind 127.0.0.1 #绑定可访问的ip 默认本机访问,如果bind选项为空的话,那会接受所有来自于可用网络接口的连接,也可以绑定指定ip访问 protected-mode yes ...
- 如何在非 sudo 用户下运行 docker 命令?
当我们在一台 Linux 系统中安装了 Docker 后, 有时候会遇到下面这样的错误, 我们在运行 docker 的命令时必须加上 sudo, 例如: sudo docker ps, 但是我们其实更 ...
- react: typescript jest && enzyme
Install Jest 1.install jest dependencies jest @types/jest ts-jest -D 2.jest.config.js module.exports ...
- JDBC处理CLOB 和 BLOB大对象
在数据库中: clob用于存储大量的文本数据 可以使用字符流操作 clob用于存储大量的二进制数据 可以使用字节流操作 以mysql为例 先准备一张表: CREATE TABLE `t_user2` ...