OushuDB 快速入手

OushuDB 快速入手,第1张

快速入手

本节将通过RPM安装物理机版本的一个Centos/Redhat 7.x单节点集群。假设我们安装的服务器hostname为oushu(可以通过命令:hostname 直接获取,请将文中所有出现的oushu替换为实际的hostname)。此次部署大约需要您30分钟时间。

安装准备

首先使用root登录。 查看有无avx指令:

cat /proc/cpuinfo | grep avx

安装oushu yum源:

#Redhat/CentOS 7.0, 7.1, 7.2系统并且包含avx指令请配置以下YUM源:

wget -P /etc/yum.repos.d/ $获取的repo url

#Redhat/CentOS 7.0, 7.1, 7.2系统但不包含avx指令请配置以下YUM源:

wget -P /etc/yum.repos.d/ $获取的repo url

#Redhat/CentOS 7.3系统并且包含avx指令请配置以下YUM源:

wget -P /etc/yum.repos.d/ $获取的repo url

#Redhat/CentOS 7.3系统但不包含avx指令请配置以下YUM源:

wget -P /etc/yum.repos.d/ $获取的repo url

#Redhat/CentOS 7.4系统并且包含avx指令请配置以下YUM源:

wget -P /etc/yum.repos.d/ $获取的repo url

#Redhat/CentOS 7.4系统但不包含avx指令请配置以下YUM源:

wget -P /etc/yum.repos.d/ $获取的repo url

禁用selinux:

sed -i "s/^SELINUX\=enforcing/SELINUX\=disabled/g" /etc/selinux/configsetenforce 0

关闭防火墙:

systemctl stop iptablessystemctl disable iptablessystemctl stop firewalldsystemctl disable firewalld

安装Java:

yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-develmkdir -p /usr/java//注意查看本机的java版本ln -s /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-2.b16.el7_4.x86_64  /usr/java/default

安装HDFS

安装HDFS并且创建其使用的目录,这里我们假设我们的机器上有两个数据盘,分别mount在/data1和/data2目录,如果您有多块盘,下面的目录创建以及配置文件需要做相应的更改。尤其对HDFS的数据目录以及OushuDB的临时文件目录位置。

#由于hadoop依赖于特定版本的snappy,请先卸载snappy确保安装的顺利进行yum -y remove snappy#安装HDFS RPM,RPM安装会自动创建hdfs用户yum install -y hadoop hadoop-hdfs#在/data1上创建NameNode目录mkdir -p /data1/hdfs/namenode#在每块盘上创建DataNode数据目录,并更改权限mkdir -p /data1/hdfs/datanodechmod -R 755 /data1/hdfschown -R hdfs:hadoop /data1/hdfsmkdir -p /data2/hdfs/datanodechmod -R 755 /data2/hdfschown -R hdfs:hadoop /data2/hdfs

复制下列文件到/etc/hadoop/conf/中(遇到覆盖提示,请输入y,表示确认覆盖)

http://www.oushu.com/docs/ch/_downloads/908bee114673dff44292d2b51ed5a1ce/core-site.xml.

http://www.oushu.com/docs/ch/_downloads/a57b214c41f418570548204fdf5089b3/hdfs-site.xml.

http://www.oushu.com/docs/ch/_downloads/5caeda7d6d35f2ab18438c8994e855c1/hadoop-env.sh.

编辑/etc/hadoop/conf/core-site.xml文件中的fs.defaultFS属性,其他系统通过这个url来访问HDFS,注:在做format之前,请确认已经将core-site.xml中fs.defaultFS的值由oushu替换成hostname。:

<property><name>fs.defaultFS</name><value>hdfs://oushu:9000</value></property>

编辑 /etc/hadoop/conf/hadoop-env.sh,加入下面参数。这些参数配置了Java Home,Hadoop配置文件,日志文件目录,以及JVM选项。根据存储的HDFS数据量大小,需要适当修改NameNode的-Xmx值。HDFS数据量越大,-Xmx值应该设的越大。

