Event Streams에 연결

Event Streams 인스턴스에 연결하려면 API에 대한 엔드포인트 URL및 인증에 대한 인증 정보가 필요합니다. 이러한 세부사항 및 사용할 수 있는 연결 옵션을 얻는 방법을 학습합니다.

개요

Lite, Standard, Enterprise 요금제를 통해 제공되는 서비스는 대시보드에서 서비스라는 제목 아래 그룹으로 묶여 있습니다.

모든 플랜은 인증을 위해 IAM 을 사용합니다. 시작하기 위해 IAM을 이해할 필요는 없지만 Event Streams 서비스의 보안을 설정하려면 어느 정도 알고 있는 것이 좋습니다. 자세한 정보는 Event Streams 리소스에 대한 액세스 관리를 참조하십시오. 다음 단계를 완료하고 주제를 만들 수 있는 권한을 얻으려면 애플리케이션 또는 서비스 키에 관리자 액세스 권한이 있어야 합니다. 기본적으로 서비스 인스턴스를 포함하는 계정의 소유자에게 이 역할이 있습니다.

기본적으로 Event Streams 인스턴스는 IBM Cloud® 공용 네트워크를 사용하도록 구성되므로 공용 인터넷을 통해 액세스할 수 있습니다. 필요한 경우 대체 네트워킹 유형을 선택하거나 연결이 허용되는 위치를 제한하여 이 액세스를 제한할 수 있습니다. 자세한 정보는 네트워크 액세스 제한 을 참조하십시오.

연결 정보

서비스 인스턴스에 액세스하려면 서비스 키를 작성하십시오. 서비스 키에는 해당 API에 대한 엔드포인트 세부사항 및 고유 API키 신임 정보를 포함하여 인스턴스에 액세스하는 데 필요한 정보가 포함되어 있습니다.

IBM Cloud 콘솔을 사용하여 서비스 키를 작성하려면 다음을 수행하십시오.

  1. 대시보드에서 Event Streams 서비스를 찾으십시오.
  2. 서비스 타일을 클릭하십시오.
  3. 서비스 인증 정보를 클릭하십시오.
  4. 새 인증 정보를 클릭하십시오.
  5. 새 신임 정보에 대한 세부사항을 완료하십시오. 이름과 역할을 선택하고 추가를 클릭합니다. 새 인증 정보가 인증 정보 목록에 표시됩니다.
  6. 자격 증명 보기를 클릭하여 새로운 자격 증명을 클릭하면 JSON 형식의 세부 정보가 표시됩니다.

IBM Cloud 의 CLI를 사용하여 서비스 키를 생성하려면 다음 단계를 완료하십시오.

  1. 서비스 찾기:

    ibmcloud resource service-instances
    
  2. 서비스 키 작성:

    ibmcloud resource service-key-create <key_name> <key_role> --instance-name <your_service_name>
    
  3. 서비스 키 인쇄:

    ibmcloud resource service-key <key_name>
    

    단일 엔드포인트 세부사항 세트가 각 서비스 키에 포함되어 있습니다. 단일 네트워크 유형 ( IBM Cloud 공용 네트워크 (기본값) 또는 IBM Cloud 사설 네트워크) 에 연결되도록 구성된 서비스 인스턴스의 경우, 서비스 키에는 해당 네트워크 유형과 관련된 세부사항이 포함됩니다. 사설 및 공용 네트워크를 모두 지원하도록 구성된 인스턴스의 경우 공용 네트워크에 대한 세부사항이 리턴됩니다. 사설 네트워크에 대한 세부사항을 원하는 경우 다음 예제에서와 같이 --service-endpoint private 매개변수를 이전 CLI 명령에 추가해야 합니다.

    ibmcloud resource service-key-create <private-key-name> <role> --instance-name <instance-name> --service-endpoint private
    

자세한 정보는 네트워크 유형 을 참조하십시오.

연결 설정

Kafka 애플리케이션을 연결하려면 다음 태스크를 완료하십시오.

  • 서비스 키의 <bootstrap_endpoints> 필드를 Kafka 애플리케이션의 bootstrap.servers 특성으로 사용하십시오.
  • security.protocol 특성을 SASL_SSL로 설정하고 sasl.mechanism 특성을 PLAIN으로 설정하십시오.
  • 서비스 키의 <user> 필드를 사용자 이름으로 사용하고 서비스 키의 <api_key> 필드를 비밀번호로 사용하십시오. 애플리케이션이 세부사항을 구문 분석하는지 확인하십시오.
  • 자세한 정보는 Kafka API 클라이언트 구성을 참조하십시오.

HTTP API를 호출하려면 다음 태스크를 완료하십시오.

  • 서비스 키의 <kafka_admin_url> 필드를 HTTP 요청에 대한 기본 URL 로 사용하십시오.
  • IBM Cloud CLI ibmcloud iam oauth-tokens 명령을 사용하여 인증 토큰을 생성하십시오. Authorization 이 토큰을 HTTP 요청의 헤더에 Bearer <token> 형식의 값으로 넣으십시오. API 키 또는 JWT 토큰이 모두 지원됩니다.
  • 각 API에 대한 추가 문서가 제공됩니다.

