def resolve_default_hdfs_service(self):
        """
        Resolves the default namenode using the given, or environment-derived, hadoop configuration,
        by parsing the configuration for ``fs.defaultFS``.

        :return: a tuple of structure ``(nameservice, list of namenodes)``
        """
        default_fs = self._hadoop_configuration.get('fs.defaultFS')
        if default_fs:
            nameservice = urlparse(default_fs).netloc
            list_of_namenodes = self.resolve_hdfs_name_service(nameservice)
            if list_of_namenodes is None:
                raise IOError(self._build_error_string('Unable to get namenodes for '
                                                       'default service "{}" from'
                                                       .format(default_fs)))
            return [nameservice, list_of_namenodes]
        else:
            raise RuntimeError(
                self._build_error_string('Failed to get property "fs.defaultFS" from'))

        Resolves the default namenode using the given, or environment-derived, hadoop configuration,
        by parsing the configuration for ``fs.defaultFS``.

        :return: a tuple of structure ``(nameservice, list of namenodes)``
        
petastorm/hdfs/namenode.py