분류 전체보기 41

AWS DirectConnect와 Transit G/W 연결해서 내부 통신 IaC

AWS Direct Connect와 Transit Gateway를 연결하여 On-Premise 장비에서 AWS 내의 Lambda를 호출할 수 있도록 하는 구조를 Terraform 코드1) IP 주소로 Lambda 호출2) DNS 이름으로 Lambda 호출 설계 개요Direct Connect: AWS와 On-Premise 간에 전용 네트워크 연결을 설정Transit Gateway: Direct Connect와 VPC 간의 라우팅을 관리Lambda: 호출 대상이 되는 Lambda 함수는 VPC 내에 배포되며, VPC를 통해 On-Premise에서 접근 가능Private Subnet: Lambda는 Private Subnet에 배치되어 외부 인터넷 없이 내부 네트워크에서 접근DNS 설정 (옵션): Lambda..

AWS 2024.10.22

AWS S3와 CloudFront 연동 IaC

S3 버킷: 파일을 저장할 곳CloudFront 배포: S3 파일을 전 세계적으로 배포할 Content Delivery Network(CDN)S3 버킷 정책: CloudFront가 S3 버킷에 접근할 수 있도록 허용# AWS Provider 설정provider "aws" { region = "ap-northeast-2" # 사용할 리전 (CloudFront는 글로벌이므로 S3 리전만 지정)}# 1. S3 버킷 생성resource "aws_s3_bucket" "my_bucket" { bucket = "my-unique-bucket-name" # S3 버킷 이름. 고유해야 함. # 버킷에 대해 기본적인 설정 (예: 웹 호스팅, 버전 관리 등) acl = "private" # CloudF..

AWS 2024.10.22

AWS EFS 리소스

EFS파일 시스템액세스 포인트 1. EFS 파일 시스템 (EFS File System)리소스 이름: aws_efs_file_system필수 입력 파라미터:creation_token: 파일 시스템을 생성할 때 고유하게 식별하는 토큰.tags: 태그 지정은 필수는 아니지만, 리소스를 잘 관리하기 위해 추천됩니다.옵션 입력 파라미터:encrypted: 파일 시스템의 데이터가 암호화될지 여부. 기본값은 false.performance_mode: 성능 모드를 설정합니다. 기본값은 generalPurpose이고, maxIO로 설정할 수 있습니다.throughput_mode: 파일 시스템의 처리량을 관리하는 방식. 기본값은 bursting, 다른 옵션은 provisioned.provisioned_throughput_..

AWS 2024.10.22

AWS IaC 배포 방법들

AWS에서 인프라를 코드(Infrastructure as Code, IaC)로 배포하는 방법에는 여러 가지가 있지만, 가장 좋은 방법은 구체적인 요구 사항과 프로젝트 환경에 따라 다름. 대표적인 IaC 도구들1. AWS CloudFormationAWS에서 제공하는 기본 IaC 도구로, 템플릿 파일을 사용하여 AWS 리소스를 정의하고 자동으로 배포장점: AWS에 최적화되어 있고, AWS 서비스들과 깊이 통합단점: YAML/JSON 문법이 복잡할 수 있으며, 사용자 정의가 제한될 수 있음2. TerraformHashiCorp에서 개발한 오픈 소스 IaC 도구로, AWS뿐만 아니라 다양한 클라우드 플랫폼에서 사용장점: 여러 클라우드를 지원하며, 모듈화 및 코드 재사용이 뛰어남. 상태 관리가 뛰어나며, 팀 협업..

AWS 2024.10.22

S3에서 IaC로 폴더 만들기

Terraform 구성 파일1. main.tf# AWS 제공자 설정provider "aws" { region = "ap-northeast-2" # 사용할 AWS 리전}# S3 버킷 생성resource "aws_s3_bucket" "my_bucket" { bucket = "my-unique-bucket-name" # S3 버킷의 이름 (유일해야 함) acl = "private" # 버킷 접근 제어 목록 (ACL) # 버킷에 태그 추가 tags = { Name = "MyS3Bucket" Environment = "Dev" }}# 첫 번째 단계 폴더 생성resource "aws_s3_bucket_object" "first_folder"..

AWS 2024.10.22

