execute_hadoop.py 888 B

123456789101112131415161718192021222324
  1. from resource_management import *
  2. class ExecuteHadoopProvider(Provider):
  3. def action_run(self):
  4. if self.resource.security_enabled and not self.resource.kinit_override:
  5. kinit_if_needed = "su - {user} -c '{kinit_path_local} -kt {keytab} {principal}'".format(
  6. user=self.resource.user, kinit_path_local=self.resource.kinit_path_local,
  7. keytab=self.resource.keytab, principal=self.resource.principal)
  8. else:
  9. kinit_if_needed = ""
  10. cmd = "hadoop --config {conf_dir} {command}".format(conf_dir=self.resource.conf_dir, command=self.resource.command)
  11. if kinit_if_needed != "":
  12. Execute ( kinit_if_needed,
  13. path = ['/bin']
  14. )
  15. Execute ( cmd,
  16. user = self.resource.user,
  17. tries = self.resource.tries,
  18. try_sleep = self.resource.try_sleep,
  19. logoutput = self.resource.logoutput,
  20. )