SMALL
1. Private IP VS Public IP (IPv4)
- 네트워킹
- IPv4: 1.160.10.240 (일반적인 곳) [0-255]:[0-255]:[0-255]:[0-255] (37억개 가량)
- IPv6: 3ffe:1900:4545:3:200:f8ff:fe21:67cf (사물인터넷 IoT에 많이 쓰임)
- Public IP
- Public IP 끼리는 서로 통신 가능
- 기기가 인터넷(www)에 식별되는 것이므로 유일해야 함, 지역 주소 추적 가능
- Private IP
- 사설 네트워크 망 내에서만 통신할 수 있고 외부와 통신하려면 Public IP를 가진 게이트웨이를 거쳐 통신
- Private 망 내에서만 유일하면 됨
- 기기는 NAT + Internet Gateway(proxy)를 이용하여 www 인터넷으로 연결- Permissions
- Elastic IP
- EC2 인스턴스를 중지하고 다시 시작하면 해당 인스턴스의 퍼블릭 IP가 변경될 수 있음
- 인스턴스에 고정된 Public IP가 필요한 경우, 탄력적 IP가 필요
- 탄력적 IP는 삭제하지 않는 한 사용자가 소유하고 있는 퍼블릭 IPv4
- 1:1 관계로 인스턴스와 탄력적 IP 연결 가능
- 인스턴스나 소프트웨어의 오류를 빠르게 대처하여 주소를 계정 내 다른 인스턴스에 매핑 가능
- 계정당 5개의 Elastic IP만 사용 가능 (요청시 증가 가능)
- 탄력적 IP는 비추천
- 매우 좋지 않은 구조적 결정으로 언급됨
- 임의의 Public IP를 사용하여 DNS 이름을 할당하는 것을 추천
- 혹은 로드밸런서를 사용하여 Public IP를 사용하지 않는 방법도 있음
2. EC2 배치 그룹(Placement Group)
- EC2 인스턴스가 AWS 인프라에 위치하는 것을 제어
- 전략
- 클러스터(Cluster): 단일 가용 영역 내에서 지연 시간이 짧은 하드웨어 설정으로 인스턴스를 그룹화
- 우수한 네트워크 (인스턴스간 10Gbps 대역폭)
- Same Rack(하드웨어), Same AZ(인스턴스간 거리가 가까우므로 네트워크 성능 극대화)
- 하드웨어 문제 발생 시 모든 실패가 전파
- 빨리 수행해야 하는 빅데이터나 좋은 응답속도로 고효율 업무를 수행해야 할 때 이용
- 분산(Spread): 인스턴스를 다른 하드웨어에 분산(AZ당 7개의 인스턴스 그룹), 크리티컬한 앱일 경우 사용
- 실패 위험을 최소화 하기위해 모든 EC2 인스턴스가 다른 하드웨어에 배치
- 그룹 규모에 제한 (AZ당 7개)
- 가용성을 극대화하고 위험성을 최소화해야하는 크리티컬한 애플리케이션에 사용
- 파티션(Partition): 분산 배치 그룹과 비슷하게 인스턴스 분산, 하나의 가용 영역 내에 다양한 파티션(다양한 하드웨어 렉 세트)에 인스턴스 분산
- EC2 인스턴스 그룹 당 수백 개의 인스턴스로 확장 가능
- 배치 그룹 내 파티션이 동일한 렉을 공유하지 않으므로 하드웨어 장애의 영향을 격리 가능
- EC2가 어느 파티션에 있는지 알기 위해 메타데이터 서비스를 이용해 접근 및 확인 가능
- 빅데이터 애플리케이션으로 Hadoop, Cassandra, Kafka 에 사용
- 클러스터(Cluster): 단일 가용 영역 내에서 지연 시간이 짧은 하드웨어 설정으로 인스턴스를 그룹화
3. Elastic Network Interface(ENI)
- 탄력적 네트워크 인터페이스, EC2 인스턴스가 네트워크에 액세스 할 수 있도록 하는 인터페이스
- 가상 네트워크 카드를 나타내는 VPC의 논리적 구성 요소
- ENI는 아래의 속성이 포함될 수 있음
- VPC의 IPv4 주소 범위 중 기본 프라이빗 IPv4 주소
- VPC의 IPV4 주소 범위 중 하나 이상의 보조 Private IPv4 주소
- Private IPv4 주소당 한개의 탄력적 IP주소
- 한 개의 Public IPv4 주소
- 한개 이상의 IPv6 주소
- 하나 이상의 보안 그룹
- MAC 주소
- EC2 인스턴스와 독립적으로 ENI를 생성하고 즉시 연결학나 장애 조치를 위해 ENI를 EC2 인스턴스에서 이동 가능
- 특정 가용 영역에 바인딩 (다른 AZ에 있는 EC2 인스턴스에 ENI 연결 불가)
- 인스턴스 2개를 한번에 띄우면 각 인스턴스는 각각의 ENI를 가짐
- 새로운 ENI를 만들어 2개 인스턴스들의 Secondary ENI로 만들 수 있음
- 인스턴스를 꺼도 직접 만든 ENI는 삭제되지 않음(default 만 삭제)
4. EC2 Hibernate (절전 모드)
- 기존 인스턴스의 생리
- stop: 디스크 내 데이터(EBS)는 유지되어 다음 시작 때 다시 사용, the data on disk (EBS) is kept intact in the next start
- terminate: EBS Volumn은 삭제되고 잃어버린다. any EBS volumes (root) also set-up to be destroyed is lost
- 기존 start 과정: OS 부팅 & EC2 User Data Script 실행 -> application 실행 -> chace warm up -> wait
- 절전모드
- in-memory(RAM) 보존
- 인스턴스 부팅이 훨씬 빠르다
- RAM 상태가 root EBS 볼륨에 사용, EBS 볼륨 암호화 필요(인스턴스 스토어 볼륨 X)
- 사용 예시
- 실행중인 인스턴스를 Hibernate 모드로 변경
- EC2 인스턴스 Stopping & RAM의 내용이 EBS 볼륨에 dump
- EC2 인스턴스 Stopped & RAM 내용 삭제됨
- 인스턴스 재시작시 디스크에서 RAM을 불러와 EC2 인스턴스 메모리로 복구
- 정지된적 없었던 것처럼 복구
- 용례
- 오래 실행하는 프로세스를 가지고 중지하지 않을 때
- RAM 상태를 저장하고 싶을 때
- 빠르게 재부팅을 하고 싶을 때
- 초기화에 시간이 오래 걸리는 서비스
LIST
'develop > AWS' 카테고리의 다른 글
[SAA] ELB(Elastic Load Balancer), ASG(Auto Scaling Group) (1) | 2024.04.20 |
---|---|
[SAA] EC2 Instance Storage (EBS, AMI, Amazon EFS) (1) | 2024.04.19 |
[SAA] Amazon EC2 (Amazon Elastic Compute Cloud) (0) | 2024.04.17 |
[SAA] IAM(Identify and Access Management) (1) | 2024.01.26 |
[SAA] 시험 범위정리 (0) | 2024.01.26 |