I can read from our EMS ECS S3 storage with Drill but I cannot write to it.
When I try to write I get the following:
Error: SYSTEM ERROR: AmazonS3Exception: Status Code: 403, AWS Service: Amazon
S3, AWS Request ID: 0acc510f:15a1f6415cc:918a3:3ce, AWS Error Code:
AccessDenied, AWS Error Message: Access Denied
I have configured the core-site.xml with the credentials needed to access the
bucket. I am using the bucket owner so there is not permissions issues.
Below is the core-site.xml. I have changed the actual values for security
reasons. The text in red is where I put the required information.
<configuration>
<property>
<name>fs.s3a.endpoint</name>
<value>our url to ecs</value>
<description>
</description>
</property>
<property>
<name>fs.s3a.access.key</name>
<value>the access key</value>
</property>
<property>
<name>fs.s3a.secret.key</name>
<value>the secret key</value>
</property>
</configuration>
Here is the storage plugin:
{
"type": "file",
"enabled": true,
"connection": "s3a://mybucket",
"config": null,
"workspaces": {
"root": {
"location": "/",
"writable": true,
"defaultInputFormat": null
},
"tmp": {
"location": "/tmp",
"writable": true,
"defaultInputFormat": null
}
},
"formats": {
"psv": {
"type": "text",
"extensions": [
"tbl"
],
"delimiter": "|"
},
"csv": {
"type": "text",
"extensions": [
"csv"
],
"delimiter": ","
},
"tsv": {
"type": "text",
"extensions": [
"tsv"
],
"delimiter": "\t"
},
"httpd": {
"type": "httpd",
"logFormat": "%h %t \"%r\" %>s %b \"%{Referer}i\"",
"timestampFormat": null
},
"parquet": {
"type": "parquet"
},
"json": {
"type": "json",
"extensions": [
"json"
]
},
"avro": {
"type": "avro"
},
"sequencefile": {
"type": "sequencefile",
"extensions": [
"seq"
]
},
"csvh": {
"type": "text",
"extensions": [
"csvh"
],
"extractHeader": true,
"delimiter": ","
}
}
}