export JAVA_HOME="/usr/java/default"

export HADOOP_CONF_DIR="/etc/hadoop/conf"

export HADOOP_NAMENODE_OPTS="-Xmx6144m -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70"

export HADOOP_DATANODE_OPTS="-Xmx2048m -Xss256k"

export HADOOP_LOG_DIR=/var/log/hadoop/$USER

因为/etc/hadoop/conf/hdfs-site.xml中默认使用/data1和/data2两块盘,如果你有多块盘,你需要更改dfs.data.dir属性,使得HDFS用到所有盘:

<property><name>dfs.data.dir</name><value>/data1/hdfs/datanode,/data2/hdfs/datanode</value><final>true</final></property>

格式化NameNode,并启动NameNode和DataNode。

注:在format过程中如果询问是否要format,请输入y,表示确认。

sudo -u -E hdfs hdfs namenode -formatsudo -u -E hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start namenodesudo -u -E hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start datanode

HDFS日志在/var/log/hadoop/hdfs/中。如果因为配置出错,可以查看错误日志,并依据改正。

检查hdfs是否成功运行:

su - hdfshdfs dfsadmin -reporthdfs dfs -mkdir /testnodehdfs dfs -put /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh /testnode/hdfs dfs -ls -R /

你也可以查看HDFS web界面:http://oushu:50070/

安装OushuDB

安装OushuDB RPM,OushuDB RPM安装会自动创建gpadmin用户。

yum install -y hawq

在配置文件/etc/sysctl.conf添加内容

kernel.shmmax = 1000000000kernel.shmmni = 4096kernel.shmall = 4000000000kernel.sem = 250 512000 100 2048kernel.sysrq = 1kernel.core_uses_pid = 1kernel.msgmnb = 65536kernel.msgmax = 65536kernel.msgmni = 2048net.ipv4.tcp_syncookies = 0net.ipv4.conf.default.accept_source_route = 0net.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_max_syn_backlog = 200000net.ipv4.conf.all.arp_filter = 1net.ipv4.ip_local_port_range = 10000 65535net.core.netdev_max_backlog = 200000fs.nr_open = 3000000kernel.threads-max = 798720kernel.pid_max = 798720# increase networknet.core.rmem_max=2097152net.core.wmem_max=2097152net.core.somaxconn=4096

使系统配置生效:

sysctl -p

创建OushuDB本地元数据目录和临时文件目录:

#创建OushuDB本地元数据目录,下面两个目录分别为master和segment使用mkdir -p /data1/hawq/masterddmkdir -p /data1/hawq/segmentdd#创建OushuDB临时文件目录,每块盘需要创建一个临时文件目录,这样可以让OushuDB使用到所有盘。mkdir -p /data1/hawq/tmpchmod -R 755 /data1/hawqchown -R gpadmin:gpadmin /data1/hawqmkdir -p /data2/hawq/tmpchmod -R 755 /data2/hawqchown -R gpadmin:gpadmin /data2/hawq

在HDFS上创建OushuDB数据目录:

sudo -u hdfs hdfs dfs -mkdir -p /hawq_defaultsudo -u hdfs hdfs dfs -chown -R gpadmin /hawq_default

编辑/usr/local/hawq/etc/slaves,去掉文件中的localhost,并加入oushu。slaves文件中存放所有slave节点的地址,每行一个节点。修改后文件为:

oushu

编辑/usr/local/hawq/etc/hawq-site.xml, 因为/usr/local/hawq/etc/hawq-site.xml中默认使用/data1和/data2两块盘,如果你有多块盘,你需要更改hawq_master_temp_directory和hawq_segment_temp_directory值,用到所有盘:

