summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0.2.5/package/scripts/master.py18
1 files changed, 17 insertions, 1 deletions
diff --git a/ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0.2.5/package/scripts/master.py b/ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0.2.5/package/scripts/master.py
index 4583d8199b..080fcd6b46 100644
--- a/ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0.2.5/package/scripts/master.py
+++ b/ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0.2.5/package/scripts/master.py
@@ -178,7 +178,7 @@ class Master(Script):
not os.path.exists(params.conf_dir + "/interpreter.json"):
Execute(params.zeppelin_dir + '/bin/zeppelin-daemon.sh start >> '
+ params.zeppelin_log_file, user=params.zeppelin_user)
- time.sleep(20)
+ self.check_zeppelin_server()
self.update_zeppelin_interpreter()
self.update_kerberos_properties()
@@ -310,5 +310,21 @@ class Master(Script):
notebook['properties']['master'] = "yarn-client"
self.set_interpreter_settings(config_data)
+ def check_zeppelin_server(self, retries=10):
+ import params
+ import time
+ path = params.conf_dir + "/interpreter.json"
+ if os.path.exists(path) and os.path.getsize(path):
+ Logger.info("interpreter.json found. Zeppelin server started.")
+ return True
+ else:
+ if retries > 0:
+ Logger.info("interpreter.json not found. waiting for zeppelin server to start...")
+ time.sleep(5)
+ self.check_zeppelin_server(retries - 1)
+ else:
+ return False
+ return False
+
if __name__ == "__main__":
Master().execute()