code: def enable_hdfs_ha(self, active_name, active_shared_path, standby_name,
        standby_shared_path, nameservice, start_dependent_services=True,
        deploy_client_configs=True, enable_quorum_storage=False):
      
      version = self._get_resource_root().version
  
      args = dict(
        activeName = active_name,
        standByName = standby_name,
        nameservice = nameservice,
        startDependentServices = start_dependent_services,
        deployClientConfigs = deploy_client_configs,
      )
  
      if enable_quorum_storage:
        if version < 2:
          raise AttributeError("Quorum-based Storage is not supported prior to Cloudera Manager 4.1.")
        else:
          args['enableQuorumStorage'] = enable_quorum_storage
      else:
        if active_shared_path is None or standby_shared_path is None:
          raise AttributeError("Active and standby shared paths must be specified if not enabling Quorum-based Storage")
        args['activeSharedEditsPath'] = active_shared_path
        args['standBySharedEditsPath'] = standby_shared_path
  
      return self._cmd('hdfsEnableHa', data=args)
docs: Enable high availability for an HDFS NameNode.
      This command is no longer supported with API v6 onwards. Use enable_nn_ha instead.
  
      @param active_name: name of active NameNode.
      @param active_shared_path: shared edits path for active NameNode.
                                 Ignored if Quorum-based Storage is being enabled.
      @param standby_name: name of stand-by NameNode.
      @param standby_shared_path: shared edits path for stand-by NameNode.
                                  Ignored if Quourm Journal is being enabled.
      @param nameservice: nameservice for the HA pair.
      @param start_dependent_services: whether to re-start dependent services.
      @param deploy_client_configs: whether to re-deploy client configurations.
      @param enable_quorum_storage: whether to enable Quorum-based Storage. Available since API v2.
                                    Quorum-based Storage will be enabled for all
                                    nameservices except those configured with NFS High
                                    Availability.
      @return: Reference to the submitted command.