1. 소개
최종 업데이트: 2022년 2월 8일
멀티 클라우드 스트리밍이 필요한 이유
비즈니스에서는 다음과 같은 이유로 여러 클라우드 제공업체를 비즈니스 운영 워크플로에 도입하는 데 여러 이점이 있으므로 여러 클라우드 플랫폼에 워크로드를 분산하려고 적극적으로 노력하고 있습니다.
- 공급업체 종속
- 비즈니스 연속성 위험 완화
- 종속 항목 및 하나의 기술 스택에 대한 의존도
빌드할 항목
이 Codelab에서는 Confluent Cloud를 활용하여 AWS와 GCP 간에 멀티 클라우드 데이터 스트리밍을 설정합니다. 실습할 내용은 다음과 같습니다.
- GCP의 Confluent Cloud에서 전용 Kafka 클러스터를 설정합니다.
- 비공개 네트워크에서 액세스할 수 있도록 Confluent Cloud와 GCP 프로젝트 간에 VPC 피어링을 설정합니다.
- AWS 프로젝트와 GCP 프로젝트 간에 VPN 터널을 설정하여 두 하이퍼스케일러의 리소스가 연결될 수 있도록 합니다.
- AWS에서 Confluent Kafka에 액세스하고 Confluent Kafka Cloud를 활용하여 AWS에서 GCP로 스트리밍 파이프라인을 설정합니다.
학습할 내용
- Confluent Cloud Kafka와 GCP 프로젝트 간에 VPC 피어링을 설정하는 방법
- AWS와 GCP 프로젝트 간에 VPN 터널을 설정하는 방법
- AWS 프로젝트에서 GCP 호스팅 Confluent Cloud에 액세스하는 방법
이 Codelab에서는 멀티 클라우드 데이터 스트리밍을 빌드하는 데 중점을 둡니다. 따라서 이와 관련 없는 개념과 코드 블록은 그냥 넘어가겠습니다. 단, 필요할 때 복사해서 붙여넣을 수 있도록 다른 설명 없이 제공만 해드리겠습니다.
필요한 항목
- AWS 프로젝트 액세스
- GCP 프로젝트 액세스 권한
- GCP 및 AWS 클라우드 경험
- GCP Marketplace의 Confluent Kafka 구독
2. 설정
AWS와 GCP 간에 VPN 연결 설정
- 이 데모에서는 GCP의 기본 VPC (asia-southeast1)와 AWS의 ng-vpc-103-mum (ap-south1)을 사용합니다.
- AWS에서 고객 게이트웨이와 가상 비공개 게이트웨이 (VPG)를 만듭니다. AWS VPC에 VPG를 연결합니다.
- AWS에서 사이트 간 VPN 연결을 만듭니다.
- AWS에서 생성된 터널의 구성 파일을 다운로드합니다. 선택
- 공급업체 : 일반
- 플랫폼 : 일반
- 소프트웨어 : 공급업체에 구애받지 않음
- Ike 버전 : Ikev2
- GCP에서 VPN 게이트웨이와 VPN 터널을 만듭니다.
다운로드한 AWS 구성 파일에서 두 터널의 IP 주소와 Ikev2 키를 제공합니다.
- 완료되면 터널이 AWS 및 GCP에서 UP 및 Running 상태여야 합니다.
이제 터널 설정이 완료되었습니다.
- Confluent Cloud를 구성하는 데 사용할 CIDR 블록을 선택합니다. AWS에서 정적 경로로 VPN 터널에 이를 추가합니다.
GCP Marketplace의 Confluent Kafka
- GCP Marketplace에서 Confluent Kafka를 구독합니다.
- Confluent Cloud에 로그인하고 전용 클러스터 만들기
- 피어링을 위해 VPC 네트워크 세부정보와 함께 GCP 프로젝트 ID를 제공합니다.
- 제공된 Confluent Cloud 클러스터 네트워크 세부정보를 사용하여 GCP에서 VPC 피어링을 완료합니다.
- 이제 Confluent Cloud 클러스터가 활성화되어 GCP와 피어링되었습니다.
- GCP에서 Confluent 클러스터로의 연결을 테스트합니다.
- GCE 인스턴스를 프로비저닝하고 Python3를 설치합니다.
- Confluent Cloud에서 Python 클라이언트 키 생성
- GCP 인스턴스에서 테스트 스크립트 'producer.py'를 실행합니다.
- 이제 AWS 인스턴스에서 예시 코드베이스를 다운로드하고 'producer.py' 스크립트를 실행하여 GCP에서 Confluent Cloud로의 하이브리드 연결을 테스트합니다.
3. 축하합니다
수고하셨습니다. AWS와 GCP 간에 멀티 클라우드 교차 리전 Confluent Kafka 스트리밍 플랫폼을 성공적으로 빌드했습니다.
유용한 Codelab**이 있나요?**
다음 Codelab을 확인하세요.