5.2. 기능 관련 사용자 정의 리소스 배포
새로 생성된 테넌트에서 Openshift Container Platform 을 사용하면 API,메트릭 및 매핑 규칙을 구성합니다.
5.2.1. API 생성
다음 절차에서는 api: api01 레이블이 있는 API를 생성합니다.
절차
메뉴 구조는 사용 중인 OpenShift 버전에 따라 다릅니다.
- OCP 4.1의 경우 카탈로그 > 설치된 Operator를 클릭합니다.
OCP 4.2의 경우 Operator > 설치된 Operator를 클릭합니다.
- 설치된 Operator 목록에서 3scale Operator를 클릭합니다.
- API 탭을 클릭합니다.
- API 생성을 클릭합니다.
샘플 콘텐츠를 지우고 편집기에 다음 YAML 정의를 추가한 다음 생성 을 클릭합니다.
apiVersion: capabilities.3scale.net/v1alpha1 kind: API metadata: creationTimestamp: 2019-01-25T13:28:41Z generation: 1 labels: environment: testing name: api01 spec: planSelector: matchLabels: api: api01 description: api01 integrationMethod: apicastHosted: apiTestGetRequest: / authenticationSettings: credentials: apiKey: authParameterName: user-key credentialsLocation: headers errors: authenticationFailed: contentType: text/plain; charset=us-ascii responseBody: Authentication failed responseCode: 403 authenticationMissing: contentType: text/plain; charset=us-ascii responseBody: Authentication Missing responseCode: 403 hostHeader: "" secretToken: Shared_secret_sent_from_proxy_to_API_backend_9603f637ca51ccfe mappingRulesSelector: matchLabels: api: api01 privateBaseURL: https://echo-api.3scale.net:443 metricSelector: matchLabels: api: api01참고모든 선택기(지표,계획,mappingrules)는 특정 라벨
api: api01을 사용합니다. 레이블을 추가하고 복잡한 시나리오를 포함하도록 선택기를 구성하여 이를 변경할 수 있습니다.
5.2.2. 계획 추가
다음 절차에서는 api: api01 레이블이 있는 계획을 추가합니다.
절차
메뉴 구조는 사용 중인 OpenShift 버전에 따라 다릅니다.
- OCP 4.1의 경우 카탈로그 > 설치된 Operator를 클릭합니다.
OCP 4.2의 경우 Operator > 설치된 Operator를 클릭합니다.
- 설치된 Operator 목록에서 3scale Operator를 클릭합니다.
- 계획 탭을 클릭합니다.
- 계획 생성을 클릭합니다.
샘플 콘텐츠를 지우고 편집기에 다음 YAML 정의를 추가한 다음 생성 을 클릭합니다.
apiVersion: capabilities.3scale.net/v1alpha1 kind: Plan metadata: labels: api: api01 name: plan01 spec: approvalRequired: false default: true costs: costMonth: 0 setupFee: 0 limitSelector: matchLabels: api: api01 trialPeriod: 0
5.2.3. 메트릭 추가
다음 절차에서는 metric01 이라는 지표를 추가합니다.
절차
메뉴 구조는 사용 중인 OpenShift 버전에 따라 다릅니다.
- OCP 4.1의 경우 카탈로그 > 설치된 Operator를 클릭합니다.
OCP 4.2의 경우 Operator > 설치된 Operator를 클릭합니다.
- 설치된 Operator 목록에서 3scale Operator를 클릭합니다.
- 메트릭 탭을 클릭합니다.
- 메트릭 생성을 클릭합니다.
샘플 콘텐츠를 지우고 편집기에 다음 YAML 정의를 추가한 다음 생성 을 클릭합니다.
apiVersion: capabilities.3scale.net/v1alpha1 kind: Metric metadata: labels: api: api01 name: metric01 spec: description: metric01 unit: hit incrementHits: false
5.2.4. 제한 설정
다음 절차에서는 메트릭에 대해 하루에 10 번의 히트 제한이 있는 제한을 설정합니다.
절차
메뉴 구조는 사용 중인 OpenShift 버전에 따라 다릅니다.
- OCP 4.1의 경우 카탈로그 > 설치된 Operator를 클릭합니다.
OCP 4.2의 경우 Operator > 설치된 Operator를 클릭합니다.
- 설치된 Operator 목록에서 3scale Operator를 클릭합니다.
- 제한 탭을 클릭합니다.
- 제한 생성을 클릭합니다.
샘플 콘텐츠를 지우고 편집기에 다음 YAML 정의를 추가한 다음 생성 을 클릭합니다.
apiVersion: capabilities.3scale.net/v1alpha1 kind: Limit metadata: labels: api: api01 name: plan01-metric01-day-10 spec: description: Limit for metric01 in plan01 maxValue: 10 metricRef: name: metric01 period: day
5.2.5. 매핑 규칙 추가
다음 절차에서는 metric01 증가에 MappingRule 을 추가합니다.
절차
메뉴 구조는 사용 중인 OpenShift 버전에 따라 다릅니다.
- OCP 4.1의 경우 카탈로그 > 설치된 Operator를 클릭합니다.
OCP 4.2의 경우 Operator > 설치된 Operator를 클릭합니다.
- 설치된 Operator 목록에서 3scale Operator를 클릭합니다.
- MappingRule 탭을 클릭합니다.
- 매핑 규칙 생성을 클릭합니다.
샘플 콘텐츠를 지우고 편집기에 다음 YAML 정의를 추가한 다음 생성 을 클릭합니다.
apiVersion: capabilities.3scale.net/v1alpha1 kind: MappingRule metadata: labels: api: api01 name: metric01-get-path01 spec: increment: 1 method: GET metricRef: name: metric01 path: /path01
5.2.6. 바인딩 생성
바인딩 오브젝트를 사용하여 바인딩하려면 다음 절차를 사용하십시오.
Tenant Controller에서 생성한 인증 정보 사용
절차
메뉴 구조는 사용 중인 OpenShift 버전에 따라 다릅니다.
- OCP 4.1의 경우 카탈로그 > 설치된 Operator를 클릭합니다.
OCP 4.2의 경우 Operator > 설치된 Operator를 클릭합니다.
- 설치된 Operator 목록에서 3scale Operator를 클릭합니다.
- 바인딩 탭을 클릭합니다.
- 바인딩 생성을 클릭합니다.
샘플 콘텐츠를 지우고 편집기에 다음 YAML 정의를 추가한 다음 생성 을 클릭합니다.
apiVersion: capabilities.3scale.net/v1alpha1 kind: Binding metadata: name: mytestingbinding spec: credentialsRef: name: ecorp-tenant-secret APISelector: matchLabels: environment: testing바인딩 오브젝트는
ecorp-tenant-secret을 참조하고environment: staging으로 레이블이 지정된 API 오브젝트를 만듭니다.새 3scale 테넌트로 이동하여 이전 단계에서 수행한 모든 작업이 생성되었는지 확인합니다.
참고자세한 내용은 참조 문서 Capabilities CRD 참조를 참조하십시오.