diff options
Diffstat (limited to 'bigtop-deploy/puppet/modules/hadoop_hive')
-rw-r--r-- | bigtop-deploy/puppet/modules/hadoop_hive/manifests/init.pp | 23 | ||||
-rw-r--r-- | bigtop-deploy/puppet/modules/hadoop_hive/templates/hive-site.xml | 29 |
2 files changed, 52 insertions, 0 deletions
diff --git a/bigtop-deploy/puppet/modules/hadoop_hive/manifests/init.pp b/bigtop-deploy/puppet/modules/hadoop_hive/manifests/init.pp index 4b10a25a..538308c0 100644 --- a/bigtop-deploy/puppet/modules/hadoop_hive/manifests/init.pp +++ b/bigtop-deploy/puppet/modules/hadoop_hive/manifests/init.pp @@ -20,6 +20,10 @@ class hadoop_hive { include hadoop_hive::client } + if ("hive-metastore" in $roles) { + include hadoop_hive::metastore + } + if ("hive-server2" in $roles) { include hadoop_hive::server2 @@ -40,6 +44,7 @@ class hadoop_hive { class common_config ($hbase_master = "", $hbase_zookeeper_quorum = "", $kerberos_realm = "", + $metastore_uris = "", $server2_thrift_port = "10000", $server2_thrift_http_port = "10001", $hive_execution_engine = "mr") { @@ -81,4 +86,22 @@ class hadoop_hive { } Kerberos::Host_keytab <| title == "hive" |> -> Service["hive-server2"] } + + class metastore { + include hadoop_hive::common_config + + package { "hive-metastore": + ensure => latest, + } + + service { "hive-metastore": + ensure => running, + require => Package["hive-server2"], + subscribe => File["/etc/hive/conf/hive-site.xml"], + hasrestart => true, + hasstatus => true, + } + Kerberos::Host_keytab <| title == "hive" |> -> Service["hive-metastore"] + Service["hive-metastore"] -> Service["hive-server2"] + } } diff --git a/bigtop-deploy/puppet/modules/hadoop_hive/templates/hive-site.xml b/bigtop-deploy/puppet/modules/hadoop_hive/templates/hive-site.xml index a9730553..6e4b4b67 100644 --- a/bigtop-deploy/puppet/modules/hadoop_hive/templates/hive-site.xml +++ b/bigtop-deploy/puppet/modules/hadoop_hive/templates/hive-site.xml @@ -85,6 +85,18 @@ <value><%= @server2_thrift_http_port %></value> </property> +<% if @metastore_uris != "" %> +<property> + <name>hive.metastore.uris</name> + <value><%= @metastore_uris %></value> +</property> +<% end %> + +<property> + <name>hive.security.metastore.authorization.manager</name> + <value>org.apache.hadoop.hive.ql.security.authorization.StorageBasedAuthorizationProvider</value> +</property> + <% if @kerberos_realm != "" %> <property> <name>hive.server2.authentication</name> @@ -98,5 +110,22 @@ <name>hive.server2.authentication.kerberos.keytab</name> <value>/etc/hive.keytab</value> </property> + +<property> + <name>hive.metastore.kerberos.principal</name> + <value>hive/_HOST@<%= @kerberos_realm %></value> +</property> +<property> + <name>hive.metastore.kerberos.keytab.file</name> + <value>/etc/hive.keytab</value> +</property> +<property> + <name>hive.metastore.pre.event.listeners</name> + <value>org.apache.hadoop.hive.ql.security.authorization.AuthorizationPreEventListener</value> +</property> +<property> + <name>hive.metastore.sasl.enabled</name> + <value>true</value> +</property> <% end %> </configuration> |