Unsolved

This post is more than 5 years old

33 Posts

796

August 9th, 2016 06:00

Filesystem access API

I've started digging more into the filesystem access API for managing our space and I have a serious question about it's viability.

The primary one that I ran into is that it has no support for anything other than directories and regular files.  All other types can be seen in the children list of container objects but can neither be properly queried or created via the API. 

A secondary concern is that the platform API can not see alternate data streams.  If I have to lose ADS that's fine, but it would be nice it we could turn off the feature completely since it's not supported under CloudPools anyways.

I have fully reviewed the 7.2 and 8.0 API references and can't find any way around the issue.  I would like to do more automated data archives, but everywhere I turn I'm just running into limitations.

NFS - difficult to see full ACL, but I may have to deal.  No ADS support

CIFS - doesn't see posix native permissions

PAPI - doesn't deal with links or other special file types.  No ADS support

I can do a complete capture of permissions and alternate data streams over NDMP but it requires transferring a lot of duplicate data which I would like to avoid.  The startup time of a NDMP copy is also too slow to be used programmatically.  I may end up with a hybrid approach of walking the filesystem with the PAPI and then augmenting the data via stat calls, but that just seems so crude.

33 Posts

August 9th, 2016 10:00

I have spoken with them and will bring it up as a feature request if I can't find a straightforward technical solution.  I was really hoping that the filesystem API would provide a superset of features found in the other protocols but it seems like it's just another protocol which does not fully reveal the underlying data.

252 Posts

August 9th, 2016 10:00

Hi eric_w,

I can't personally address your concerns with the API limitations. I am sure there are others on here with more API knowledge that may have better suggestions.

I would highly recommend talking to your account team about submitting a feature request though. It isn't an immediate answer, but it is the most viable route to see product improvement.

254 Posts

August 9th, 2016 11:00

What exactly are you trying to accomplish with the API?  It does integrate with AD, at least with respect to AD users being able to authenticate and use the API as well as ACL manipulation.

33 Posts

August 9th, 2016 11:00

Full read-write access to the filesystem for scanning and archive tasks.  The problem is, at least on the unix side, is that we have more than just containers ( directories ) and objects ( regular files ) there are also symbolic links, hard links, character devices, block devices, pipes, and I think a few others.  There is no way to view, edit, or create these types of files through the PAPI.  I can see that they are there in a container, but attempts to ?metadata or ?acl on them either produce results for the linked path or an error.

EDIT: Specifically the documentation shows the following types "container, object, pipe, character_device, block_device, symbolic_link, socket, or whiteout_file." but only allows namespace access to the first two.

254 Posts

August 9th, 2016 13:00

Yeah, I could believe those don't work with the API.  You'd have to do those locally or via NFS as SMB doesn't have some of those concepts either.  Your best bet for a single interface is to run whatever you need on a cluster node itself.  That would have access to everything.  Not ideal, but it can see and manipulate everything.

No Events found!

Top