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

NameDescription
templeton.port主服务器的 HTTP 端口。
templeton.hadoop.config.dirHadoop 配置的路径。
已过时: templeton.jarWebHCat jar 文件的路径。 (在最新版本中未使用,因此已在 Hive 0.14.0 中删除。)
templeton.libjars罐子添加到 Classpath。
templeton.override.jars要添加到所有 Map Reduce 作业的HADOOP_CLASSPATH的罐子。这些 jar 必须存在于 HDFS 上。
templeton.override.enabledtempleton.override.jars 中启用替代路径。
templeton.streaming.jarHadoop 流 jar 文件的 HDFS 路径。
templeton.hadoopHadoop 可执行文件的路径。
templeton.pig.archivePig 存档的路径。
templeton.pig.pathPig 可执行文件的路径。
templeton.hcatHCatalog 可执行文件的路径。
templeton.hive.archiveHive 存档的路径。
templeton.hive.pathHive 可执行文件的路径。
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 文档中列出:

Navigation Links

Previous: Installation
Next: Reference

配置单元配置:Configuring Hive配置单元配置属性节俭服务器设置

一般:WebHCat ManualHCatalog ManualHive Wiki 主页Hive 项目 site