Apache Kafka용 관리형 서비스 클러스터 만들기 및 보기
주제가 있는 Apache Kafka용 관리형 서비스 클러스터를 만들고 클러스터에 관한 세부정보를 확인하는 방법을 알아봅니다. Google Cloud 콘솔 또는 Google Cloud CLI를 사용하여 이 튜토리얼을 완료할 수 있습니다.
시작하기 전에
콘솔
-
Google 계정에
로그인합니다.
아직 계정이 없으면 새 계정을 등록하세요.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Managed Kafka API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Managed Kafka API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
gcloud
-
Google 계정에
로그인합니다.
아직 계정이 없으면 새 계정을 등록하세요.
-
Google Cloud CLI를 설치합니다.
-
외부 ID 공급업체(IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.
-
gcloud CLI를 초기화하려면, 다음 명령어를 실행합니다.
gcloud init -
Google Cloud 프로젝트를 만들거나 선택합니다.
프로젝트를 선택하거나 만드는 데 필요한 역할
- 프로젝트 선택: 프로젝트를 선택하는 데는 특정 IAM 역할이 필요하지 않습니다. 역할이 부여된 프로젝트를 선택하면 됩니다.
-
프로젝트 만들기: 프로젝트를 만들려면
resourcemanager.projects.create권한이 포함된 프로젝트 생성자 역할(roles/resourcemanager.projectCreator)이 필요합니다. 역할 부여 방법 알아보기
-
Google Cloud 프로젝트를 만듭니다.
gcloud projects create PROJECT_ID
PROJECT_ID를 만들려는 Google Cloud 프로젝트의 이름으로 바꿉니다. -
생성한 Google Cloud 프로젝트를 선택합니다.
gcloud config set project PROJECT_ID
PROJECT_ID을 Google Cloud 프로젝트 이름으로 바꿉니다.
-
이 가이드에 기존 프로젝트를 사용하는 경우 이 가이드를 완료하는 데 필요한 권한이 있는지 확인합니다. 새 프로젝트를 만든 경우에는 이미 필요한 권한이 있습니다.
Managed Kafka API를 사용 설정합니다.
API 사용 설정에 필요한 역할
API를 사용 설정하려면
serviceusage.services.enable권한이 포함된 서비스 사용량 관리자 IAM 역할 (roles/serviceusage.serviceUsageAdmin)이 필요합니다. 역할 부여 방법 알아보기gcloud services enable managedkafka.googleapis.com
-
Google Cloud CLI를 설치합니다.
-
외부 ID 공급업체(IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.
-
gcloud CLI를 초기화하려면, 다음 명령어를 실행합니다.
gcloud init -
Google Cloud 프로젝트를 만들거나 선택합니다.
프로젝트를 선택하거나 만드는 데 필요한 역할
- 프로젝트 선택: 프로젝트를 선택하는 데는 특정 IAM 역할이 필요하지 않습니다. 역할이 부여된 프로젝트를 선택하면 됩니다.
-
프로젝트 만들기: 프로젝트를 만들려면
resourcemanager.projects.create권한이 포함된 프로젝트 생성자 역할(roles/resourcemanager.projectCreator)이 필요합니다. 역할 부여 방법 알아보기
-
Google Cloud 프로젝트를 만듭니다.
gcloud projects create PROJECT_ID
PROJECT_ID를 만들려는 Google Cloud 프로젝트의 이름으로 바꿉니다. -
생성한 Google Cloud 프로젝트를 선택합니다.
gcloud config set project PROJECT_ID
PROJECT_ID을 Google Cloud 프로젝트 이름으로 바꿉니다.
-
이 가이드에 기존 프로젝트를 사용하는 경우 이 가이드를 완료하는 데 필요한 권한이 있는지 확인합니다. 새 프로젝트를 만든 경우에는 이미 필요한 권한이 있습니다.
Managed Kafka API를 사용 설정합니다.
API 사용 설정에 필요한 역할
API를 사용 설정하려면
serviceusage.services.enable권한이 포함된 서비스 사용량 관리자 IAM 역할 (roles/serviceusage.serviceUsageAdmin)이 필요합니다. 역할 부여 방법 알아보기gcloud services enable managedkafka.googleapis.com
필요한 역할
클러스터를 만드는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.
-
관리형 Kafka 클러스터 편집자 (
roles/managedkafka.clusterEditor) -
관리형 Kafka 주제 편집자 (
roles/managedkafka.topicEditor) -
Compute 네트워크 사용자(
roles/compute.networkUser)
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
클러스터 만들기
콘솔
- Apache Kafka용 관리형 서비스 > 클러스터 페이지로 이동합니다.
- 만들기를 클릭합니다.
- 클러스터 이름 체크박스에 클러스터 이름을 입력합니다.
- 리전 목록에서 클러스터의 위치를 선택합니다.
-
네트워크 구성에서 클러스터에 액세스할 수 있는 서브넷을 구성합니다.
- 프로젝트에서 사용자 프로젝트를 선택합니다.
- 네트워크에서 VPC 네트워크를 선택합니다.
- 서브넷에서 서브넷을 선택합니다.
- 완료를 클릭합니다.
- 만들기를 클릭합니다.
만들기를 클릭하면 클러스터 상태가 Creating가 됩니다. 클러스터가 준비되면 상태는 Active입니다.
gcloud
Kafka 클러스터를 만들려면 managed-kafka clusters
create 명령어를 실행합니다.
gcloud managed-kafka clusters create KAFKA_CLUSTER \ --location=REGION \ --cpu=3 \ --memory=3GiB \ --subnets=projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME \ --async
다음을 바꿉니다.
KAFKA_CLUSTER: Kafka 클러스터의 이름REGION: 클러스터의 위치PROJECT_ID: 프로젝트 ID입니다.SUBNET_NAME: 클러스터를 만들려는 서브넷입니다(예:default).
지원되는 위치에 대한 자세한 내용은 Apache Kafka용 관리형 서비스 위치를 참고하세요.
이 명령어는 비동기적으로 실행되며 작업 ID를 반환합니다.
Check operation [projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID] for status.
생성 작업의 진행 상황을 추적하려면 gcloud managed-kafka
operations describe 명령어를 사용합니다.
gcloud managed-kafka operations describe OPERATION_ID \ --location=REGION
클러스터가 준비되면 이 명령어의 출력에 state:
ACTIVE 항목이 포함됩니다. 자세한 내용은 클러스터 생성 작업 모니터링을 참고하세요.
이 단계를 따른 후 클러스터가 준비되는 데 최대 30분이 걸릴 수 있습니다.
이 작업이 완료될 때까지 기다리는 동안 다음 단계에 나열된 튜토리얼을 살펴보세요. 다양한 방법을 사용하여 클러스터용 메시지를 생성하는 방법을 보여줍니다. 클러스터가 준비되면 이러한 튜토리얼을 완료할 수 있습니다.
주제 만들기
Apache Kafka용 관리형 서비스 클러스터가 준비되면 주제를 만듭니다.
콘솔
Managed Service for Apache Kafka > 클러스터 페이지로 이동합니다.
클러스터 이름을 클릭합니다.
클러스터 세부정보 페이지에서 주제 만들기를 클릭합니다.
주제 이름 체크박스에 주제 이름을 입력합니다.
만들기를 클릭합니다.
gcloud
Kafka 주제를 만들려면 managed-kafka topics create 명령어를 실행합니다.
gcloud managed-kafka topics create KAFKA_TOPIC_NAME \
--cluster=KAFKA_CLUSTER \
--location=REGION \
--partitions=10 \
--replication-factor=3
다음을 바꿉니다.
KAFKA_TOPIC_NAME: 만들 Kafka 주제의 이름입니다.KAFKA_CLUSTER: Kafka 클러스터의 이름REGION: Kafka 클러스터를 만든 리전
클러스터 보기
클러스터가 준비되면 주제, 컨슈머 그룹, 네트워크, 기타 세부정보 등 클러스터에 관한 정보를 볼 수 있습니다.
콘솔
Managed Service for Apache Kafka > 클러스터 페이지로 이동합니다.
클러스터 이름을 클릭합니다. 클러스터 세부정보 페이지에 클러스터에 관한 정보가 표시됩니다. 리소스 탭에는 주제를 비롯하여 클러스터와 연결된 리소스가 표시됩니다.
주제에 대한 세부정보를 보려면 리소스 탭을 선택하고 주제 이름을 클릭합니다. 주제 세부정보 페이지에는 파티션 수, 복제본 수와 같은 주제에 관한 정보가 표시됩니다.
클러스터 세부정보 페이지로 돌아가려면 상위 페이지로 돌아가기를 클릭합니다.
gcloud
클러스터에 대한 정보를 보려면
gcloud managed-kafka clusters describe명령어를 실행합니다.gcloud managed-kafka clusters describe KAFKA_CLUSTER \ --location=REGION다음을 바꿉니다.
KAFKA_CLUSTER: 클러스터의 이름입니다.REGION: 클러스터를 만든 리전
이 명령어의 출력은 다음과 비슷한 클러스터 속성 목록입니다.
bootstrapAddress: BOOTSTRAP_ADDRESS capacityConfig: memoryBytes: '3221225472' vcpuCount: '3' createTime: 'TIMESTAMP'클러스터의 주제 목록을 가져오려면
gcloud managed-kafka topics list명령어를 실행합니다.gcloud managed-kafka topics list KAFKA_CLUSTER \ --location=REGION \ --format="value(name)"출력에는 사용자가 만든 주제와 Apache Kafka용 관리형 서비스에서 내부용으로 만든 주제가 포함됩니다.
주제에 관한 정보를 보려면
gcloud managed-kafka topics describe명령어를 실행합니다.gcloud managed-kafka topics describe TOPIC_NAME \ --cluster=KAFKA_CLUSTER \ --location=REGIONTOPIC_NAME을 주제 이름으로 바꿉니다.이 명령어의 출력은 다음과 비슷한 주제 속성 목록입니다.
name: projects/PROJECT_ID/locations//clusters/KAFKA_CLUSTER/topics/TOPIC_NAME partitionCount: 10 replicationFactor: 3
부트스트랩 주소 가져오기
Kafka 클라이언트는 클러스터의 부트스트랩 주소를 사용하여 클러스터와 연결합니다. 부트스트랩 주소를 가져오려면 다음 단계를 실행하세요.
콘솔
Managed Service for Apache Kafka > 클러스터 페이지로 이동합니다.
클러스터 이름을 클릭합니다.
구성 탭을 선택합니다.
부트스트랩 URL은 부트스트랩 URL에 표시됩니다. 복사를 클릭하여 값을 복사합니다.
gcloud
부트스트랩 URL을 가져오려면 managed-kafka clusters describe 명령어를 실행합니다.
gcloud managed-kafka clusters describe KAFKA_CLUSTER \
--location=REGION \
--format="value(bootstrapAddress)"
다음을 바꿉니다.
KAFKA_CLUSTER: 클러스터의 이름입니다.REGION: 클러스터를 만든 리전
이제 클러스터에 메시지를 보낼 수 있습니다. 자세한 내용은 이 문서의 다음 단계를 참고하세요.
삭제
이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 리소스가 포함된 Google Cloud 프로젝트를 삭제하세요.
콘솔
클러스터를 삭제합니다.
Managed Service for Apache Kafka > 클러스터 페이지로 이동합니다.
Kafka 클러스터를 선택하고 삭제를 클릭합니다.
gcloud
클러스터를 삭제하려면
gcloud managed-kafka clusters delete명령어를 사용합니다.gcloud managed-kafka clusters delete KAFKA_CLUSTER \ --location=REGION --async
다음 단계
Kafka 명령줄 도구를 사용하거나 클라이언트 애플리케이션을 만들어 Kafka용 메시지를 생성합니다.