네트워크 연결

기본적으로 Lite, 표준 및 엔터프라이즈 인스턴스는 공용 인터넷을 통해 액세스할 수 있도록 구성되어 있습니다. 엔터프라이즈 플랜을 사용하는 경우 다음과 같이 연결을 제한할 수 있습니다.

사설 네트워킹
작업량이 전적으로 IBM Cloud 내에서 이루어지고 서비스에 대한 공용 액세스가 필요하지 않은 경우, Event Streams 인스턴스를 IBM Cloud 사설 네트워크를 통해서만 액세스할 수 있도록 구성할 수 있습니다. 이 구성은 격리를 강화하고 공용 트래픽과 관련된 송신 대역폭 요금이 발생하지 않습니다. IBM Cloud 공용 및 사설 네트워크 모두에서 액세스할 수 있도록 인스턴스를 구성할 수도 있습니다.
컨텍스트 기반 제한사항
특정 특성에 따라 연결이 허용되는 네트워크 위치를 제한하는 액세스 규칙을 정의할 수 있습니다. 예를 들어, 네트워크 유형, IP 범위, VPC 또는 기타 서비스입니다.

자세한 정보는 네트워크 액세스 제한 을 참조하십시오.

클래식 인프라에서 사설 네트워크를 통해 엔터프라이즈 인스턴스에 액세스

IBM Cloud 클래식 인프라에 배치된 워크로드에 대해 사설 네트워크를 통해 엔터프라이즈 인스턴스에 액세스하려면 계정에서 VRF (Virtual Route Forwarding) 및 서비스 엔드포인트 기능을 사용으로 설정해야 합니다. 자세한 정보는 네트워크 액세스 제한 을 참조하십시오.

VPC에서 사설 네트워크를 통해 엔터프라이즈 인스턴스에 액세스

사설 네트워크를 통해 엔터프라이즈 인스턴스에 액세스할 수 있도록 IBM Cloud VPC에 배치된 워크로드의 경우 VPC에서 VPE (Virtual Private Endpoint) 를 작성해야 합니다.

  1. IBM Cloud 의 콘솔에서 메뉴 아이콘을 클릭하고 VPC 인프라 > 네트워크 > 가상 사설 엔드포인트 게이트웨이를 선택합니다.
  2. 가상 사설 엔드포인트 게이트웨이 정보의 지침을 사용하여 Event Streams 인스턴스에 대한 VPE를 작성하십시오.
  3. VPE를 작성한 후 새 VPE와 pDNS가 프로세스를 완료하고 VPC에 대한 작업을 시작하는 데 몇 분이 걸릴 수 있습니다. VPE의 세부 정보 보기 에서 IP 주소가 설정된 것을 확인하면 완료된 것입니다.

IBM Cloud 외부에서 사설 네트워크를 통해 엔터프라이즈 인스턴스에 액세스

Direct Link 2.0 과 같은 솔루션을 사용하여 사내 구축형 데이터 센터와 같은 외부 네트워크와 IBM Cloud 사설 네트워크 간의 연결을 설정할 수 있습니다. 그러나 외부 네트워크에서 작동하는 워크로드를 처리할 때 Kafka에 대한 성공적인 연결을 보장하기 위해 추가 요인을 고려하는 것이 중요합니다. 이러한 고려사항은 HTTP 워크로드에 적용되지 않습니다.

인스턴스에 할당된 개인용 엔드포인트 세부사항 (서비스 키에 설명된 대로) 은 워크로드가 실행 중인 네트워크에서 분석 가능하고 라우트 가능해야 합니다. 외부 네트워크에서 트래픽을 라우팅하는 방법으로 워크로드의 bootstrap.servers 특성에 대체 호스트 이름 항목을 지정할 수 없습니다.

이 동작의 이유는 Kafka의 2단계연결 프로세스 때문입니다. 초기 단계에서 클라이언트의 bootstrap.servers 특성에 제공된 호스트 이름은 첫 번째 부트스트랩 연결을 설정하는 데 사용됩니다. 그러나 서버는 사용하는 실제 엔드포인트 호스트 이름 세부사항으로 클라이언트에 응답합니다. 이러한 호스트 이름 세부사항은 원래 인스턴스에 할당된 개인용 엔드포인트 세부사항이며 변경할 수 없습니다. 따라서 외부 네트워크에서 직접 세부사항을 분석하고 라우트할 수 있어야 합니다.

더 자세한 정보를 원하시면, IBM Cloud Direct Link 를 사용하여 온-프레미스 네트워크에서 개인 API 엔드포인트에 액세스하기를 참고하세요.

다음에 수행할 작업

이제 연결 및 자격 증명 정보를 얻었으므로, Kafka 클라이언트를 선택할 수 있습니다. 자세한 정보는 Kafka API 사용을 참조하십시오.