본문 바로가기
G.Code/kafka

[kafka] 6.클라우드 카프카 서비스

by 한선배 2021. 12. 13.
반응형

컨플루언트 클라우드


 


AWS MSK


MSK(Managed Streaming for Apache Kafka)는 AWS에서 제공하는 Saas형 아파치 카프카 서비스이다. AWS MSK는 AWS 인프라에서 카프카 클러스터를 생성, 업데이트 삭제 등과 같은 운영 요소를 대시보드를 통해 제공한다. 또한, 안전하게 접속할 수 있도록 클러스터와 연동시 TLS인증 보안을 설정할 수 있다. MSK로 클러스터를 생성하고자 하는 엔지니어는 아파치 카프카 버전을 직접 선택할 수 있다. 그렇기 때문에 기존에 카프카 클라이언트를 운영하고 있는 기업은 버전 차이에 의한 서비스 연동 이슈를 발생시키지 않고 안전하게 클러스터를 사용할 수 있다는 장점이 있다. MSK로 생성한 클러스터는 AWS에서 제공하는 인프라 영역에 구축된다. 

  • MSK 장점
    MSK를 사용함으로써 가장 큰 장점은 AWS의 다양한 서비스와 자연스럽게 연동이 된다는 점이다. 컨플루언트 클라우드와 다르게 카프카 브로커 로그를 AWS S3에 적재하여 브로커 로그를 확인할 수 있다. 클러스터를 모니터링하기 위해 따로 저장소나 수집 애플리케이션을 연동하지 않더라도 기본 모니터링 데이터를 AWS 클라우드와치(CloudWatch)로 확인할 수 있도록 제공된다. 만약 MSK에서 제공하는 기본 모니터링 지표 외에 브로커의 각 노드, 브로커의 모니터링 지표를 확인하고 싶을 때는 프로메테우스 플랫폼과 연동할 수 있는 JMX 익스포터, 노드 익스포터도 제공한다. 프로메테우스는 글로벌 온라인 음악 유통 플랫폼을 운영하는 사운드 클라우드에서 만든 시스템 모니터링 플랫폼이다. JMX 익스포터를 통해 카프카의 브로커의 모니터링 지푤르 수집하고 노드 익스포터를 통해 브로커 인스턴스의 지표들을 수집하여 운영시 활용 할 수 있다.
  • AWS 클러스터 생성
     - VPC : Virtual Private Cloud의 약자로서 사용자가 정의한 가상의 네트워크이다. 온프레미스에서 운영하는 내부 네트워크의 개념과 유사하다. 리전을 선택하고 특정 IP 대역을 VPC로 생성할 수 있다. VPC로 생성한 네트워크 대역의 프라이빗 IP를 가진 EC2 인스턴스를 생성할 수 있다. 네트워크 대역은 CIDR 표기법으로 선언하여 할당한다.
    - AZ : Available Zone의 약자로 AWS 리전에 존재하는 개별 데이터 센터를 뜻한다. 각 AZ는 다른 AZ와 물리적으로 구분되어 있기 때문에 AZ의 장애는 다른 AZ에 전파되지 않는다. 동일 리전의 AZ 간에는 네트워크 지연이 매우 낮기 때문에 AZ 장애에 대응하여 다수의 AZ에 서비스를 다중 운영하면 안전하게 서비스를 운영할 수 있다. AWS의 서울 리전(ap-northease-2)에서는 총 4개의 AZ(ap-northeast-2a, ap-northeast-2b, ap-northeast-2c, ap-northeast-2d)를 제공한다.
    - 서브넷(subnet) : 서브넷은 VPC 내부에서 생성할 수 있는 네트워크 대역이다. 서브넷을 만들 때는 VPC 네트워크 대역에 포함된 네트워크 영역을 지정해야 한다. VPC의 네트워크 대역을 넘어가는 IP를 가진 서브넷 영역은 생성할 수 없다. 또한 각 서브넷끼리는 네트워크 대역이 겹쳐서는 안된다. 서브넷을 단일 AZ에만 존재하며 여러 AZ에 걸쳐서 AZ를 생성할 수 없다.
    - 인터넷 게이트웨이(internet gateway) : 인터넷 게이트웨이가 설정되지 않은 서브넷은 구글, 네이버와 같은 퍼블릭 네트워크와 통신할 수 없다. 그렇기 때문에 서브넷의 네트워크 영역에 설정된 EC2 인스턴스 퍼블릭 네트워크와 연결하기 위해서는 인터넷 게이트웨이를 설정해야 한다. 이렇게 인터넷 게이트웨이를 설정한 서브넷을 '퍼블릭 서브넷
    '이라고 한다. 퍼블릭 서브넷에서 EC2 인스턴스를 생성하면 퍼블릭 네트워크에서 접속할 수 있도록 퍼블릭IP가 할당된다.
    - 라우팅 테이블 : VPC, 인터넷 게이트웨이, VPN 연결 시 서브넷 간 패킷 전달 규칙을 지정한다. VPC의 각 서브넷은 1개 이상의 라우팅 테이블과 연결되어 있다.
    - EBS : Elastic Block Store라고 불리는 'EBS'는 EC2 인스턴스에 사용할 수 있도록 설계된 볼륨 스토리지 서비스이다. EC2 인스턴스와 연결된 EBS는 파일 시스템으로 사용할 수 있다.

 

반응형

'G.Code > kafka' 카테고리의 다른 글

[kafka] 5.카프카 실전 프로젝트  (0) 2021.12.09
[kafka] 4.카프카 상세 개념 설명  (0) 2021.11.23
[kafka] 3.카프카 기본개념 설명  (0) 2021.11.04
[kafka] kafka 기본 명령어  (0) 2021.11.03
[kafka] kafka ec2 설치  (0) 2021.10.28