AWS VPC Transit G/W, 트래픽 미러링, VPC 래티스 리소스

VPC Transit GatewayTransit GatewayTransit Gateway 연결Transit Gateway 정책 테이블Transit Gateway 라우팅 테이블Transit Gateway 멀티캐스트트래픽 미러링미러 세션미러 대상미러 필터VPC 래티스시작하기서비스 네트워크서비스대상 그룹1. Transit Gateway필수 항목:amazon_side_asn: AWS 측 ASN 번호 (필수)선택 항목:description: 설명 (선택적)tags: 태그 (선택적)리소스 이름: aws_ec2_transit_gatewayresource "aws_ec2_transit_gateway" "main_tgw" { amazon_side_asn = 64512 # 필수: ..

AWS 2024.10.22

AWS VPN 가상 사설 네트워크, AWS가 확인한 액세스 리소스

VPN가상 사설 네트워크(VPN)고객 게이트웨이가상 프라이빗 게이트웨이Site-to-Site VPN 연결Client VPN 엔드포인트AWS가 확인한 액세스확인된 액세스 인스턴스확인된 액세스 신뢰 공급자확인된 액세스 그룹확인된 액세스 엔드포인트 1. 고객 게이트웨이 (Customer Gateway)필수 항목:bgp_asn: BGP ASN 번호 (필수)ip_address: 고객 게이트웨이의 IP 주소 (필수)선택 항목:tags: 태그 (선택적)리소스 이름: aws_customer_gatewayresource "aws_customer_gateway" "main_customer_gateway" { bgp_asn = 65000 # 필수: BGP ASN ip_address ..

AWS 2024.10.22

AWS VPC 보안, DNS 방화벽, 네트워크 방화벽 리소스

VPC 보안네트워크 ACL보안 그룹DNS 방화벽규칙 그룹도메인 목록네트워크 방화벽방화벽방화벽 정책Network Firewall 규칙 그룹TLS 검사 구성네트워크 방화벽 리소스 그룹1. VPC 네트워크 ACL (Network ACL)필수 항목:vpc_id: 네트워크 ACL이 속할 VPC ID (필수)선택 항목:subnet_ids: 연결된 서브넷 IDs (선택적)egress: 아웃바운드 규칙 (선택적)ingress: 인바운드 규칙 (선택적)리소스 이름: aws_network_aclresource "aws_network_acl" "main_nacl" { vpc_id = aws_vpc.main_vpc.id # 필수: VPC ID # 옵션: 인바운드 규칙 ingress { from_port = 8..

AWS 2024.10.22

AWS VPC 리소스

VPC서브넷라우팅 테이블인터넷 게이트웨이송신 전용 인터넷 게이트웨이캐리어 게이트웨이DHCP 옵션 세트탄력적 IP관리형 접두사 목록엔드포인트엔드포인트 서비스NAT 게이트웨이피어링 연결 1. VPC (Virtual Private Cloud)필수 항목:cidr_block: VPC에 할당할 CIDR 블록 (필수)선택 항목:enable_dns_support: DNS 해석 기능 활성화 (옵션)enable_dns_hostnames: DNS 호스트 이름 활성화 (옵션)tags: 태그 추가 (옵션)리소스 이름: aws_vpcresource "aws_subnet" "public_subnet" { vpc_id = aws_vpc.main_vpc.id # 필수: 연결된 VPC ID cidr_block ..

AWS 2024.10.22

AWS S3 리소스

Amazon S3버킷Access Grants액세스 지점객체 Lambda 액세스 지점다중 리전 액세스 지점배치 작업S3용 IAM Access Analyzer 1. S3 버킷 (Bucket)필수 항목:bucket: 버킷 이름 (필수)선택 항목:acl: 버킷의 접근 제어 목록 (옵션)versioning: 버킷의 버전 관리 설정 (옵션)server_side_encryption_configuration: 서버 측 암호화 설정 (옵션)tags: 버킷에 태그를 추가 (옵션)리소스 이름: aws_s3_bucketresource "aws_s3_bucket" "example_bucket" { bucket = "my-example-bucket" # 필수: 버킷 이름 # 옵션: 접근 제어 목록을 설정 (기본값은 priv..

AWS 2024.10.22