WebHCat Configuration
Configuration Files
WebHCat(Templeton)的配置将常规的 Hadoop 配置与特定于 WebHCat 的变量合并。因为 WebHCat 旨在连接通常不连接的服务,所以配置比预期的要复杂。
WebHCat 特定的配置分为两层:
-
webhcat-default.xml – WebHCat 需要的所有配置变量。该文件设置 WebHCat 附带的默认值,并且只能由 WebHCat 开发人员更改。不要复制或更改此文件以维护本地安装设置。由于 WebHCat war 文件中存在 webhcat-default.xml,因此编辑该文件的本地副本不会更改配置。
-
webhcat-site.xml –(可能为空)配置文件,系统 Management 员可以在其中为 Hadoop 集群设置变量。创建此文件并在其中维护条目以获取配置变量,这些变量要求您根据本地安装覆盖默认值。
Note
对配置进行任何更改后,WebHCat 服务器将需要重新启动。
配置文件是按此 Sequences 加载的,后来的文件将覆盖先前的文件:
- 要查找配置文件,WebHCat 首先尝试从
CLASSPATH
加载文件,然后在TEMPLETON_HOME
环境变量中指定的目录中查找。
配置文件可以访问所有环境变量的特殊环境变量env
。例如,可以使用以下命令指定 Pig 可执行文件:
${env.PIG_HOME}/bin/pig
使用文件系统路径的配置变量会尝试使用合理的默认值。但是,如果存在不确定性,则指定完整路径和完整路径始终是安全的。
Log File Location
webhcat-log4j.properties 文件设置由 WebHCat 创建的日志文件的位置以及日志记录系统的其他一些属性。
Configuration Variables
Name | Description |
---|---|
templeton.port | 主服务器的 HTTP 端口。 |
templeton.hadoop.config.dir | Hadoop 配置的路径。 |
已过时: templeton.jar | WebHCat jar 文件的路径。 (在最新版本中未使用,因此已在 Hive 0.14.0 中删除。) |
templeton.libjars | 罐子添加到 Classpath。 |
templeton.override.jars | 要添加到所有 Map Reduce 作业的HADOOP_CLASSPATH 的罐子。这些 jar 必须存在于 HDFS 上。 |
templeton.override.enabled | 在 templeton.override.jars 中启用替代路径。 |
templeton.streaming.jar | Hadoop 流 jar 文件的 HDFS 路径。 |
templeton.hadoop | Hadoop 可执行文件的路径。 |
templeton.pig.archive | Pig 存档的路径。 |
templeton.pig.path | Pig 可执行文件的路径。 |
templeton.hcat | HCatalog 可执行文件的路径。 |
templeton.hive.archive | Hive 存档的路径。 |
templeton.hive.path | Hive 可执行文件的路径。 |
templeton.hive.properties | 运行 Hive 时(提交作业期间)要设置的属性。预计这将是一个逗号分隔的 prop = value 列表。如果某个值本身是逗号分隔的列表,则转义字符为''\ (从Hive 0.13.1开始)。 |
要在启用了 Kerberos 安全性的群集中使用它,请设置hive.metastore.sasl.enabled=false
并添加hive.metastore.execute.setugi=true
。在 metastore URI 中使用 localhost 不能与 Kerberos 安全一起使用。
| templeton.exec.encoding | stdout 和 stderr 数据的编码。
| templeton.exec.timeout |允许程序在 WebHCat 框上运行多长时间(毫秒)。
| templeton.exec.max-procs |允许一次运行的最大进程数。
| templeton.exec.max-output-bytes | stdout 或 stderr 中存储在 ram 中的最大字节数。
| templeton.controller.mr.child.opts |要传递给 WebHCat 控制器 Map 任务的 Java 选项。
| templeton.exec.envs |环境变量传递给 exec。
| templeton.zookeeper.hosts | ZooKeeper 服务器,以逗号分隔的 host:port 对。
| templeton.zookeeper.session-timeout | ZooKeeper 会话超时(以毫秒为单位)。
| templeton.callback.retry.interval |两次回调重试之间的 await 时间(以毫秒为单位)。
| templeton.callback.retry.attempts |重试该回调多少次。
| templeton.storage.class |用作存储的类。
| templeton.storage.root |用于存储的目录路径。
| templeton.hdfs.cleanup.interval |线程的清除检查之间的最大延迟。
| templeton.hdfs.cleanup.maxage | WebHCat 作业的最大年龄。
| templeton.zookeeper.cleanup.interval |线程清除检查之间的最大延迟。
| templeton.zookeeper.cleanup.maxage | WebHCat 作业的最大年龄。
| templeton.kerberos.secret |用于签署 HTTP cookie 值的 Secret。默认值为随机值。除非多个 WebHCat 实例需要共享机密,否则随机值就足够了。
| templeton.kerberos.principal |服务器要使用的 Kerberos 主体。如 Kerberos SPNEGO 规范所述,它应为USER/${HOSTNAME}@{REALM
}。它没有默认值。
| templeton.kerberos.keytab |包含用于 Kerberos 主体的凭据的 keytab 文件。
| templeton.hadoop.queue.name | MapReduce 队列名称,WebHCat 仅 Map 作业将提交到该队列名称。可用于避免死锁,因为在死锁中群集中的所有 Map 位都由 Templeton 启动器任务接管。
版本:Hive 0.12.0及更高版本。
| templeton.mapper.memory.mb | WebHCat 控制器作业的启动 Map 器的内存限制(以兆字节为单位)。提交控制器作业时,WebHCat 将使用此值覆盖mapreduce.map.memory.mb
。如果为空,则在提交控制器作业时 WebHCat 不会设置mapreduce.map.memory.mb
,因此将使用 mapred-site.xml 中的配置。
版本:Hive 0.14.0及更高版本。
| templeton.frame.options.filter |使用 X-Frame-OptionsHeaders 添加 Web 服务器保护,使其免受点击劫持。可能的值为 DENY,SAMEORIGIN,ALLOW-FROM<uri>。
版本:Hive 3.0.0及更高版本。
Default Values
WebHCat 配置变量的某些默认值取决于发行版号。有关您正在使用的 Hive 发行版中的默认值,请参见 webhcat-default.xml 文件。可以在 SVN 存储库中找到它:
- http://svn.apache.org/repos/asf/hive/branches/branch- *<release_number> * /hcatalog/webhcat/svr/src/main/config/webhcat-default.xml
其中*<release_number> *为 0.11、0.12,依此类推。在 Hive 0.11 之前,WebHCat 处于 Apache 孵化器中。
For example:
Hive 0.11 之前的默认值在 HCatalog 0.5.0 文档中列出:
- HCatalog 0.5.0:WebHCat 配置变量
Navigation Links
Previous: Installation
Next: Reference
配置单元配置:Configuring Hive,配置单元配置属性,节俭服务器设置
一般:WebHCat Manual – HCatalog Manual – Hive Wiki 主页 – Hive 项目 site