Github user kwmonroe commented on a diff in the pull request:
https://github.com/apache/bigtop/pull/344#discussion_r172070816
--- Diff:
bigtop-packages/src/charm/hive/layer-hive/lib/charms/layer/bigtop_hive.py ---
@@ -36,31 +36,45 @@ def install(self, hbase=None):
# Prep config
roles = ['hive-client', 'hive-metastore', 'hive-server2']
metastore = "thrift://{}:9083".format(hookenv.unit_private_ip())
- if hbase:
- roles.append('hive-hbase')
- hb_connect = "{}:{}".format(hbase['host'],
hbase['master_port'])
- zk_connect = hbase['zk_connect']
- else:
- hb_connect = ""
- zk_connect = ""
--- End diff --
Upon closer inspection, there's a side effect of not forcefully setting
this to `""`. With no value, we fall into the default provided by
`cluster.yaml`:
https://github.com/apache/bigtop/blob/master/bigtop-deploy/puppet/hieradata/bigtop/cluster.yaml#L191
which falls up to the hbase config:
https://github.com/apache/bigtop/blob/master/bigtop-deploy/puppet/hieradata/bigtop/cluster.yaml#L132
which makes the namenode (bigtop head node) the default value. This means
on a deployed hive charm, you'll get the following in the config, even when
hbase is not deployed at all:
```
<property>
<name>hbase.zookeeper.quorum</name>
<value>ip-172-31-68-129.ec2.internal</value>
<description>http://wiki.apache.org/hadoop/Hive/HBaseIntegration</description>
</property>
```
That hostname is for my namenode. This may not be a problem as the hive
unit in this case has no hbase roles defined, but I haven't put "hive plus some
hbase config even when hbase isnt there" to the test to see if anything is
afoul.
---