<property><name>hawq_master_address_host</name><value>oushu</value><description>The host name of hawq master.</description></property><property><name>hawq_dfs_url</name><value>oushu:9000/hawq_default</value><description>URL for accessing HDFS.</description></property><property><name>magma_nodes_url</name><value>localhost:6666</value><description>urls for accessing magma.</description></property><property><name>hawq_master_directory</name><value>/data1/hawq/masterdd</value><description>The directory of hawq master.</description></property><property><name>hawq_segment_directory</name><value>/data1/hawq/segmentdd</value><description>The directory of hawq segment.</description></property><property><name>hawq_master_temp_directory</name><value>/data1/hawq/tmp,/data2/hawq/tmp</value><description>The temporary directory reserved for hawq master. Note: please DONOT add " " between directries.</description></property><property><name>hawq_segment_temp_directory</name><value>/data1/hawq/tmp,/data2/hawq/tmp</value><description>The temporary directory reserved for hawq segment. Note: please DONOT add " " between directories.</description></property>

OushuDB4.0版本新增Magma的单独配置和启停功能,使用magam服务时,首先创建magma node数据目录:

# 创建mamga node数据目录mkdir -p /data1/hawq/magma_segmentddmkdir -p /data2/hawq/magma_segmentddchown -R gpadmin:gpadmin /data1/hawqchown -R gpadmin:gpadmin /data2/hawq

然后编辑配置/usr/local/hawq/etc/magma-site.xml:

<property><name>nodes_file</name><value>slaves</value><description>The magma nodes file name at GPHOME/etc</description></property><property><name>node_data_directory</name><value>file:///data1/hawq/magma_segmentdd,file:///data2/hawq/magma_segmentdd</value><description>The data directory for magma node</description></property><property><name>node_log_directory</name><value>~/hawq-data-directory/segmentdd/pg_log</value><description>The log directory for magma node</description></property><property><name>node_address_port</name><value>6666</value><description>The port magma node listening</description></property><property><name>magma_range_number</name><value>2</value></property><property><name>magma_replica_number</name><value>3</value></property><property><name>magma_datadir_capacity</name><value>3</value></property><property><name>compact_trigger_ap_ratio_limit</name><value>0.2</value><description>The threshold of triggering compact in MAGMAAP format.</description></property><property><name>compact_trigger_tp_ratio_limit</name><value>0.5</value><description>The threshold of triggering compact in MAGMAAP catalog</description></property>

以gpadmin用户登录:

su - gpadmin

设置免密码ssh:

source /usr/local/hawq/greenplum_path.shhawq ssh-exkeys -h oushu

初始化OushuDB,在询问是否初始化时,请输入y,表示确认初始化。

hawq init cluster  //OushuDB4.0 默认不启动magma服务

hawq init cluster --with_magma  //OushuDB4.0新增,3.X版本不支持该选项

// OushuDB4.0版本新增--with_magma选项,但只有hawq init|start|stop cluster命令可以带--with_magma选项。

OushuDB管理工具日志在/home/gpadmin/hawqAdminLogs/中,OushuDB master日志和segment日志分别在/data1/hawq/masterdd/pg_log/ 和/data1/hawq/segmentdd/pg_log/中。如果因为配置出错,可以查看错误日志,并依据改正。

检查OushuDB是否运行正常:

su - gpadminsource /usr/local/hawq/greenplum_path.shpsql -d postgresselect * from gp_segment_configuration  //确定所有节点是up状态create table t(i int)insert into t select generate_series(1,1000)select count(*) from t

体验新执行器

本章节通过TPCH lineitem 表来展示新执行器的使用。

建立e_lineitem外部表用来生成TPCH lineitem 数据,

