네트워크 종류
IPv4: 32비트
IPv6: 128비트, IoT
고정 IP: IP가 고정적으로 부여, 보안성 우수, 업체 및 기관에서 사용
유동 IP: IP가 부여 할때마다 바뀜. 대부분 유동 IP
사설 IP: 공유기에 연결된 가정, 회사의 pc, 네트워크 기기가 사용하는 IP
=> 특정 네트워크 안에서 내부적으로 사용되는 IP
공인 IP: ISP(Internet Service Providor)가 IP를 부여 받고 일반 사용자에게 제공
=> ICANN에서 발급받은 IP가 공인 IP이다.
사설IP(PC) <-> 라우터(NAT) <-> 공인IP(인터넷)
NAT(Network Adress Translation): 네트워크 주소 변환
탄력적 IP
EC2 인스턴스를 시작하고 중지할 때 공용 IP를 바꿀 수 있게 해주는 것.
인스턴스에 고정된 공용 IP를 사용하려면 탄력적IP가 필요하다.
계정당 탄력적IP를 5개만 사용할 수 있다.
탄력적IP를 사용하지 않는것을 권장한다. -> 대신 임의의 공용 IP를 써서 DNS을 할당 하는것이 좋다.
로드 밸런서를 이용해 공용IP를 사용하지 않을 수도 있다.
AWS EC2
ssh는 공용IP사용
인스턴스를 껐다 킬때마다 새로운 공용 IP 할당.
배치 그룹: EC2 인스턴스가 AWS 인프라에 배치되는 방식을 제어.
ex) AWS의 하드웨어와 직접적인 상호 작용을 하지 않지만 EC2 인스턴스가 어떻게 배치될지 알려줌.
배치 그룹 전략
1) 클러스터 배치 그룹(Cluster): 단일 가용 영역 내에서 지연 시간이 짧은 하드웨어 설정으로 인스턴스를 그룹화
모든 인스턴스가 동일한 랙에 있다. -> 동일한 하드웨어와 동일한 가용 영역에 있다.
높은 성능을 제공하지만 위험하다. -> 랙에 오류가 발생하면 모든 인스턴스가 오류가 발생.
사용 예) 빅데이터 작업, 짧은 지연시간과 높은 네트워크 처리량을 필요로 하는 애플리케이션
2) 분산 배치 그룹(spread): 인스턴스가 다른 하드웨어에 분산해 배치
가장 안정적. 모든 인스턴스가 다른 하드웨어에 위치함.
장점: 여러 가용 영역에 걸쳐있어 동시 오류의 위험이 감소
단점: 가용 영역별로 분산된 배치 그룹당 7개의 인스턴스만 가질 수 있다.
사용 예) 크기가 너무 크지않은 적당한 애플리케이션에서만 사용 가능, 가용성을 극대화하고 위험을 줄여야 하는 애플리케이션, 인스턴스 오류를 서로 격리해야 하는 크리티컬 애플리케이션이 있는 경우 사용.
3) 분할 배치 그룹(Partition): 여러 가용 영역의 파이션에 인스턴스를 분산
가용 영역당 최대 7개 파티션 -> 최대 수백개의 EC2 인스턴스
각 파티션은 AWS의 랙을 나타낸다.
파티션이 많으면 인스턴스가 여러 하드웨어 랙에 분산되어 랙 오류로부터 안전하다.
인스턴스가 어떤 파티션에 위치하는지 알기 위해 메타데이터 서비스를 사용해 정보를 액세스하는 옵션도 있음.
사용 예) HDFS, HBase, Cassandra, Kafka를 사용해 파티션을 인식하는 빅 데이터 애플리케이션
ENI: VPC의 논리적 구성 요소, 가상 네트워크 카드 -> EC2 인스턴스가 네트워크에 액세스할 수 있게 해주는 역할