{ "version": 4, "terraform_version": "1.3.1", "serial": 155, "lineage": "032f4e32-eac2-150d-d701-e7669deda40a", "outputs": {}, "resources": [ { "mode": "data", "type": "archive_file", "name": "python-start", "provider": "provider[\"registry.terraform.io/hashicorp/archive\"]", "instances": [ { "schema_version": 0, "attributes": { "excludes": null, "id": "daae77ced1e4b958c09e9c889ada79be8926a3a7", "output_base64sha256": "X2llCFxq3rWrZH+v+rfYD/2xxxAg69Xkhuc6ElW9DSM=", "output_file_mode": null, "output_md5": "b4bf9b7ae2ff9bfe896af6ebb8c9dc5c", "output_path": "./code/spot_start.zip", "output_sha": "daae77ced1e4b958c09e9c889ada79be8926a3a7", "output_size": 570, "source": [], "source_content": null, "source_content_filename": null, "source_dir": null, "source_file": "./code/spot_start.py", "type": "zip" }, "sensitive_attributes": [] } ] }, { "mode": "data", "type": "archive_file", "name": "python-stop", "provider": "provider[\"registry.terraform.io/hashicorp/archive\"]", "instances": [ { "schema_version": 0, "attributes": { "excludes": null, "id": "b71d1d33f0a7ce242baaa2ccb71eab56fb2661a0", "output_base64sha256": "T6nY95UEy5cqlpacLlnkJybiBvmJ4+oP9wWTut+vKDg=", "output_file_mode": null, "output_md5": "36f88fa43ffb3f5547d4ec89b867c805", "output_path": "./code/spot_stop.zip", "output_sha": "b71d1d33f0a7ce242baaa2ccb71eab56fb2661a0", "output_size": 568, "source": [], "source_content": null, "source_content_filename": null, "source_dir": null, "source_file": "./code/spot_stop.py", "type": "zip" }, "sensitive_attributes": [] } ] }, { "mode": "managed", "type": "aws_alb", "name": "nlb-spot-kr-ingress", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "access_logs": [ { "bucket": "", "enabled": false, "prefix": "" } ], "arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:loadbalancer/net/nlb-spot-kr-ingress/78764994534ff2f2", "arn_suffix": "net/nlb-spot-kr-ingress/78764994534ff2f2", "customer_owned_ipv4_pool": "", "desync_mitigation_mode": null, "dns_name": "nlb-spot-kr-ingress-78764994534ff2f2.elb.ap-northeast-2.amazonaws.com", "drop_invalid_header_fields": null, "enable_cross_zone_load_balancing": false, "enable_deletion_protection": false, "enable_http2": null, "enable_waf_fail_open": null, "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:loadbalancer/net/nlb-spot-kr-ingress/78764994534ff2f2", "idle_timeout": null, "internal": false, "ip_address_type": "ipv4", "load_balancer_type": "network", "name": "nlb-spot-kr-ingress", "name_prefix": null, "preserve_host_header": null, "security_groups": [], "subnet_mapping": [ { "allocation_id": "", "ipv6_address": "", "outpost_id": "", "private_ipv4_address": "", "subnet_id": "subnet-0073a61bc56a68a3e" }, { "allocation_id": "", "ipv6_address": "", "outpost_id": "", "private_ipv4_address": "", "subnet_id": "subnet-00c363356f133411d" }, { "allocation_id": "", "ipv6_address": "", "outpost_id": "", "private_ipv4_address": "", "subnet_id": "subnet-07aa5e879a262014d" } ], "subnets": [ "subnet-0073a61bc56a68a3e", "subnet-00c363356f133411d", "subnet-07aa5e879a262014d" ], "tags": { "Environment": "nlb-spot-kr-ingress" }, "tags_all": { "Environment": "nlb-spot-kr-ingress" }, "timeouts": null, "vpc_id": "vpc-00ba2b0e9ad59f0ed", "zone_id": "ZIBE1TIR4HY56" }, "sensitive_attributes": [], "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6NjAwMDAwMDAwMDAwLCJ1cGRhdGUiOjYwMDAwMDAwMDAwMH19" } ] }, { "mode": "managed", "type": "aws_alb_listener", "name": "nlb-listener-http-spot", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "alpn_policy": null, "arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:listener/net/nlb-spot-kr-ingress/78764994534ff2f2/877ddd740e570ec4", "certificate_arn": null, "default_action": [ { "authenticate_cognito": [], "authenticate_oidc": [], "fixed_response": [], "forward": [], "order": 1, "redirect": [], "target_group_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4", "type": "forward" } ], "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:listener/net/nlb-spot-kr-ingress/78764994534ff2f2/877ddd740e570ec4", "load_balancer_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:loadbalancer/net/nlb-spot-kr-ingress/78764994534ff2f2", "port": 443, "protocol": "TCP", "ssl_policy": "", "tags": {}, "tags_all": {}, "timeouts": null }, "sensitive_attributes": [], "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsicmVhZCI6NjAwMDAwMDAwMDAwfX0=", "dependencies": [ "aws_alb.nlb-spot-kr-ingress", "aws_alb_target_group.tg-spot-kr-tcp-30001" ] } ] }, { "mode": "managed", "type": "aws_alb_listener", "name": "nlb-listener-tls-spot", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "alpn_policy": null, "arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:listener/net/nlb-spot-kr-ingress/78764994534ff2f2/fbb26c612065fd23", "certificate_arn": null, "default_action": [ { "authenticate_cognito": [], "authenticate_oidc": [], "fixed_response": [], "forward": [], "order": 1, "redirect": [], "target_group_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1", "type": "forward" } ], "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:listener/net/nlb-spot-kr-ingress/78764994534ff2f2/fbb26c612065fd23", "load_balancer_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:loadbalancer/net/nlb-spot-kr-ingress/78764994534ff2f2", "port": 80, "protocol": "TCP", "ssl_policy": "", "tags": {}, "tags_all": {}, "timeouts": null }, "sensitive_attributes": [], "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsicmVhZCI6NjAwMDAwMDAwMDAwfX0=", "dependencies": [ "aws_alb.nlb-spot-kr-ingress", "aws_alb_target_group.tg-spot-kr-tcp-30000" ] } ] }, { "mode": "managed", "type": "aws_alb_target_group", "name": "tg-spot-kr-tcp-30000", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1", "arn_suffix": "targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1", "connection_termination": false, "deregistration_delay": "300", "health_check": [ { "enabled": true, "healthy_threshold": 3, "interval": 30, "matcher": "", "path": "", "port": "traffic-port", "protocol": "TCP", "timeout": 10, "unhealthy_threshold": 3 } ], "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1", "ip_address_type": "ipv4", "lambda_multi_value_headers_enabled": false, "load_balancing_algorithm_type": null, "name": "tg-spot-kr-tcp-30000", "name_prefix": null, "port": 30000, "preserve_client_ip": "true", "protocol": "TCP", "protocol_version": null, "proxy_protocol_v2": false, "slow_start": 0, "stickiness": [ { "cookie_duration": 0, "cookie_name": "", "enabled": false, "type": "source_ip" } ], "tags": {}, "tags_all": {}, "target_failover": [ { "on_deregistration": null, "on_unhealthy": null } ], "target_type": "instance", "vpc_id": "vpc-00ba2b0e9ad59f0ed" }, "sensitive_attributes": [], "private": "bnVsbA==" } ] }, { "mode": "managed", "type": "aws_alb_target_group", "name": "tg-spot-kr-tcp-30001", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4", "arn_suffix": "targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4", "connection_termination": false, "deregistration_delay": "300", "health_check": [ { "enabled": true, "healthy_threshold": 3, "interval": 30, "matcher": "", "path": "", "port": "traffic-port", "protocol": "TCP", "timeout": 10, "unhealthy_threshold": 3 } ], "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4", "ip_address_type": "ipv4", "lambda_multi_value_headers_enabled": false, "load_balancing_algorithm_type": null, "name": "tg-spot-kr-tcp-30001", "name_prefix": null, "port": 30001, "preserve_client_ip": "true", "protocol": "TCP", "protocol_version": null, "proxy_protocol_v2": false, "slow_start": 0, "stickiness": [ { "cookie_duration": 0, "cookie_name": "", "enabled": false, "type": "source_ip" } ], "tags": {}, "tags_all": {}, "target_failover": [ { "on_deregistration": null, "on_unhealthy": null } ], "target_type": "instance", "vpc_id": "vpc-00ba2b0e9ad59f0ed" }, "sensitive_attributes": [], "private": "bnVsbA==" } ] }, { "mode": "managed", "type": "aws_alb_target_group_attachment", "name": "spot-master-http-2a", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "availability_zone": null, "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1-20221208074319228900000004", "port": 30000, "target_group_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1", "target_id": "i-0d60fb3dce0af86dd" }, "sensitive_attributes": [], "private": "bnVsbA==", "dependencies": [ "aws_alb_target_group.tg-spot-kr-tcp-30000" ] } ] }, { "mode": "managed", "type": "aws_alb_target_group_attachment", "name": "spot-master-http-2b", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "availability_zone": null, "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1-20221208074319108100000001", "port": 30000, "target_group_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1", "target_id": "i-0a55a0970db57e3f0" }, "sensitive_attributes": [], "private": "bnVsbA==", "dependencies": [ "aws_alb_target_group.tg-spot-kr-tcp-30000" ] } ] }, { "mode": "managed", "type": "aws_alb_target_group_attachment", "name": "spot-master-http-2c", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "availability_zone": null, "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1-20221208074319455600000005", "port": 30000, "target_group_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30000/bb1ec3447d8f55f1", "target_id": "i-0e83929146290be1c" }, "sensitive_attributes": [], "private": "bnVsbA==", "dependencies": [ "aws_alb_target_group.tg-spot-kr-tcp-30000" ] } ] }, { "mode": "managed", "type": "aws_alb_target_group_attachment", "name": "spot-master-tls-2a", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "availability_zone": null, "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4-20221208074319183800000003", "port": 30001, "target_group_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4", "target_id": "i-0d60fb3dce0af86dd" }, "sensitive_attributes": [], "private": "bnVsbA==", "dependencies": [ "aws_alb_target_group.tg-spot-kr-tcp-30001" ] } ] }, { "mode": "managed", "type": "aws_alb_target_group_attachment", "name": "spot-master-tls-2b", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "availability_zone": null, "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4-20221208074319533500000006", "port": 30001, "target_group_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4", "target_id": "i-0a55a0970db57e3f0" }, "sensitive_attributes": [], "private": "bnVsbA==", "dependencies": [ "aws_alb_target_group.tg-spot-kr-tcp-30001" ] } ] }, { "mode": "managed", "type": "aws_alb_target_group_attachment", "name": "spot-master-tls-2c", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "availability_zone": null, "id": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4-20221208074319153500000002", "port": 30001, "target_group_arn": "arn:aws:elasticloadbalancing:ap-northeast-2:508259851457:targetgroup/tg-spot-kr-tcp-30001/fa75e29a3ffe1fa4", "target_id": "i-0e83929146290be1c" }, "sensitive_attributes": [], "private": "bnVsbA==", "dependencies": [ "aws_alb_target_group.tg-spot-kr-tcp-30001" ] } ] }, { "mode": "managed", "type": "aws_iam_role", "name": "spot-lambda-role", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "arn": "arn:aws:iam::508259851457:role/spot-lambda-role", "assume_role_policy": "{\"Statement\":[{\"Action\":\"sts:AssumeRole\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"lambda.amazonaws.com\"},\"Sid\":\"\"}],\"Version\":\"2012-10-17\"}", "create_date": "2022-12-08T07:43:24Z", "description": "", "force_detach_policies": false, "id": "spot-lambda-role", "inline_policy": [], "managed_policy_arns": [], "max_session_duration": 3600, "name": "spot-lambda-role", "name_prefix": "", "path": "/", "permissions_boundary": null, "tags": {}, "tags_all": {}, "unique_id": "AROAXMVVF3TAUBQDVKMXS" }, "sensitive_attributes": [], "private": "bnVsbA==" } ] }, { "mode": "managed", "type": "aws_lambda_function", "name": "spot-auto-start", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "architectures": [ "x86_64" ], "arn": "arn:aws:lambda:ap-northeast-2:508259851457:function:spot-auto-start", "code_signing_config_arn": "", "dead_letter_config": [], "description": "", "environment": [ { "variables": { "LOG_LEVEL": "INFO" } } ], "ephemeral_storage": [ { "size": 512 } ], "file_system_config": [], "filename": "./code/spot_start.zip", "function_name": "spot-auto-start", "handler": "main.lambda_handler", "id": "spot-auto-start", "image_config": [], "image_uri": "", "invoke_arn": "arn:aws:apigateway:ap-northeast-2:lambda:path/2015-03-31/functions/arn:aws:lambda:ap-northeast-2:508259851457:function:spot-auto-start/invocations", "kms_key_arn": "", "last_modified": "2022-12-08T08:16:36.000+0000", "layers": [], "memory_size": 128, "package_type": "Zip", "publish": false, "qualified_arn": "arn:aws:lambda:ap-northeast-2:508259851457:function:spot-auto-start:$LATEST", "qualified_invoke_arn": "arn:aws:apigateway:ap-northeast-2:lambda:path/2015-03-31/functions/arn:aws:lambda:ap-northeast-2:508259851457:function:spot-auto-start:$LATEST/invocations", "reserved_concurrent_executions": -1, "role": "arn:aws:iam::508259851457:role/spot-lambda-role", "runtime": "python3.9", "s3_bucket": null, "s3_key": null, "s3_object_version": null, "signing_job_arn": "", "signing_profile_version_arn": "", "snap_start": [], "source_code_hash": "X2llCFxq3rWrZH+v+rfYD/2xxxAg69Xkhuc6ElW9DSM=", "source_code_size": 570, "tags": {}, "tags_all": {}, "timeout": 3, "timeouts": null, "tracing_config": [ { "mode": "PassThrough" } ], "version": "$LATEST", "vpc_config": [] }, "sensitive_attributes": [], "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDB9fQ==", "dependencies": [ "aws_iam_role.spot-lambda-role", "data.archive_file.python-start" ] } ] }, { "mode": "managed", "type": "aws_lambda_function", "name": "spot-auto-stop", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 0, "attributes": { "architectures": [ "x86_64" ], "arn": "arn:aws:lambda:ap-northeast-2:508259851457:function:spot-auto-stop", "code_signing_config_arn": "", "dead_letter_config": [], "description": "", "environment": [ { "variables": { "LOG_LEVEL": "INFO" } } ], "ephemeral_storage": [ { "size": 512 } ], "file_system_config": [], "filename": "./code/spot_stop.zip", "function_name": "spot-auto-stop", "handler": "main.lambda_handler", "id": "spot-auto-stop", "image_config": [], "image_uri": "", "invoke_arn": "arn:aws:apigateway:ap-northeast-2:lambda:path/2015-03-31/functions/arn:aws:lambda:ap-northeast-2:508259851457:function:spot-auto-stop/invocations", "kms_key_arn": "", "last_modified": "2022-12-08T08:03:18.000+0000", "layers": [], "memory_size": 128, "package_type": "Zip", "publish": false, "qualified_arn": "arn:aws:lambda:ap-northeast-2:508259851457:function:spot-auto-stop:$LATEST", "qualified_invoke_arn": "arn:aws:apigateway:ap-northeast-2:lambda:path/2015-03-31/functions/arn:aws:lambda:ap-northeast-2:508259851457:function:spot-auto-stop:$LATEST/invocations", "reserved_concurrent_executions": -1, "role": "arn:aws:iam::508259851457:role/spot-lambda-role", "runtime": "python3.9", "s3_bucket": null, "s3_key": null, "s3_object_version": null, "signing_job_arn": "", "signing_profile_version_arn": "", "snap_start": [], "source_code_hash": "T6nY95UEy5cqlpacLlnkJybiBvmJ4+oP9wWTut+vKDg=", "source_code_size": 568, "tags": {}, "tags_all": {}, "timeout": 3, "timeouts": null, "tracing_config": [ { "mode": "PassThrough" } ], "version": "$LATEST", "vpc_config": [] }, "sensitive_attributes": [], "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDB9fQ==", "dependencies": [ "aws_iam_role.spot-lambda-role", "data.archive_file.python-stop" ] } ] }, { "mode": "managed", "type": "aws_route53_record", "name": "spot-dns-keycloak", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 2, "attributes": { "alias": [ { "evaluate_target_health": true, "name": "nlb-spot-kr-ingress-78764994534ff2f2.elb.ap-northeast-2.amazonaws.com", "zone_id": "ZIBE1TIR4HY56" } ], "allow_overwrite": null, "failover_routing_policy": [], "fqdn": "test.spot.datasaker.io", "geolocation_routing_policy": [], "health_check_id": "", "id": "Z072735718G25WNVKU834_test.spot.datasaker.io_A", "latency_routing_policy": [], "multivalue_answer_routing_policy": null, "name": "test.spot.datasaker.io", "records": [], "set_identifier": "", "ttl": 0, "type": "A", "weighted_routing_policy": [], "zone_id": "Z072735718G25WNVKU834" }, "sensitive_attributes": [], "private": "eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==", "dependencies": [ "aws_alb.nlb-spot-kr-ingress" ] } ] }, { "mode": "managed", "type": "aws_route53_record", "name": "spot-dns-krakend", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 2, "attributes": { "alias": [ { "evaluate_target_health": true, "name": "nlb-spot-kr-ingress-78764994534ff2f2.elb.ap-northeast-2.amazonaws.com", "zone_id": "ZIBE1TIR4HY56" } ], "allow_overwrite": null, "failover_routing_policy": [], "fqdn": "api.spot.datasaker.io", "geolocation_routing_policy": [], "health_check_id": "", "id": "Z072735718G25WNVKU834_api.spot.datasaker.io_A", "latency_routing_policy": [], "multivalue_answer_routing_policy": null, "name": "api.spot.datasaker.io", "records": [], "set_identifier": "", "ttl": 0, "type": "A", "weighted_routing_policy": [], "zone_id": "Z072735718G25WNVKU834" }, "sensitive_attributes": [], "private": "eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==", "dependencies": [ "aws_alb.nlb-spot-kr-ingress" ] } ] } ], "check_results": [] }