CREATE EXTERNAL WEB TABLE E_LINEITEM ( L_ORDERKEY    INT8 ,L_PARTKEY    INTEGER ,L_SUPPKEY    INTEGER ,L_LINENUMBER  INTEGER ,L_QUANTITY    FLOAT ,L_EXTENDEDPRICE  FLOAT ,L_DISCOUNT    FLOAT ,L_TAX        FLOAT ,L_RETURNFLAG  VARCHAR(1) ,L_LINESTATUS  VARCHAR(1) ,L_SHIPDATE    TEXT ,L_COMMITDATE  TEXT ,L_RECEIPTDATE TEXT ,L_SHIPINSTRUCT CHAR(25) ,L_SHIPMODE    VARCHAR(10) ,L_COMMENT      VARCHAR(44) )EXECUTE 'bash -c "$GPHOME/bin/dbgen -b $GPHOME/bin/dists.dss -T L -s 1 -N 6 -n $((GP_SEGMENT_ID + 1))"'on 6 format 'text' (delimiter '|')

创建ORC 表

CREATE TABLE lineitem(  L_ORDERKEY    INT8,L_PARTKEY    INTEGER,L_SUPPKEY    INTEGER,L_LINENUMBER  INTEGER,L_QUANTITY    FLOAT,L_EXTENDEDPRICE  FLOAT,L_DISCOUNT    FLOAT,L_TAX        FLOAT,L_RETURNFLAG  TEXT,L_LINESTATUS  TEXT,L_SHIPDATE    TEXT,L_COMMITDATE  TEXT,L_RECEIPTDATE TEXT,L_SHIPINSTRUCT TEXT,L_SHIPMODE    TEXT,L_COMMENT      TEXT)WITH (APPENDONLY = true, OIDS = FALSE, ORIENTATION = orc)

插入数据

INSERT INTO lineitem SELECT * FROM e_lineitem

从下面的例子可以看到新执行器对于性能的大幅改进。

-----获取表行数------postgres=# set new_executor = onSETpostgres=# SELECT COUNT(*) FROM lineitemcount---------6001215(1 row)Time: 17.006 mspostgres=# set new_executor = offSETpostgres=# SELECT COUNT(*) FROM lineitemcount---------6001215(1 row)Time: 213.248 ms-----TPCH 查询 1 ------postgres=# set new_executor = onSETpostgres=#  SELECTl_returnflag,l_linestatus,sum(l_quantity)::bigint as sum_qty,sum(l_extendedprice)::bigint as sum_base_price,sum(l_extendedprice * (1 - l_discount))::bigint as sum_disc_price,sum(l_extendedprice * (1 - l_discount) * (1 + l_tax))::bigint as sum_charge,avg(l_quantity)::bigint as avg_qty,avg(l_extendedprice)::bigint as avg_price,avg(l_discount)::bigint as avg_disc,count(*) as count_orderFROMlineitemWHEREl_shipdate <= '1998-08-20'GROUP BYl_returnflag,l_linestatusl_returnflag | l_linestatus | sum_qty  | sum_base_price | sum_disc_price |  sum_charge  | avg_qty | avg_price | avg_disc | count_order--------------+--------------+----------+----------------+----------------+--------------+---------+-----------+----------+-------------R            | F            | 37719753 |    56568041381 |    53741292685 |  55889619120 |      26 |    38251 |        0 |    1478870N            | F            |  991417 |    1487504710 |    1413082168 |  1469649223 |      26 |    38284 |        0 |      38854A            | F            | 37734107 |    56586554401 |    53758257135 |  55909065223 |      26 |    38273 |        0 |    1478493N            | O            | 73808911 |  110700990251 |  105167436999 | 109377979031 |      26 |    38248 |        0 |    2894278(4 rows)Time: 234.376 mspostgres=# set new_executor = offSETpostgres=#  SELECTl_returnflag,l_linestatus,sum(l_quantity)::bigint as sum_qty,sum(l_extendedprice)::bigint as sum_base_price,sum(l_extendedprice * (1 - l_discount))::bigint as sum_disc_price,sum(l_extendedprice * (1 - l_discount) * (1 + l_tax))::bigint as sum_charge,avg(l_quantity)::bigint as avg_qty,avg(l_extendedprice)::bigint as avg_price,avg(l_discount)::bigint as avg_disc,count(*) as count_orderFROMlineitemWHEREl_shipdate <= '1998-08-20'GROUP BYl_returnflag,l_linestatusl_returnflag | l_linestatus | sum_qty  | sum_base_price | sum_disc_price |  sum_charge  | avg_qty | avg_price | avg_disc | count_order--------------+--------------+----------+----------------+----------------+--------------+---------+-----------+----------+-------------R            | F            | 37719753 |    56568041381 |    53741292685 |  55889619120 |      26 |    38251 |        0 |    1478870N            | F            |  991417 |    1487504710 |    1413082168 |  1469649223 |      26 |    38284 |        0 |      38854A            | F            | 37734107 |    56586554401 |    53758257135 |  55909065223 |      26 |    38273 |        0 |    1478493N            | O            | 73808911 |  110700990251 |  105167436999 | 109377979031 |      26 |    38248 |        0 |    2894278(4 rows)Time: 2341.147 ms

