6.4. User Operator 사용


KafkaUser 리소스를 사용하여 사용자를 생성, 수정 또는 삭제할 때 User Operator는 이러한 변경 사항이 Kafka 클러스터에 반영되었는지 확인합니다.

KafkaUser 리소스에 대한 자세한 내용은 KafkaUser 스키마 참조를 참조하십시오.

User Operator 배포

Cluster Operator를 사용하거나 독립 실행형 Operator로 User Operator를 배포할 수 있습니다. Cluster Operator에서 관리하지 않는 Kafka 클러스터에서 독립 실행형 User Operator를 사용합니다.

배포 지침은 다음을 참조하십시오.

중요

독립 실행형 User Operator를 배포하려면 Kafka 클러스터에 연결할 환경 변수를 설정해야 합니다. Cluster Operator에 의해 설정되므로 User Operator를 배포하는 경우 이러한 환경 변수를 설정할 필요가 없습니다.

6.4.1. Kafka 사용자 구성

KafkaUser 리소스의 속성을 사용하여 Kafka 사용자를 구성합니다.

oc apply 를 사용하여 사용자를 만들거나 수정하고 oc delete 를 사용하여 기존 사용자를 삭제할 수 있습니다.

예를 들면 다음과 같습니다.

  • oc apply -f <user_config_file>
  • oc delete KafkaUser <user_name>

사용자는 Kafka 클라이언트를 나타냅니다. Kafka 사용자를 구성할 때 클라이언트가 Kafka에 액세스하는 데 필요한 사용자 인증 및 권한 부여 메커니즘을 활성화합니다. 사용되는 메커니즘은 동등한 Kafka 구성과 일치해야 합니다. Kafka 브로커에 대한 액세스를 보호하기 위해 KafkaKafkaUser 리소스를 사용하는 방법에 대한 자세한 내용은 Kafka 브로커에 대한 액세스 보안 을 참조하십시오.

사전 요구 사항

절차

  1. KafkaUser 리소스를 구성합니다.

    이 예제에서는 ACL을 사용하여 TLS 인증 및 간단한 권한 부여를 지정합니다.

    Kafka 사용자 구성 예

    apiVersion: kafka.strimzi.io/v1beta2
    kind: KafkaUser
    metadata:
      name: my-user
      labels:
        strimzi.io/cluster: my-cluster
    spec:
      authentication:
        type: tls
      authorization:
        type: simple
        acls:
          # Example consumer Acls for topic my-topic using consumer group my-group
          - resource:
              type: topic
              name: my-topic
              patternType: literal
            operation: Read
            host: "*"
          - resource:
              type: topic
              name: my-topic
              patternType: literal
            operation: Describe
            host: "*"
          - resource:
              type: group
              name: my-group
              patternType: literal
            operation: Read
            host: "*"
          # Example Producer Acls for topic my-topic
          - resource:
              type: topic
              name: my-topic
              patternType: literal
            operation: Write
            host: "*"
          - resource:
              type: topic
              name: my-topic
              patternType: literal
            operation: Create
            host: "*"
          - resource:
              type: topic
              name: my-topic
              patternType: literal
            operation: Describe
            host: "*"

  2. OpenShift에서 KafkaUser 리소스를 생성합니다.

    oc apply -f <user_config_file>
  3. 사용자의 준비 상태가 True 로 변경될 때까지 기다립니다.

    oc get kafkausers -o wide -w -n <namespace>

    Kafka 사용자 상태

    NAME       CLUSTER     AUTHENTICATION  AUTHORIZATION READY
    my-user-1  my-cluster  tls             simple        True
    my-user-2  my-cluster  tls             simple
    my-user-3  my-cluster  tls             simple        True

    READY 출력에 True 가 표시되면 사용자 생성이 성공합니다.

  4. READY 열이 비어 있으면 리소스 YAML 또는 User Operator 로그에서 상태에 대한 자세한 정보를 가져옵니다.

    메시지는 현재 상태의 이유에 대한 세부 정보를 제공합니다.

    oc get kafkausers my-user-2 -o yaml

    NotReady 상태의 사용자 세부 정보

    # ...
    status:
      conditions:
      - lastTransitionTime: "2022-06-10T10:07:37.238065Z"
        message: Simple authorization ACL rules are configured but not supported in the
          Kafka cluster configuration.
        reason: InvalidResourceException
        status: "True"
        type: NotReady

    이 예에서 사용자가 준비되지 않은 이유는 Kafka 구성에서 간단한 권한이 활성화되지 않기 때문입니다.

    간단한 인증에 대한 Kafka 구성

      apiVersion: kafka.strimzi.io/v1beta2
      kind: Kafka
      metadata:
        name: my-cluster
      spec:
        kafka:
          # ...
          authorization:
            type: simple

    Kafka 구성을 업데이트하면 상태가 사용자가 준비되었음을 표시합니다.

    oc get kafkausers my-user-2 -o wide -w -n <namespace>

    사용자의 상태 업데이트

    NAME       CLUSTER     AUTHENTICATION  AUTHORIZATION READY
    my-user-2  my-cluster  tls             simple        True

    세부 정보를 가져오면 메시지가 표시되지 않습니다.

    oc get kafkausers my-user-2 -o yaml

    READY 상태의 사용자 세부 정보

    # ...
    status:
      conditions:
      - lastTransitionTime: "2022-06-10T10:33:40.166846Z"
        status: "True"
        type: Ready

6.4.2. 리소스 요청 및 제한을 사용하여 User Operator 구성

CPU 및 메모리와 같은 리소스를 User Operator에 할당하고 사용할 수 있는 리소스 양에 제한을 설정할 수 있습니다.

사전 요구 사항

  • Cluster Operator가 실행 중입니다.

절차

  1. 필요에 따라 편집기에서 Kafka 클러스터 구성을 업데이트합니다.

    oc edit kafka MY-CLUSTER
  2. Kafka 리소스의 spec.entityOperator.userOperator.resources 속성에서 User Operator에 대한 리소스 요청 및 제한을 설정합니다.

    apiVersion: kafka.strimzi.io/v1beta2
    kind: Kafka
    spec:
      # Kafka and ZooKeeper sections...
      entityOperator:
        userOperator:
          resources:
            requests:
              cpu: "1"
              memory: 500Mi
            limits:
              cpu: "1"
              memory: 500Mi

    파일을 저장하고 편집기를 종료합니다. Cluster Operator는 변경 사항을 자동으로 적용합니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동