스키마 레지스트리 만들기

스키마 레지스트리는 Kafka 제작자와 소비자가 사용하는 스키마를 관리하는 저장소입니다.

이 문서에서는Google Cloud 콘솔, Google Cloud CLI 또는 Managed Kafka API를 사용하여 Apache Kafka용 관리형 서비스 내에 스키마 레지스트리 리소스를 만드는 방법을 보여줍니다.

시작하기 전에

스키마 레지스트리를 만들기 전에 다음을 완료하세요.

필수 역할 및 권한

스키마 레지스트리를 만드는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 관리형 Kafka 스키마 레지스트리 편집자 (roles/managedkafka.schemaRegistryEditor) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

이 사전 정의된 역할에는 스키마 레지스트리를 만드는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

스키마 레지스트리를 만들려면 다음 권한이 필요합니다.

  • 상위 위치에서 이 권한을 부여합니다. managedkafka.schemaRegistries.create

커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

관리형 Kafka 스키마 레지스트리 관리자와 같은 상위 수준 역할을 사용하면 스키마 레지스트리를 만들고 관리할 수도 있습니다.

Apache Kafka용 관리형 서비스에 사용할 수 있는 사전 정의된 역할에 대한 자세한 내용은 액세스 제어 문서를 참고하세요.

스키마 레지스트리 만들기

콘솔

  1. Google Cloud 콘솔에서 스키마 레지스트리 페이지로 이동합니다.

    스키마 레지스트리로 이동

    스키마 레지스트리 페이지가 열립니다.

  2. 스키마 레지스트리 페이지에서 만들기를 클릭합니다.

    스키마 레지스트리 만들기 페이지가 열립니다.

  3. 스키마 레지스트리 이름에 레지스트리의 고유 식별자를 입력합니다.

    이름은 문자로 시작해야 하며 문자(a~z, A~Z), 숫자(0~9), 밑줄(_)만 포함해야 하고 63자(영문 기준) 이하여야 합니다.

  4. 메뉴에서 리전을 선택하거나 입력합니다.

    지정된 리전에 활성 상태의 Apache Kafka용 관리형 서비스 클러스터가 하나 이상 있어야 합니다. 클러스터의 리전을 확인하려면 클러스터 나열에 관한 문서를 참고하세요.

    지원되는 위치 목록은 Apache Kafka용 관리형 서비스 위치를 참고하세요.

  5. 만들기를 클릭합니다.

gcloud

  1. Google Cloud CLI를 설치합니다. 설치 후 다음 명령어를 실행하여 Google Cloud CLI를 초기화합니다.

    gcloud init

    외부 ID 공급업체(IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.

  2. gcloud beta managed-kafka schema-registries create 명령어를 사용하여 스키마 레지스트리를 만듭니다.

    gcloud beta managed-kafka schema-registries create SCHEMA_REGISTRY_ID \
        --location=LOCATION \

    다음을 바꿉니다.

    • SCHEMA_REGISTRY_ID (필수 항목): 새 스키마 레지스트리의 고유 식별자입니다. 이는 레지스트리의 리소스 이름의 일부를 구성합니다. 이름은 문자로 시작해야 하고, 문자 (a~z, A~Z), 숫자 (0~9), 밑줄 (_)만 포함해야 하며, 63자 이하여야 합니다.
    • LOCATION (필수 항목): 스키마 레지스트리가 생성될 Google Cloud 리전입니다. 이 위치는 이 레지스트리를 사용하는 Apache Kafka용 관리형 서비스 클러스터의 리전과 일치해야 합니다. 지원되는 위치는 Apache Kafka용 관리형 서비스 위치를 참고하세요.

    us-central1 리전에 test_schema_registry이라는 스키마 레지스트리를 만들려면 다음 명령어를 실행합니다.

    gcloud beta managed-kafka schema-registries create test_schema_registry \
        --location=us-central1

    명령어가 성공적으로 완료되면 스키마 레지스트리가 생성됩니다. 그런 다음 URL을 사용하도록 Kafka 클라이언트를 구성할 수 있습니다. 스키마 레지스트리 URL을 보려면 스키마 레지스트리 페이지 세부정보를 참고하세요.

REST

REST API를 사용하여 스키마 레지스트리 인스턴스를 만들려면 다음 단계를 따르세요.

  1. 다음과 유사한 POST 요청을 보냅니다.
  2. POST https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries
    Authorization: Bearer $(gcloud auth application-default print-access-token)
    Content-Type: application/json --data @response-body.json
    
  3. 다음 구조로 JSON 파일 request-body.json을 만듭니다.
  4. {
      "schemaRegistryId": "SCHEMA_REGISTRY_ID"
    }

    다음을 바꿉니다.

    • SCHEMA_REGISTRY_ID (필수 항목): 새 스키마 레지스트리의 고유 식별자입니다. 이는 레지스트리의 리소스 이름의 일부를 구성합니다. 이름은 문자로 시작해야 하고, 문자 (a~z, A~Z), 숫자 (0~9), 밑줄 (_)만 포함해야 하며, 63자 이하여야 합니다.

    구성된 URI, 헤더, 본문으로 POST 요청을 실행합니다. 성공하면 API는 200 OK 상태 코드와 새로 생성된 SchemaRegistry 리소스의 JSON 표현이 포함된 응답 본문을 반환합니다.

    다음은 성공적인 응답의 샘플입니다.

    {
      "name": "projects/testing-311516/locations/us-central1/schemaRegistries/test",
      "contexts": [
        "projects/testing-311516/locations/us-central1/schemaRegistries/test/contexts/."
      ]
    }

    projects/testing-311516/locations/us-central1/schemaRegistries/test/contexts/.는 기본 컨텍스트를 나타냅니다. 기본 컨텍스트의 리소스에는 컨텍스트를 지정할 필요가 없습니다.

    자세한 내용은 REST API 문서를 참고하세요.

Apache Kafka®는 미국 및/또는 다른 국가에서 사용되는 Apache Software Foundation 또는 해당 계열사의 등록 상표입니다.

다음 단계