8.12. 사용자 정의 리소스를 배포하여 3scale 개발자 관리


3scale 관리자는 CR(사용자 정의 리소스)을 사용하여 개별 개발자 사용자를 그룹화하는 개발자 계정을 배포할 수 있습니다. 이 계정을 사용하면 개발자 포털에서 3scale 관리 API에 대한 개발자 액세스를 구성하고 관리할 수 있습니다.

테넌트는 원하는 수의 개발자 계정과 정확히 하나의 테넌트에 대한 각 개발자 계정 링크를 포함할 수 있습니다. 개발자 계정은 원하는 수의 개발자 사용자와 정확히 하나의 개발자 계정에 대한 각 개발자 사용자 링크를 포함할 수 있습니다. 테넌트 계획은 생성할 수 있는 개발자 계정 수와 각 개발자 계정에 그룹화할 수 있는 개발자 사용자 수에 대한 제한을 결정합니다.

개발자 사용자 지정 리소스를 사용하려면 3scale 운영자가 3scale을 설치해야 합니다. 3scale Operator가 포함된 네임스페이스에만 개발자 사용자 지정 리소스를 배포할 수 있습니다. 개발자 사용자 지정 리소스 배포는 3scale 관리 포털 또는 3scale 내부 API를 사용하여 개발자를 관리하는 대안입니다.

중요

사용자 지정 리소스를 배포하여 개발자 계정 또는 개발자 사용자를 생성하는 경우 관리 포털 또는 내부 3scale API를 사용하여 해당 개발자 계정 또는 개발자 사용자를 업데이트할 수 없습니다. 개발자 CR을 배포한 후 관리 포털에 새 developer 계정 또는 새 developer 사용자를 해당 Accounts (계정) 페이지에 표시하므로 이 점을 인식하는 것이 중요합니다. 관리 포털 또는 API를 사용하여 CR을 사용하여 배포된 개발자 계정 또는 developer 사용자를 업데이트하려는 경우 3scale Operator는 변경 사항을 되돌리고 배포된 CR을 반영합니다. 이는 향후 릴리스에서 제거될 것으로 예상되는 제한 사항입니다. 그러나 관리 포털 또는 API를 사용하여 CR을 배포하여 생성한 개발자 계정 또는 developer 사용자를 삭제할 수 있습니다.

8.12.1. 사전 요구 사항

  • 3scale은 3scale 연산자에 의해 설치되었습니다.
  • 3scale에 대한 관리자 권한을 제공하는 Account Management API 범위에서 읽기 및 쓰기 권한이 있는 토큰에 액세스합니다.

8.12.2. DeveloperAccount 사용자 정의 리소스를 배포하여 3scale 개발자 계정 관리

3scale Operator를 사용하여 3scale을 설치할 때 DeveloperAccount 및 Developer User CR(사용자 정의 리소스)을 배포할 수 있습니다. 이러한 CR을 사용하면 개발자 포털에서 3scale-managed API에 액세스할 수 있도록 계정을 생성하고 업데이트할 수 있습니다.

DeveloperAccount CR을 배포하려면 admin 역할이 있는 사용자에 대해 DeveloperUser CR도 배포해야 합니다. 여기에서 제공되는 절차는 새 DeveloperAccount CR을 배포하는 것입니다. DeveloperAccount CR을 배포한 후 이를 업데이트하거나 삭제하는 절차는 다른 CR과 동일합니다.

3scale Operator가 포함된 네임스페이스에만 CR을 배포할 수 있습니다.

사전 요구 사항

  • 3scale Operator가 사용자 정의 리소스 링크가 있는 테넌트를 식별하는 방법에 대한 이해입니다.
  • 동일한 네임스페이스에 있는 3scale 인스턴스에서 기본 테넌트에 연결되지 않는 DeveloperAccount 사용자 정의 리소스를 생성하는 경우 DeveloperAccount CR이 포함된 네임스페이스에 DeveloperAccount CR이 연결되는 테넌트를 식별하는 시크릿이 포함됩니다. 보안 이름은 다음 중 하나입니다.

    • threescale-provider-account
    • 사용자 정의

    이 시크릿에는 3scale 인스턴스의 URL과 해당 3scale 인스턴스의 테넌트 1개에 대한 액세스 자격 증명이 포함된 토큰이 포함됩니다.

  • DeveloperAccount CR에 admin 역할이 있는 developer 사용자를 위한 사용자 이름, 암호 및 이메일 주소가 있습니다.