dfs.data.dir指的是datanode上数据存放的目录,配置多个可能是因为一个目录下面挂的硬盘不够用,所以多加了几个目录

repication是配置hdfs中数据存放的份数,也就是备份数,防止数据丢失的

dfs.name.dir

– NameNode 元数据存放位置

– 默认值:使用core-site.xml中的hadoop.tmp.dir/dfs/name

dfs.block.size

– 对于新文件切分的大小,单位byte。默认是64M,建议是128M。每一个节点都要指定,包括客户端。

– 默认值:67108864

dfs.data.dir

– DataNode在本地磁盘存放block的位置,可以是以逗号分隔的目录列表,DataNode循环向磁盘中写入数据,每个DataNode可单独指定与其它DataNode不一样

– 默认值:${hadoop.tmp.dir}/dfs/data

dfs.namenode.handler.count

– NameNode用来处理来自DataNode的RPC请求的线程数量

– 建议设置为DataNode数量的10%,一般在10~200个之间

– 如设置太小,DataNode在传输数据的时候日志中会报告“connecton refused"信息

– 在NameNode上设定

– 默认值:10

dfs.datanode.handler.count

– DataNode用来连接NameNode的RPC请求的线程数量

– 取决于系统的繁忙程度

– 设置太小会导致性能下降甚至报错

– 在DataNode上设定

– 默认值:3

dfs.datanode.max.xcievers

– DataNode可以同时处理的数据传输连接数

– 默认值:256

– 建议值:4096

dfs.permissions

– 如果是true则检查权限,否则不检查(每一个人都可以存取文件)

– 于NameNode上设定

– 默认值:true

dfs.datanode.du.reserved

– 在每个卷上面HDFS不能使用的空间大小

– 在每个DataNode上面设定

– 默认值:0

– 建议为10737418240,即10G。需要结合MapReduce场景设置。

dfs.datanode.failed.volumes.tolerated

– DataNode可以容忍损块的磁盘数量,超过这个数量DataNode将会离线,所有在这个节点上面的block将会被重新复制

– 默认是0,但是在有多块磁盘的时候一般会增大这个值

dfs.replication

– 在文件被写入的时候,每一块将要被复制多少份

– 默认是3份。建议3份

– 在客户端上设定

通常也需要在DataNode上设定

2、HDFS core-site.xml 参数配置

fs.default.name

– 文件系统的名字。通常是NameNode的hostname与port

– 需要在每一个需要访问集群的机器上指定,包括集群中的节点

– 例如:hdfs://<your_namenode>:9000/

fs.checkpoint.dir

– 以逗号分隔的文件夹列表,SecondNameNode用来存储checkpoint image文件

– 如果多于一个文件夹,那么都会被写入数据

– 需要在SecondNameNode上设定

– 默认值:${hadoop.tmp.dir}/dfs/namesecondary

hadoop.tmp.dir

