Использование точечных экземпляров AWS в конвейере на AWS
В настоящее время пытается запустить конвейер количественной обработки данных с использованием экземпляров RDS и EC2 в AWS. Существует одна часть конвейера, которая требует значительных вычислительных мощностей, но не является критически важной для миссии или времени, и поэтому я хотел бы использовать кластер точечных экземпляров EC2 в этой точке.
Я планировал использовать продукт AWS Data Pipeline для проектирования конвейера. Однако я не уверен, как интегрировать точечные экземпляры. Документация AWS предполагает, что точечные экземпляры могут использоваться в кластере AWS EMR с использованием конвейера данных, но не за их пределами. Ищете предложения или лучшие практики.
1 ответ
Точечные экземпляры могут использоваться как для EC2, так и для ресурсов EMR в конвейере данных.
Для экземпляра ec2 вам нужно установить атрибут bidPrice для ресурса. Определение конвейера для ресурса ec2 должно выглядеть следующим образом.
{
"id": "EC2Instance",
"type": "Ec2Resource",
"terminateAfter": "1 Hour",
"spotBidPrice": "<my bid price from 0 to 20.0>"
}
Для кластера emr вам нужно установить атрибут taskInstanceBidPrice на ресурсе. Определение конвейера для ресурса emr должно выглядеть следующим образом.
{
"id" : "MyEmrCluster",
"type" : "EmrCluster",
"taskInstanceBidPrice": "<my bid price from 0 to 20.0>",
"keypair" : "my-key-pair",
"masterInstanceType" : "m3.xlarge",
"coreInstanceType" : "m3.xlarge",
"coreInstanceCount" : "10",
"taskInstanceType" : "m3.xlarge",
"taskInstanceCount": "10",
"releaseLabel": "emr-4.1.0",
"applications": ["spark", "hive", "pig"],
"configuration": {"ref":"myConfiguration"}
}