hortonworks / ansible-hortonworks

Ansible playbooks for deploying Hortonworks Data Platform and DataFlow using Ambari Blueprints
Apache License 2.0
248 stars 253 forks source link

Hadoop services fail to start if cluster name contains (_) and HA is configured #32

Closed shyamshaw closed 6 years ago

shyamshaw commented 6 years ago

Hi Team,

I was trying to install a cluster with Namenode and ResourceManager HA. Cluster is installed but some of the services (RM, MapReduce2, Hive, Oozie, Spark2 ) failed to start with below error:

2018-07-13 10:33:22,032 FATAL resourcemanager.ResourceManager (ResourceManager.java:main(1293)) - Error starting ResourceManager org.apache.hadoop.service.ServiceStateException: java.io.IOException: Incomplete HDFS URI, no host: hdfs://hwx_ansible

I am using dynamic blueprint. By default, nameservice got configured with cluster_name.

"dfs.nameservices" : "{{ cluster_name }}", https://github.com/hortonworks/ansible-hortonworks/blob/master/playbooks/roles/ambari-blueprint/templates/blueprint_dynamic.j2#L326

cluster name: hwx_ansible

image

alexandruanghel commented 6 years ago

Thanks for opening this!

This was indeed quite lazily done - the HDFS HA name being the same as the cluster name.

I've committed https://github.com/hortonworks/ansible-hortonworks/commit/faf70e5f2633b0c2059a83099e19f8b5f3515a78 which should make this configurable, and also replacing _ with - in case you want to leave the default of using the cluster name.