– HDFS与本地磁盘的临时文件

默认是/tmp/hadoop-${user.name}.需要在所有的节点中设定

fs.trash.interval

– 当一个文件被删掉后,它会被放到用户目录的.Trash目录下,而不是立即删掉

– 经过此参数设置的分钟数之后,再删掉数据

– 默认是0,禁用此功能,建议1440(一天)

io.file.buffer.size

– 设定在读写数据时的缓存大小,应该为硬件分页大小的2倍

– 默认是4096,建议为65536 ( 64K)

3、设置log文件的大小和数量

– 修改core-site.xml中的参数

– hadoop.logfile.size

– hadoop.logfile.count

4、设置组件的日志级别

• **查看不同组件的日志级别 **

– hadoop daemonlog -getlevel host:port packageName

设置组件的日志级别

– hadoop daemonlog –setlevle host:port packageName level

– hadoop daemonlog -setlevel db74:50070 org.apache.hadoop ERROR

• DEBUG, INFO, ERROR, FATAL

端口为前台页面的端口,缺省为50070

组件名称(packageName)

– org.apache.hadoop.hdfs.server.namenode.NameNode

– org.apache.hadoop.hdfs.server.datanode.DataNode

– org.apache.hadoop.hdfs

– org.apache.hadoop

– org.apache.hadoop.mapred.JobTracker

重要程度由低到高依次为DEBUG <INFO <WARN <ERROR <FATAL。日志输出规则为:只输出级别不低于设定级别的日志信息。比如,级别设定为INFO,则INFO、WARN、ERROR和FATAL 级别的日志信息都会被输出,但级别比INFO 低的DEBUG 则不会被输出。DEBUG为测试,INFO为默认,一般生产用,ERROR错误,

5、hdfs的进程节点

1.namenode

记录源数据的命名空间

数据分配到那些datanode保存

协调客户端对文件访问

2.datanode

负责所在物理节点的储存管理

一次写入,多次读取(不能修改)

文件由数据块组成,典型的块大小是64M

数据块尽量散步到各个节点

3.secondarynamenode (辅助)

当NameNode重启的时候,会合并硬盘上的fsimage文件和edits文件,得到完整的Metadata信息。这个fsimage文件可以看做是一个过时的Metadata信息文件(最新的Metadata修改信息在edits文件中)。

如果edits文件非常大,那么这个合并过程就非常慢,导致HDFS长时间无法启动,如果定时将edits文件合并到fsimage,那么重启NameNode就可以非常快。

SecondaryNameNode就做这个合并的工作。

6、hdfs的回收站功能

删除文件时,其实是放入回收站/trash ,回收站里的文件可以快速恢复

可以设置一个时间阈值,当回收站里文件的存放时间超过这个阈值,就被彻底删除, 并且释放占用的数据块

(开启回收站功能)

<pre name="code" class="html" style="margin-top: 0pxmargin-bottom: 0pxwhite-space: pre-wrapoverflow-wrap: break-wordcolor: rgb(75, 75, 75)font-size: 13pxfont-style: normalfont-variant-ligatures: normalfont-variant-caps: normalfont-weight: 400letter-spacing: normalorphans: 2text-align: starttext-indent: 0pxtext-transform: nonewidows: 2word-spacing: 0px-webkit-text-stroke-width: 0pxbackground-color: rgb(255, 255, 255)text-decoration-style: initialtext-decoration-color: initial">[hadoop@h1 ~] vi core-site.xml (添加下面一段,10080为保留时间,单位分钟)

<property>

<name>fs.trash.interval</name>

<value>10080</value>

<description>

Number of minutes between trashcheckpoints.

If zero, the trash feature is disabted

</description>

</property></pre>

