Я хочу архивировать логику, аналогичную команде CLI: aws emr create-security-configuration --name [name] --security-configuration ... и использовать его далее в скрипте Terraform.Есть ли способ создать конфигурацию безопасности EMR с CloudFormation/Terraform
ответ
Здесь вы можете ознакомиться с основными примерами https://www.terraform.io/docs/providers/aws/r/security_group.html и здесь https://www.terraform.io/docs/providers/aws/r/emr_cluster.html.
Это было бы похоже на:
resource "aws_security_group" "sg" {
name = "allow_all"
description = "Allow all inbound traffic"
ingress {
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = ["0.0.0.0/0"]
}
egress {
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = ["0.0.0.0/0"]
prefix_list_ids = ["pl-12c4e678"]
}
}
resource "aws_emr_cluster" "emr-test-cluster" {
name = "emr-test-arn"
release_label = "emr-4.6.0"
applications = ["Spark"]
termination_protection = false
keep_job_flow_alive_when_no_steps = true
ec2_attributes {
subnet_id = "${aws_subnet.main.id}"
emr_managed_master_security_group = "${aws_security_group.sg.id}"
emr_managed_slave_security_group = "${aws_security_group.sg.id}"
instance_profile = "${aws_iam_instance_profile.emr_profile.arn}"
}
...
}
Update 06/07/2017: На Jun 6 2017, то AWS::EMR::SecurityConfiguration
ресурс теперь доступен в CloudFormation, и по состоянию на 11 мая 2017 года (v0.9.5) ресурс emr_security_configuration
доступен в Terraform.
К сожалению, это не выглядит, как это в настоящее время можно указать SecurityConfiguration
для RunJobFlow
API с использованием либо CloudFormation в AWS::EMR::Cluster
CloudFormation ресурса или aws_emr_cluster
ресурса терраформировать, и нет ресурсов, которые соответствуют CreateSecurityConfiguration
API.
Функция EMR Security Configuration была добавлена на Sep 21 2016, и, как правило, существует задержка между новыми анонсами функций и их соответствующей поддержкой в существующих ресурсах CloudFormation.
Хотя Terraform, как правило, обновляется быстрее, так как проект с открытым исходным кодом с большим сообществом разработчиков, ресурс aws_emr_cluster
по-прежнему относительно новый (выпущен Oct 6 2016). Я открыл GitHub issue отслеживание запроса функции для этой реализации.
В настоящее время вы можете создать Custom Resource, который вызывает API-интерфейсы и RunJobFlow
.
Вопрос не о группах безопасности. –