절차

  1. 3scale 운영자가 포함된 네임스페이스에서 새 개발자 계정 리소스에 admin 역할이 있는 developer 사용자의 사용자 이름과 암호가 포함된 시크릿을 정의하는 리소스 파일을 만들고 저장합니다. 예를 들어 myusername01.yaml 파일에는 다음이 포함될 수 있습니다.

    apiVersion: v1
    kind: Secret
    metadata:
      name: myusername01
    stringData:
      password: "123456"
    Copy to clipboard
  2. 시크릿을 생성합니다. 예를 들면 다음과 같습니다.

    oc create -f myusername01.yaml
    Copy to clipboard

    주어진 예에서 출력은 다음과 같습니다.

    secret/myusername01 created
    Copy to clipboard
  3. admin 역할이 있는 개발자의 DeveloperUser CR을 정의하는 .yaml 파일을 생성하고 저장합니다. 3scale Operator가 새 Developer Account CR을 배포하는 데 이 Developer User CR이 필요합니다. 예를 들어 developeruser01.yaml 파일에는 다음이 포함될 수 있습니다.

    apiVersion: capabilities.3scale.net/v1beta1
    kind: DeveloperUser
    metadata:
      name: developeruser01
    spec:
      username: myusername01
      email: myusername01@example.com
      passwordCredentialsRef:
        name: myusername01
      role: admin
      developerAccountRef:
        name: developeraccount1
      providerAccountRef:
        name: mytenant
    Copy to clipboard

    DeveloperUser CR에서 다음을 수행합니다.

    • developer 사용자 계정 이름, 사용자 이름 및 이메일은 DeveloperAccount 가 연결되는 테넌트에서 고유해야 합니다.
    • 여기에서 지정하는 개발자 계정 이름은 이 프로세스에서 배포하는 DeveloperAccount CR의 이름과 일치해야 합니다. 이 Developer User CR을 생성하기 전후에 DeveloperAccount CR을 생성할지 여부는 중요하지 않습니다.
    • DeveloperUser CR을 연결하는 테넌트는 지정된 DeveloperAccount CR 링크와 동일한 테넌트여야 합니다.
  4. 방금 정의한 리소스를 생성합니다. 예를 들면 다음과 같습니다.

    oc create -f developeruser01.yaml
    Copy to clipboard

    주어진 예에서 출력은 다음과 같습니다.

    developeruser.capabilities.3scale.net/developeruser01 created
    Copy to clipboard
  5. DeveloperAccount CR을 정의하는 .yaml 파일을 생성하고 저장합니다. 이 .yaml 파일에서 spec.OrgName 필드는 조직 이름을 지정해야 합니다. 예를 들어 developeraccount01.yaml 파일에는 다음이 포함될 수 있습니다.

    apiVersion: capabilities.3scale.net/v1beta1
    kind: DeveloperAccount
    metadata:
      name: developeraccount01
    spec:
      orgName: Ecorp
      providerAccountRef:
        name: mytenant
    Copy to clipboard
  6. 방금 정의한 리소스를 생성합니다. 예를 들면 다음과 같습니다.

    oc create -f developeraccount01.yaml
    Copy to clipboard

    주어진 예에서 출력은 다음과 같습니다.

    developeraccount.capabilities.3scale.net/developeraccount01 created
    Copy to clipboard

다음 단계

3scale Operator가 3scale 구성을 업데이트하여 새 사용자 지정 리소스를 반영하는 데 몇 초가 걸립니다. Operator가 사용자 정의 리소스 정보를 전파하는지 확인하려면 DeveloperAccount 사용자 정의 리소스 상태 필드를 확인하거나 oc wait 명령을 실행합니다. 예를 들면 다음과 같습니다.

oc wait --for=condition=Ready --timeout=30s developeraccount/developeraccount1
Copy to clipboard

실패하는 경우 사용자 정의 리소스의 상태 필드는 오류가 일시적이거나 영구적일지 여부를 나타내며 문제를 해결하는 데 도움이 되는 오류 메시지를 제공합니다.

새 개발자 사용자에게 개발자 포털에 로그인할 수 있음을 알립니다. 또한 로그인 자격 증명을 전달해야 할 수도 있습니다.

다른 사용자 정의 리소스를 업데이트하거나 삭제하는 것과 동일한 방식으로 배포된 DeveloperAccount 사용자 정의 리소스를 업데이트하거나 삭제할 수 있습니다. 그러나 DeveloperAccount CR을 삭제해도 3scale Operator는 실제로 해당 CR을 삭제하지 않습니다. 삭제한 DeveloperAccount CR과 동일한 이름을 가진 새 DeveloperAccount CR을 배포하려는 경우 해당 이름의 DeveloperAccount CR이 이미 있다는 메시지가 표시됩니다. 새 DeveloperAccount CR에 다른 이름을 지정해야 합니다.

8.12.3. DeveloperUser 사용자 정의 리소스를 배포하여 3scale 개발자 사용자 관리

3scale 운영자를 사용하여 3scale을 설치하는 경우 개발자 포털에서 3scale-managed API에 대한 개발자 액세스를 관리하기 위해 DeveloperUser CR(사용자 정의 리소스)을 배포할 수 있습니다. 여기에서 제공되는 절차는 새 DeveloperUser CR을 배포하는 것입니다. DeveloperUser CR을 배포한 후 업데이트하거나 삭제하는 절차는 다른 CR과 동일합니다.

3scale Operator가 포함된 네임스페이스에만 CR을 배포할 수 있습니다.