<pre name="code" class="html" style="margin-top: 0pxmargin-bottom: 0pxwhite-space: pre-wrapoverflow-wrap: break-wordcolor: rgb(75, 75, 75)font-size: 13pxfont-style: normalfont-variant-ligatures: normalfont-variant-caps: normalfont-weight: 400letter-spacing: normalorphans: 2text-align: starttext-indent: 0pxtext-transform: nonewidows: 2word-spacing: 0px-webkit-text-stroke-width: 0pxbackground-color: rgb(255, 255, 255)text-decoration-style: initialtext-decoration-color: initial">[hadoop@h1 hadoop-1.2.1]$ bin/ start-all.sh (重启 回收站功能生效)

</pre>

刚配置完 Hadoop 1.0.4发现对配置文件还是不太了解,就baidu了下,跟大家分享下 。常用的端口配置 1 HDFS端口

| 参数 | 描述 | 默认 | 配置文件 | 例子值 |

| fs.default.name namenode | namenode RPC交互端口 | 8020 | core-site.xml | hdfs://master:8020/ |

| dfs.http.address | NameNode web管理端口 | 50070 | hdfs- site.xml | 0.0.0.0:50070 |

| dfs.datanode.address | datanode 控制端口 | 50010 | hdfs -site.xml | 0.0.0.0:50010 |

| dfs.datanode.ipc.address | datanode的RPC服务器地址和端口 | 50020 | hdfs-site.xml | 0.0.0.0:50020 |

| dfs.datanode.http.address | datanode的HTTP服务器和端口 | 50075 | hdfs-site.xml | 0.0.0.0:50075 |

2 MR端口

| 参数 | 描述 | 默认 | 配置文件 | 例子值 |

| mapred.job.tracker | job-tracker交互端口 | 8021 | mapred-site.xml | hdfs://master:8021/ |

| job | tracker的web管理端口 | 50030 | mapred-site.xml | 0.0.0.0:50030 |

| mapred.task.tracker.http.address | task-tracker的HTTP端口 | 50060 | mapred-site.xml | 0.0.0.0:50060 |

3 其它端口

| 参数 | 描述 | 默认 | 配置文件 | 例子值 |

| dfs.secondary.http.address | secondary NameNode web管理端口 | 50090 | hdfs-site.xml | 0.0.0.0:50090 |

| | | | | |

| | | | | |

4 hdfs-default.html

| 序号 | 参数名 | 参数值 | 参数说明 |

| 1 | dfs.namenode.logging.level| info | 输出日志类型 |

| 2 | dfs.secondary.http.address| 0.0.0.0:50090 | 备份名称节点的http协议访问地址与端口 |

| 3 | dfs.datanode.address | 0.0.0.0:50010 | 数据节点的TCP管理服务地址和端口 |

| 4 | dfs.datanode.http.address | 0.0.0.0:50075 | 数据节点的HTTP协议访问地址和端口 |

| 5 | dfs.datanode.ipc.address | 0.0.0.0:50020 | 数据节点的IPC服务访问地址和端口 |

| 6 | dfs.datanode.handler.count| 3 | 数据节点的服务连接处理线程数 |

| 7 | dfs.http.address | 0.0.0.0:50070 | 名称节点的http协议访问地址与端口 |

| 8 | dfs.https.enable | false | 支持https访问方式标识 |

| 9 | dfs.https.need.client.auth| false | 客户端指定https访问标识 |

| 10 | dfs.https.server.keystore.resource | ssl-server.xml | Ssl密钥服务端的配置文件 |

| 11 | dfs.https.client.keystore.resource | ssl-client.xml | Ssl密钥客户端的配置文件 |

| 12 | dfs.datanode.https.address| 0.0.0.0:50475 | 数据节点的HTTPS协议访问地址和端口 |

| 13 | dfs.https.address | 0.0.0.0:50470 | 名称节点的HTTPS协议访问地址和端口 |

| 14 | dfs.datanode.dns.interface| default | 数据节点采用IP地址标识 |

| 15 | dfs.datanode.dns.nameserver | default | 指定DNS的IP地址 |

