安装Apache hadoop

HDFS安装
– 伪分布式安装
– 完全分布式安装
• 下载及解压
• 检查java和ssh的免密码登陆
• 修改core-site.xml
• 修改hdfs-site.xml
• 修改masters文件和slaves文件
• 格式化namenode
• Start-hdfs.sh启动

[创建文件夹]
sudo mkdir /data
cd /
ls -all
[改变拥有者]
sudo chown neworigin:neworigin /data/

[拷贝]
cp /mnt/hgfs/BigData/第四天/jdk-8u121-linux-x64.tar.gz /data/
[解压]
tar -xzvf jdk-8u121-linux-x64.tar.gz

[查看路径]
pwd

[/etc/environment]

>sudo nano /etc/environment
JAVA_HOME=/data/jdk1.8.0_121
PATH="$PATH:/data/jdk1.8.0_121/bin"

>source /etc/environment

[查看环境]
>java -version


hadoop配置
[拷贝]
cp /mnt/hgfs/BigData/第四天/hadoop-2.7.0.tar.gz /data/
[解压]
tar -xzvf hadoop-2.7.0.tar.gz
[etc/environment]
HADOOP_HOME=/data/hadoop-2.7.0
PATH=$PATH:/data/hadoop-2.7.0/bin:/data/hadoop-2.7.0/sbin

[测试]
>hadoop version

[配置文件]
>cd /data/hadoop-2.7.0/etc/hadoop



[core-site.xml]
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost/</value>
</property>
</configuration>



[hdfs-site.xml]
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

--------------------------------------
cp mapred-site.xml.template mapred-site.xml
[mapred-site.xml]
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>


[yarn-site.xml]
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>


[设置免密登录]
[安装]
sudo apt-get install ssh

[生成秘钥]
ssh-keygen -t rsa[根目录执行]

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

cd ~/.ssh/

[拷贝到公钥]
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 或
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys

>ssh localhost
>exit
>ssh localhost

[启动hadoop]
>hdfs namenode -format         [工作禁止使用]
>start-all.sh

[查看进程]
>jps

[暂停hadoop]
>stop-all.sh

[webui]
s100:50070


[进程]
DataNode   //数据节点    DN
ResourceManager//资源管理器 RM
NameNode //名称节点 NN
NodeManager //节点管理器 NM
SecondaryNameNode//辅助名称节点 2NN




[hadoop shell]
>hadoop fs

[创建目录]
>hadoop fs -mkdir -p /user/neworigin/

[上传文件]
>echo helloworld > 1.txt
>hadoop fs -put ~/1.txt /user/neworigin/

[查看文件系统]
>hadoop fs -lsr  或
>hadoop fs -ls -R 或
>hadoop fs -ls -R /
 
 
[修改文件权限]
>hadoop fs -chmod 777 1.txt

[删除文件]
>hadoop fs -rm 1.txt

[读文件]
>hadoop fs -cat 1.txt 或
>hadoop fs -text 1.txt

>hdfs dfs -cat 1.txt










一个文件存储方式
• 按大小被切分成若干个block ,存储到不同节点上
• 默认情况下每个block都有三个副本
– Block大小和副本数通过Client端上传文件时设置,
文件上传成功后副本
数可以变更,Block Size不可变更

NameNode(NN)
– NameNode主要功能:接受客户端的读写服务
– NameNode保存metadate信息包括
• 文件owership和permissions
• 文件包含哪些块
• Block保存在哪个DataNode(由DataNode启动时上报)

NN有且只有一台处于active状态

NameNode的metadate信息在启动后会加载到内存
• metadata存储到磁盘文件名为”fsimage”
• Block的位置信息不会保存到fsimage
• edits记录对metadata的操作日志

所以元数据信息一定要做持久化



SNN执行合并时机
• 根据配置文件设置的时间间隔
fs.checkpoint.period 默认3600秒
• 根据配置文件设置edits log大小
fs.checkpoint.size 规定edits文件的最大值默
认是64MB

DataNode(DN)
– 存储数据(Block)
– 启动DN线程的时候会向NN汇报block信息
– 通过向NN发送心跳保持与其联系(3秒一次),如
果NN 10分钟没有收
到DN的心跳,则认为其已经lost,并copy其上的block
到其它DN

向NN汇报健康信息

Block的副本放置策略
– 第一个副本:放置在上传文件的DN;如果是集群外提
交,则随机挑选一台磁盘不太满,CPU不太忙的节点。
– 第二个副本:放置在于第一个副本不同的机架的节点
上。
– 第三个副本:与第二个副本相同机架的节点。
– 更多副本:随机节点

HDFS文件权限
– 与Linux文件权限类似
• r: read; w:write; x:execute,权限x对于文件忽
略,对于文件夹表示是否允许访问其内容
– 如果Linux系统用户zhangsan使用hadoop命令创建
一个文件,那么这个文件在HDFS中owner就是zhangsan。
– HDFS的权限目的:阻止好人错错事,而不是阻止坏
人做坏事。 HDFS相信,你告诉我你是谁,我就认为你
是谁。权限认证默认是开启的

安全模式(不能上传下载文件)
– namenode启动的时候,首先将映像文件(fsimage)
载入内存,并执行编辑日志(edits)中的各
项操作。
– 一旦在内存中成功建立文件系统元数据的映射,则
创建一个新的fsimage文件(这个操作不
需要SecondaryNameNode)和一个空的编辑日志。
– 此刻namenode运行在安全模式。即namenode的文件
系统对于客服端来说是只读的。 (显示目录,显示文
件内容等。写、删除、重命名都会失败)。

在此阶段Namenode收集各个datanode的报告,当数
据块达到最小副本数以上时,会被认
为是“安全”的, 在一定比例(可设置)的数据块被
确定为“安全”后,再过若干时间,安
全模式结束
– 当检测到副本数不足的数据块时,该块会被复制直
到达到最小副本数,系统中数据块的位
置并不是由namenode维护的,而是以块列表形式存储
在datanode中。





  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值