kahing / goofys

a high-performance, POSIX-ish Amazon S3 file system written in Go
Apache License 2.0
5.17k stars 523 forks source link

NetApp StorageGrid S3 Provider #673

Open remyd1 opened 2 years ago

remyd1 commented 2 years ago

Hi,

I am testing goofys, but it does not work with a S3 NetApp provider.

I have the following issue:

Jan 17 17:12:01 cloud /usr/local/bin/goofys[178974]: s3.DEBUG HEAD https://s3.meso.domain.tld:11111/sm1-isem = 403 []
Jan 17 17:12:01 cloud /usr/local/bin/goofys[178974]: s3.DEBUG X-Amz-Id-2 = [12489950]
Jan 17 17:12:01 cloud /usr/local/bin/goofys[178974]: s3.DEBUG Date = [Mon, 17 Jan 2022 16:12:01 GMT]
Jan 17 17:12:01 cloud /usr/local/bin/goofys[178974]: s3.DEBUG Connection = [keep-alive]
Jan 17 17:12:01 cloud /usr/local/bin/goofys[178974]: s3.DEBUG Server = [StorageGRID/11.4.0.2]
Jan 17 17:12:01 cloud /usr/local/bin/goofys[178974]: s3.DEBUG X-Amz-Request-Id = [1642435921575989]
Jan 17 17:12:22 cloud /usr/local/bin/goofys[178974]: s3.DEBUG DEBUG: Sign Request s3/HeadObject failed, not retrying, error NoCredentialProviders: no valid providers in chain. Deprecated.#012#011For verbose messaging see aws.Config.CredentialsChainVerboseErrors
Jan 17 17:12:22 cloud /usr/local/bin/goofys[178974]: s3.ERROR code=NoCredentialProviders msg=no valid providers in chain. Deprecated.#012#011For verbose messaging see aws.Config.CredentialsChainVerboseErrors, err=<nil>#012
Jan 17 17:12:22 cloud /usr/local/bin/goofys[178974]: main.ERROR Unable to access 'sm1-isem': NoCredentialProviders: no valid providers in chain. Deprecated.#012#011For verbose messaging see aws.Config.CredentialsChainVerboseErrors
Jan 17 17:12:22 cloud /usr/local/bin/goofys[178974]: main.FATAL Mounting file system: Mount: initialization failed

I am able to mount it using s3fs-fuse (domain have been replaced here).

I am using this command line:

/usr/local/bin/goofys --debug_s3 --endpoint="https://s3.meso.domain.tld:11111/" --uid=33 --gid=33 --file-mode=0640 -o allow_other sm1-isem /var/www/nextcloud

With s3fs-fuse:

/usr/local/bin/s3fs sm1-isem /var/www/nextcloud -o passwd_file=/etc/.passwd-s3fs -o url=https://s3.meso.domain.tld:11111/ -o use_path_request_style -o parallel_count="30" -o dbglevel=warn -o logfile=/var/log/s3.log -o allow_other -o mp_umask="0022"

Is it supported or did I missed some option (I am sorry if I did something wrong or did not see the right option in documentation) ?

Thanks, Best regards,

plaisted commented 2 years ago

I was able to get this working with Storage Grid settings the creds in a $HOME/.aws/credentials profiles and passing the --profile {name} flag. I'm not sure why goofys isn't picking up the environmental variables that were set.

scaleoutsean commented 2 years ago

I was able to get this working with Storage Grid settings the creds in a $HOME/.aws/credentials profiles and passing the --profile {name} flag. I'm not sure why goofys isn't picking up the environmental variables that were set.

Because the region wasn't specified in any way (in the command or in HOME/.aws/config for the profile, for example).