0

我用stage =“true”创建了一个ShellCommandActivity。Shell 命令创建一个新文件并将其存储在 ${OUTPUT1_STAGING_DIR} 中。我希望这个新文件在 S3 中进行服务器端加密。

根据文档,在 s3 数据节点中创建的所有文件默认情况下都是服务器端加密的。但是在我的管道完成后,在 s3 中创建了一个未加密的文件。我尝试在 S3 datanode 中将 s3EncryptionType 显式设置为 SERVER_SIDE_ENCRYPTION ,但这也无济于事。我想加密这个新文件。

这是管道的相关部分:

{
  "id": "DataNodeId_Fdcnk",
  "schedule": {
    "ref": "DefaultSchedule"
  },
  "directoryPath": "s3://my-bucket/test-pipeline",
  "name": "s3DataNode",
  "s3EncryptionType": "SERVER_SIDE_ENCRYPTION",
  "type": "S3DataNode"
},
{
  "id": "ActivityId_V1NOE",
  "schedule": {
    "ref": "DefaultSchedule"
  },
  "name": "FileGenerate",
  "command": "echo 'This is a test' > ${OUTPUT1_STAGING_DIR}/foo.txt",
  "workerGroup": "my-worker-group",
  "output": {
    "ref": "DataNodeId_Fdcnk"
  },
  "type": "ShellCommandActivity",
  "stage": "true"
}
4

2 回答 2

0

简短的回答:您的管道定义看起来是正确的。您需要确保运行的是最新版本的 Task Runner。我会尝试重现您的问题并让您知道。

PS 让我们在此处或 AWS Data Pipeline 论坛中的单个线程中进行对话以避免混淆。

在官方 AWS Data Pipeline 论坛页面上回答

于 2015-03-24T01:15:11.530 回答
0

当我下载新的 TaskRunner-1.0.jar 时,此问题已解决。我正在运行旧版本。

于 2015-03-25T22:59:18.687 回答