사전 요구 사항

  • 3scale Operator가 사용자 정의 리소스 링크가 있는 테넌트를 식별하는 방법에 대한 이해입니다.
  • admin 역할이 있는 사용자에 대해 배포된 Developer User CR이 하나 이상 포함된 Developer Account 사용자 정의 리소스가 하나 이상 있습니다. 동일한 네임스페이스에 있는 3scale 인스턴스에서 기본 테넌트에 연결되지 않는 DeveloperUser 사용자 지정 리소스를 생성하는 경우 DeveloperUser CR이 포함된 네임스페이스에 DeveloperUser CR이 연결되는 테넌트를 식별하는 시크릿이 포함됩니다. 보안 이름은 다음 중 하나입니다.

    • threescale-provider-account
    • 사용자 정의

    이 시크릿에는 3scale 인스턴스의 URL과 해당 3scale 인스턴스의 테넌트 1개에 대한 액세스 자격 증명이 포함된 토큰이 포함됩니다.

  • DeveloperUser 사용자 지정 리소스의 경우 해당 개발자의 사용자 이름, 암호 및 이메일 주소가 있습니다.

절차

  1. 3scale 운영자가 포함된 네임스페이스에서 developer 사용자의 사용자 이름과 암호가 포함된 시크릿을 정의하는 리소스 파일을 만들고 저장합니다. 예를 들어 myusername02.yaml 파일에는 다음이 포함될 수 있습니다.

    apiVersion: v1
    kind: Secret
    metadata:
      name: myusername02
    stringData:
      password: "987654321"
    Copy to clipboard
  2. 시크릿을 생성합니다. 예를 들면 다음과 같습니다.

    oc create -f myusername02.yaml
    Copy to clipboard

    주어진 예에서 출력은 다음과 같습니다.

    secret/myusername02 created
    Copy to clipboard
  3. DeveloperUser CR을 정의하는 .yaml 파일을 생성하고 저장합니다. spec.role 필드에 admin 또는 member 를 지정합니다. 예를 들어 developeruser02.yaml 파일에는 다음이 포함될 수 있습니다.

    apiVersion: capabilities.3scale.net/v1beta1
    kind: DeveloperUser
    metadata:
      name: developeruser02
    spec:
      username: myusername02
      email: myusername02@example.com
      passwordCredentialsRef:
        name: myusername02
      role: member
      developerAccountRef:
        name: developeraccount1
      providerAccountRef:
        name: mytenant
    Copy to clipboard

    DeveloperUser CR에서 다음을 수행합니다.

    • developer 사용자 이름(metadata .name 필드에 지정됨), 사용자 이름 및 이메일은 포함된 DeveloperAccount 링크가 포함된 테넌트에서 고유해야 합니다.
    • developerAccountRef 필드는 배포된 DeveloperAccount CR의 이름을 지정해야 합니다.
    • DeveloperUser CR을 연결하는 테넌트는 지정된 DeveloperAccount CR 링크와 동일한 테넌트여야 합니다.
  4. 방금 정의한 리소스를 생성합니다. 예를 들면 다음과 같습니다.

    oc create -f developefuser02.yaml
    Copy to clipboard

    주어진 예에서 출력은 다음과 같습니다.

    developeruser.capabilities.3scale.net/developeruser02 created
    Copy to clipboard

다음 단계

3scale Operator가 3scale 구성을 업데이트하여 새 사용자 지정 리소스를 반영하는 데 몇 초가 걸립니다. Operator가 사용자 정의 리소스 정보를 전파하는지 확인하려면 DeveloperUser 사용자 정의 리소스 상태 필드를 확인하거나 oc wait 명령을 실행합니다. 예를 들면 다음과 같습니다.

oc wait --for=condition=Ready --timeout=30s developeruser/developeruser02
Copy to clipboard

실패하는 경우 사용자 정의 리소스의 상태 필드는 오류가 일시적이거나 영구적일지 여부를 나타내며 문제를 해결하는 데 도움이 되는 오류 메시지를 제공합니다.

새 개발자 사용자에게 개발자 포털에 로그인할 수 있음을 알립니다. 또한 로그인 자격 증명을 전달해야 할 수도 있습니다.

다른 사용자 정의 리소스를 업데이트하거나 삭제하는 것과 동일한 방식으로 배포된 DeveloperUser 사용자 정의 리소스를 업데이트하거나 삭제할 수 있습니다. 그러나 DeveloperUser CR을 삭제할 때 3scale Operator는 실제로 해당 CR을 삭제하지 않습니다. 삭제한 DeveloperUser CR과 동일한 계정 이름, 사용자 이름 또는 이메일을 가진 새 DeveloperUser CR을 배포하려는 경우 DeveloperUser CR이 이미 있다는 메시지가 표시됩니다. 새 DeveloperUser CR에 다른 개발자 계정 이름, 사용자 이름 또는 이메일을 지정해야 합니다.

추가 리소스

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat, Inc.