टेराफॉर्म 0.9.3 के साथ एक एडब्ल्यूएस लैम्ब्डा फ़ंक्शन बनाते समय, मैं इसे अपने चयनित वीपीसी में शामिल करने में विफल रहा हूं।टेराफॉर्म पर एडब्ल्यूएस लैम्ब्डा वीपीसी
resource "aws_lambda_function" "lambda_function" {
s3_bucket = "${var.s3_bucket}"
s3_key = "${var.s3_key}"
function_name = "${var.function_name}"
role = "${var.role_arn}"
handler = "${var.handler}"
runtime = "${var.runtime}"
timeout = "30"
memory_size = 256
publish = true
vpc_config {
subnet_ids = ["${var.subnet_ids}"]
security_group_ids = ["${var.security_group_ids}"]
}
}
नीति मैं इस भूमिका के लिए उपयोग कर रहा हूँ
data "aws_iam_policy_document" "lambda-policy_policy_document" {
statement {
effect = "Allow"
actions = [
"ec2:DescribeSecurityGroups",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents",
"ec2:CreateNetworkInterface",
"ec2:DescribeNetworkInterfaces",
"ec2:DeleteNetworkInterface"
]
resources = ["*"]
}
}
संसाधनों ठीक बनाई गई हैं, अगर मैं VPC जोड़ने का प्रयास करते है:
इस तरह कैसे मेरे समारोह लग रहा है और एडब्ल्यूएस कंसोल के माध्यम से सबनेट्स यह सब काम करता है।
अद्यतन (निर्माण योजना):
module.******.aws_lambda_function.lambda_function
arn: "<computed>"
environment.#: "1"
environment.0.variables.%: "1"
environment.0.variables.environment: "******"
function_name: "******"
handler: "******"
last_modified: "<computed>"
memory_size: "256"
publish: "true"
qualified_arn: "<computed>"
role: "******"
runtime: "******"
s3_bucket: "******"
s3_key: "******"
source_code_hash: "<computed>"
timeout: "30"
version: "<computed>"
vpc_config.#: "1"
vpc_config.0.vpc_id: "<computed>"
हालांकि, अगर मैं terraform योजना को पुन: चलाने, VPC config हमेशा बदल जाता है।
vpc_config.#: "0" => "1" (forces new resource)
क्या आप योजना उत्पादन दिखा सकते हैं जब आपके पास लैम्ब्डा कार्य नहीं है? – ydaetskcoR
@ydaetskcoR सिर्फ सृजन योजना – joaofs
के साथ अपडेट किया गया है जो मुझे गलत लगता है। मैंने अभी अपने स्वयं के लैम्ब्डा कार्यों में से एक की योजना बनाई है जो वीपीसी के अंदर होती है और मुझे सुरक्षा समूह आईडी और सबनेट आईडी के लिए योजना पर अतिरिक्त लाइनें दिखाई देती हैं जो आपकी योजना नहीं दिखाती हैं। कुछ ऐसा: 'vpc_config.0.subnet_ids.1220732747:" सबनेट-12345678 "'। क्या आपने अपनी सबनेट आईडी की जांच की है और सुरक्षा समूह आईडी सही तरीके से पारित की जा रही हैं? – ydaetskcoR