设为首页 收藏本站
查看: 1370|回复: 0

[经验分享] 【总结】Hadoop配置文件hdfs-site.xml

[复制链接]

尚未签到

发表于 2018-10-29 11:20:24 | 显示全部楼层 |阅读模式
  
  dfs.ha.automatic-failover.enabled
  true
  配置是否启动故障恢复,配置此项为true的时候,core-site.xml需要配置ha.zookeeper.quorum
  
  
  dfs.nameservices
  ns1
  提供服务的NS逻辑名称,与core-site.xml里的对应;Comma-separated list of nameservices
  
  
  dfs.ha.namenodes.ns1
  nn1,nn2
  列出该逻辑名称下的NameNode逻辑名称, dfs.ha.namenodes.EXAMPLENAMESERVICE配置项EXAMPLENAMESERVICE位dfs.nameservices的值
  
  
  dfs.namenode.rpc-address.ns1.nn1
  nn1.ol:9000
  指定NameNode的RPC位置;处理所有客户端请求的RPC地址,
  
  
  dfs.namenode.http-address.ns1.nn2
  nn2.ol:50070
  namenode web ui端口 ,例如: http://nn1.ol:50070/  
  
  
  dfs.namenode.shared.edits.dir
  qjournal://nn1.ol:8485;nn2.ol:8485;s1.ol:8485/ns1
  指定用于HA存放edits的共享存储,通常是NFS挂载点;active namenode向配置的文件夹中写,standby namenode从这个文件夹下读,从而保证namespaces同步;在非HA集群中此项配置为空
  
  
  dfs.journalnode.edits.dir
  /hadoop/1/jn/
  作用暂时不知道
  
  
  dfs.ha.fencing.methods
  sshfence
   core-site.xml中配置项;指定HA做隔离的方法,缺省是ssh,可设为shell,稍后详述;
  sshfence 通过 ssh 登录到前一个 ActiveNameNosde 并将其杀死。为了让该机制成功执行,
  需配置免密码 ssh 登陆,通过参数 dfs.ha.fencing.ssh.private-key-files 指定一个私钥文件
  
  
  dfs.ha.fencing.ssh.private-key-files
  /home/hadoop/.ssh/id_rsa
  The SSH private key files to use with the builtin sshfence fencer.
  
  
  dfs.namenode.name.dir
  file:///hadoop/1/dfs/nn
  本地文件系统DFSnamenode存放name table(fsimage文件)的目录,参数值如果是逗号分隔的多个目录,the name table复制到多个目录,冗余
  其中fsimage镜像文件包含了整个HDFS文件系统的所有目录和文件的indoe信息。对于文件来说包括了数据块描述信息、修改时间、访问时间等;对于目录来说包括修改时间、访问权限控制信息(目录所属用户,所在组等)等。
  另外,edit文件主要是在NameNode已经启动情况下对HDFS进行的各种更新操作进行记录,HDFS客户端执行所有的写操作都会被记录到edit文件中。
  
  
  dfs.datanode.data.dir
  file:///hadoop/1/dfs/dn,file:///hadoop/2/dfs/dn
  DFS data node存放块文件的本地文件系统目录,一个文件按块大小切分后,按顺序存放在配置多个目录下(目录不存在则忽略);
  这么做的目的是,可以将数据写多块硬盘,把这些位置分散在每个节点上的所有磁盘上可以实现磁盘 I/O 平衡,因此会显著改进磁盘 I/O 性能。
  
  测试环境配置:
DSC0000.png

  测试环境datanode的磁盘:
DSC0001.png

  
  
  dfs.blocksize
  268435456
  HDFS文件系统块大小;可以配置以m,g等后缀结尾的值  256m
  
  
  dfs.support.append
  true
  HDFS允许向文件追加内容;如果这个参数设置为false,例如Flume这样的工具持续向HDFS中的一个文件写数据就会出问题(我猜的。没验证)
  
  
  fs.trash.interval
  10080单位:minute
  .Trash目录下文件多久后被删除,10080/1440=7,参数设置为0,文件直接删除不移动到.Trash中
  
  
  dfs.datanode.failed.volumes.tolerated
  1
  允许磁盘损坏的数目,超过配置值,datanode shutdown
  
  
  dfs.datanode.balance.bandwidthPerSec
  104857600
  balancing purpose,允许没秒的带宽;为了防止balance过程抢占网络资源,不为Mapreduce作业或者数据输入预留资源
  
  
  dfs.namenode.handler.count
  46
  
  
  
  dfs.datanode.max.xcievers
  8192
  相当于linux下的打开文件最大数量,文档中无此参数,当出现DataXceiver报错的时候,需要调大。默认256;
  此项配置已过时,用dfs.datanode.max.transfer.threads代替,源代码见DFSConfigKeys.java
  
  
  
  dfs.datanode.max.transfer.threads
  8192
  相当于linux下的打开文件最大数量,文档中无此参数,当出现DataXceiver报错的时候,需要调大。默认256
  
  
  
  dfs.datanode.socket.write.timeout
  100000000
   IO超时,超时上限值以毫秒为单位。0表示无限制;java.net.SocketTimeoutException: 480000(配置参数的值) millis timeout while waiting for channel to be ready for write
  
  
  dfs.client.socket-timeout
  100000000
   IO超时,超时上限值以毫秒为单位。0表示无限制;java.net.SocketTimeoutException: 480000(配置参数的值) millis timeout while waiting for channel to be ready for write
  
  
  dfs.datanode.du.reserved
  21474836480
  每个存储卷保留用作其他用途( non dfs use)的磁盘大小,20G;单位 bytes per volume
  
  
  dfs.datanode.fsdataset.volume.choosing.policy
  org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicy
  数据副本存放磁盘选择策略,
  第一种是沿用hadoop1.0的磁盘目录轮询方式,实现类:RoundRobinVolumeChoosingPolicy.java(如果不配置,默认)
  第二种是选择可用空间足够多的磁盘方式存储,实现类:AvailableSpaceVolumeChoosingPolicy.java
  
  
  
  dfs.datanode.available-space-volume-choosing-policy.balanced-space-threshold
  2147483648
  允许的卷剩余空间差值,2G
DSC0002.png

  
  
  
  dfs.hosts.exclude
  /usr/local/hadoop/etc/hadoop/exclude_hosts
  一个列表,列表中的hosts不允许连接namenode
  
  
  dfs.client.read.shortcircuit
  true
  打开本地读功能
  
  
  dfs.domain.socket.path
  /hadoop/1/dfs/dn_socket_PORT
  dfs.domain.socket.path是Datanode和DFSClient之间沟通的Socket的本地路径
  套接口文件
DSC0003.png

  
  
  
  
  dfs.permissions.enabled
  true
  HDFS权限认证,是否打开
  
  
  dfs.permissions.superusergroup
  hadoop
  超级用户,format namenode的用户
  
  
  fs.permissions.umask-mode
  022
  core-site.xml的配置文件,注意umask对文件,文件夹影响不同
DSC0004.png

  
  
  dfs.namenode.acls.enabled
  true
  
DSC0005.png

  
  
  


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-627938-1-1.html 上篇帖子: Hadoop之AVRO 下篇帖子: hadoop学习(二) 分布式搭建配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表