| 16 | dfs.replication.considerLoad | true | 加载目标或不加载的标识 |

| 17 | dfs.default.chunk.view.size | 32768 | 浏览时的文件块大小设置为32K |

| 18 | dfs.datanode.du.reserved | 0 | 每个卷预留的空闲空间数量 |

| 19 | dfs.name.dir | {dfs.name.dir} | 存贮文件 *** 作过程信息的存贮目录 |

| 21 | dfs.web.ugi | webuser,webgroup | Web接口访问的用户名和组的帐户设定 |

| 22 | dfs.permissions | true | 文件 *** 作时的权限检查标识。 |

| 23 | dfs.permissions.supergroup| supergroup| 超级用户的组名定义 |

| 24 | dfs.block.access.token.enable | false | 数据节点访问令牌标识 |

| 25 | dfs.block.access.key.update.interval | 600 | 升级访问钥时的间隔时间 |

| 26 | dfs.block.access.token.lifetime | 600 | 访问令牌的有效时间 |

| 27 | dfs.data.dir | ${hadoop.tmp.dir}/dfs/data | 数据节点的块本地存放目录 |

| 28 | dfs.datanode.data.dir.perm | 755 | 数据节点的存贮块的目录访问权限设置 |

| 29 | dfs.replication | 3 | 缺省的块复制数量 |

| 30 | dfs.replication.max | 512 | 块复制的最大数量 |

| 31 | dfs.replication.min | 1 | 块复制的最小数量 |

| 32 | dfs.block.size | 67108864 | 缺省的文件块大小为64M |

| 33 | dfs.df.interval | 60000 | 磁盘空间统计间隔为6秒 |

| 34 | dfs.client.block.write.retries | 3 | 块写入出错时的重试次数 |

| 35 | dfs.blockreport.intervalMsec| 3600000 | 块的报告间隔时为1小时 |

| 36 | dfs.blockreport.initialDelay| 0 | 块顺序报告的间隔时间 |

| 37 | dfs.heartbeat.interval | 3 | 数据节点的心跳检测间隔时间 |

| 38 | dfs.namenode.handler.count | 10| 名称节点的连接处理的线程数量 |

| 39 | dfs.safemode.threshold.pct | 0.999f| 启动安全模式的阀值设定

|

| 40 | dfs.safemode.extension | 30000 | 当阀值达到量值后扩展的时限 |

| 41 | dfs.balance.bandwidthPerSec | 1048576 | 启动负载均衡的数据节点可利用带宽最大值为1M |

| 42 | dfs.hosts | | 可与名称节点连接的主机地址文件指定。 |

| 43 | dfs.hosts.exclude | | 不充计与名称节点连接的主机地址文件设定 |

| 44 | dfs.max.objects | 0 | 文件数、目录数、块数的最大数量 |

| 45 | dfs.namenode.decommission.interval | 30 | 名称节点解除命令执行时的监测时间周期 |

| 46 | dfs.namenode.decommission.nodes.per.interval | 5| 名称节点解除命令执行是否完检测次数 |

| 47 | dfs.replication.interval| 3| 名称节点计算数据节点的复制工作的周期数. |

| 48 | dfs.access.time.precision | 3600000 | 充许访问文件的时间精确到1小时 |

| 49 | dfs.support.append | false| 是否充许链接文件指定 |

| 50 | dfs.namenode.delegation.key.update-interval | 86400000 | 名称节点上的代理令牌的主key的更新间隔时间为24小时 |

| 51 | dfs.namenode.delegation.token.max-lifetime | 604800000 | 代理令牌的有效时间最大值为7天 |

| 52 | dfs.namenode.delegation.token.renew-interval | 86400000 | 代理令牌的更新时间为24小时 |

| 53 | dfs.datanode.failed.volumes.tolerated | 0| 决定停止数据节点提供服务充许卷的出错次数。0次则任何卷出错都要停止数据节点 |


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11447340.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存