# # Copyright Amazon.com, Inc. and its affiliates. All Rights Reserved. # SPDX-License-Identifier: MIT # # Licensed under the MIT License. See the LICENSE accompanying this file # for the specific language governing permissions and limitations under # the License. # #EC2 instance data "template_file" "ec2_outposts_user_data" { template = file("${path.module}/user-data/user-data.sh") vars = { Region = data.aws_region.region.name } } resource "aws_instance" "ec2_outposts_test" { depends_on = [aws_vpc_endpoint_route_table_association.route_outposts_subnet_s3] count = var.number_EC2_instances ami = var.ec2_ami_id instance_type = var.ec2_instance_type monitoring = true subnet_id = module.test-vpc.subnet_outposts_ids[count.index % var.number_AZ] iam_instance_profile = module.test-vpc.iam_instance_profile_ec2_ssm_id user_data = data.template_file.ec2_outposts_user_data.rendered vpc_security_group_ids = [aws_security_group.ec2_outposts_test.id] tags = merge( local.common_tags, { "Name" = "ec2-outposts-Client-ECS-Kinesis" }, ) } resource "aws_security_group" "ec2_outposts_test" { name = "outpost-ec2-sec-group-aod-challenge" description = "Security group for ec2 instances in outpost - aod challenge" vpc_id = module.test-vpc.vpc_id tags = merge( local.common_tags, { "Name" = "outpost-ec2-client-sec-group" }, ) } resource "aws_security_group_rule" "ec2_outposts_test_e_1" { type = "egress" from_port = 80 to_port = 80 protocol = "tcp" cidr_blocks = ["0.0.0.0/0"] security_group_id = aws_security_group.ec2_outposts_test.id } resource "aws_security_group_rule" "ec2_outposts_test_e_2" { type = "egress" from_port = 443 to_port = 443 protocol = "tcp" cidr_blocks = ["0.0.0.0/0"] security_group_id = aws_security_group.ec2_outposts_test.id }