분석 CR 작성
분석 하위 시스템을 배포할 수 있도록 API Connect 분석에 대한 설치 CR을 만듭니다.
시작하기 전에
중요: 분석 서브시스템을 설치할 때 관리 서브시스템으로부터의 통신이 mTLS 또는 JWT로 보안되도록 분석 서브시스템을 구성해야 합니다. 서브시스템 간 통신에 대한 자세한 정보는 서브시스템 간 통신을 위한 네트워크 요구사항을 참조하십시오.
분석 설치 전 작업 계획 을 검토하여 배치 옵션을 결정하십시오.
이 태스크 정보
분석 서브시스템을 설치하려면 YAML 파일에서 분석 사용자 정의 자원 (CR) 을 정의하십시오. YAML 파일에는 분석 배치에 대한 모든 구성 설정이 포함되어 있습니다. 이 파일을 사용하여 분석 서브시스템의 구성을 설치, 업그레이드 및 업데이트하십시오.
참고: analytics_cr.yaml 템플리트 파일은 helper_files.zip의 압축을 푼 디렉토리에 저장됩니다.
프로시저
- helper_files에서 analytics_cr.yaml 파일을 작성하거나 복사하십시오.
- CR 파일을 편집하고 다음 설정을 업데이트하십시오.
플레이스홀더가 사용자 환경의 실제 값으로 대체될 때까지 분석 서브시스템을 설치할 수 없습니다.
$APP_PRODUCT_VERSION- API Connect 하위 시스템에 대한 애플리케이션 버전입니다.
version: <version_number>예시 버전 번호: 10.0.8.6
$PROFILE- 분석 서브시스템 프로파일을 지정하십시오. 여기서
n는 복제본 수,c코어 수,m는 최소 메모리 할당 (GB) 입니다. 프로파일에 대한 자세한 정보는 배치 및 컴포넌트 프로파일을 참조하십시오.참고: 선택하는 프로파일은 스토리지 유형 옵션에 영향을 줍니다.n1프로파일을 선택하는 경우shared스토리지 유형을 선택해야 합니다. 스토리지 유형에 대한 자세한 정보는 스토리지 유형을 참조하십시오. $SECRET_NAME- Docker 레지스트리로부터 이미지를 가져오는 데 사용된 시크릿의 이름입니다.
imagePullSecrets: - apic-registry-secret $DOCKER_REGISTRY- 설치 이미지를 업로드한 Docker 레지스트리의 호스트 이름입니다. 예를 들어,
my.docker.registry.domain.example.com. - $INGRESS_CLASS
- 엔드포인트에서 사용할 Ingress 클래스입니다. 이 특성은 선택사항이며 지정되지 않은 경우
ingressclass.kubernetes.io/is-default-class: true어노테이션이 있는 Ingress 클래스가 사용됩니다. 이러한 Ingress 클래스가 Kubernetes 환경에 없으면nginx가 사용됩니다. 이 값을 설정하는 경우 Kubernetes 시스템에 구성된 올바른 Ingress 클래스를 참조해야 합니다. 예를 들어,spec: ... ingestion: endpoint: #ingressClassName: $INGRESS_CLASS참고: 이 특성은 템플리트 CR 파일에서 주석 처리됩니다. 이 값을 설정하는 경우 주석 해제해야 합니다. $STACK_HOST- API Connect 스택의 Ingress 하위 도메인입니다. 수집 엔드포인트에 사용됩니다. 엔드포인트에 사용되는 도메인 이름은 밑줄 "_" 문자를 포함할 수 없습니다. 하위 도메인 또는 전체 호스트 이름을 사용자 정의할 수 있습니다.
- 서브도메인 사용자 정의만
사용할 Ingress 호스트 이름에 대해 사전 정의된 접두부를 승인하고
$STACK_HOST의 모든 인스턴스를 API Connect 스택의 Ingress 하위 도메인으로 대체하십시오. 예를 들어, 호스트가myhost.subnet.example.com인 경우:ingestion: endpoint: < ... > hosts: - name: ai.myhost.subnet.example.com secretName: analytics-ai-endpoint < .... >
- 서브도메인 사용자 정의만
$STORAGE_TYPE$PROFILE에서 n1 (하나의 복제본) 프로파일을 선택한 경우$STORAGE_TYPE를shared로 설정하십시오. n3 (세 개의 복제본) 프로파일을 선택한 경우$STORAGE_TYPE를dedicated로 설정하십시오. 분석 스토리지 유형에 대한 자세한 정보는 스토리지 유형을 참조하십시오.$STORAGE_CLASS- 지속적 볼륨 청구에 사용될 Kubernetes 스토리지 클래스입니다. 자세한 정보는 Analytics 설치 전 작업 계획을 참조하십시오.
kubectl get sc명령을 실행하여 대상 클러스터에서 사용 가능한 스토리지 클래스를 찾으십시오.- 공유 스토리지 배치의 경우 (여기서
$STORAGE_TYPE를shared로 설정함):storage: type: shared shared: volumeClaimTemplate: storageClassName: local_storage - 전용 스토리지 배치의 경우 (여기서
$STORAGE_TYPE를dedicated로 설정함) 다음 두 위치에서$STORAGE_CLASS를 설정하십시오.storage: type: dedicated shared: volumeClaimTemplate: storageClassName: local_storage ... master: volumeClaimTemplate: storageClassName: local_storage ...
- 공유 스토리지 배치의 경우 (여기서
- 데이터_볼륨_크기
$DATA_VOLUME_SIZE를 스토리지 요구사항 예상에서 계산한 값으로 대체하십시오. 스토리지 요구사항을 예상할 수 없는 경우 500Gi로 설정하십시오.storage: ... shared: volumeClaimTemplate: ... volumeSize: 500Gi
-
license설정을 편집하십시오.- 라이센스에 동의하려면
accept:를true로 설정하십시오. 기본값은false입니다. 라이센스에 동의하지 않으면 운영자가 서브시스템을 설치하지 않습니다. - 제품 사용을 추적하려면 설정
metric:하십시오. 프로그램 라이센스에 사용되는 측정 단위를 입력하십시오.- PROCESSOR_VALUE_UNIT-기본값. 필드를 공백으로 두면 이 값이 사용됩니다.
- MONTHLY_API_CALL - IBM API Connect 하이브리드 자격 프로그램에만 적용됩니다.
월별 호출 볼륨 추적에 대한 정보는 총 API 호출 수 계산을 참조하십시오.
-
use:를production또는nonproduction중 하나로 설정하여 구매한 라이센스와 일치시키십시오. - 구매한
license:버전에 대한 라이선스 ID를 API Connect으로 설정합니다. API Connect licenses을 참조하세요.
다음은 프로덕션 시스템에 대한 라이센스에 동의하는 예제 항목입니다.
license: accept: true metric: PROCESSOR_VALUE_UNIT use: production license: L-RJON-CEBL97 - 라이센스에 동의하려면
- 선택사항: 다음 사이의 통신에 대해 mTLS 를 사용 안함으로 설정하려는 경우 관리 및 분석 서브시스템과 게이트웨이 및 분석 서브시스템 간에 JWT를 대신 사용으로 설정한 후
mtlsValidateClient및jwksUrl특성을 추가하고 설정하십시오.
여기서 <JWKS URL > 는 관리 하위 시스템에서 호스팅되는 JWKS 엔드포인트의 URL 입니다.spec: ... mtlsValidateClient: false jwksUrl: <JWKS URL>jwksUrl를 찾으려면 관리 CR을 설명하고status:섹션을 확인하십시오.
JWT 보안에 대한 자세한 정보는 mTLS대신 JWT 보안 사용을 참조하십시오.kubectl describe mgmt -n <namespace> ... status: - name: jwksUrl secretName: api-endpoint type: API uri: https://api.apic.acme.com/api/cloud/oauth2/certs참고: 분석 메시지 플로우에 대한 V5 호환 게이트웨이에서는 JWT를 사용할 수 없습니다. - 선택 사항입니다: 참여용 Amazon SNS를 사용하도록 설정하고 다음 단계를 완료합니다:
- AWS 자격증명 비밀을 생성합니다. 다음 명령을 실행하여 AWS 자격 증명이 포함된 Kubernetes/OpenShift 비밀 번호를 생성합니다:
다음과 같이 수행하십시오.kubectl create secret generic <aws-creds-secret> \ --from-literal=access_key_id=<aws_access_key_id> \ --from-literal=secret_access_key=<aws_secret_access_key> \ -n <namespace>- aWS-크레딧-시크릿
- 비밀의 이름
- AWS_ACCESS_KEY_ID
- 실제 AWS IAM 액세스 키 ID
- AWS_SECRET_ACCESS_KEY
- 실제 AWS IAM 비밀 액세스 키
- 네임스페이스
- Analytics CR이 배포된 네임스페이스
중요: 키의 이름은 다음과 같이 정확하게 지정해야 합니다:- access_key_id
- secret_access_key
- 애널리틱스 CR에서 시크릿을 참조하세요. 애널리틱스 사용자 지정 리소스 YAML에 다음 항목을 추가합니다:
awsCredentialsSecret: secretName: <aws-creds-secret>Aws-creds-secret을 a 단계에서 만든 비밀의 정확한 이름으로 바꿉니다. 이제 분석 서비스에서 Amazon SNS에 액세스하기 위해 AWS 자격 증명을 사용할 수 있습니다.
- AWS 자격증명 비밀을 생성합니다. 다음 명령을 실행하여 AWS 자격 증명이 포함된 Kubernetes/OpenShift 비밀 번호를 생성합니다:
- 선택사항: 분석 데이터베이스 백업을 구성하려는 경우 백업에 필요한 스토리지를 정의하십시오.
spec.storage에서backup.volumeClaimTemplate특성을 추가하여 백업 PVC를 정의하십시오. 예를 들어,spec: storage: backup: volumeClaimTemplate: storageClassName: <storage class> volumeSize: <size>필요한 볼륨 크기가 확실하지 않으면 설치 후
backup.volumeClaimTemplate를 구성할 수 있습니다. - 파일을 저장하십시오.
다음에 수행할 작업
분석 하위 시스템을 설치합니다: 애널리틱스 설치하기
중요: 모든 분석 고급 구성 옵션 은 내부 스토리지의 사용 안함 또는 사용 설정을 제외하고 설치 후에 추가, 변경 또는 제거할 수 있습니다. 내부 스토리지를 사용 안함으로 설정하려면 설치 전에 분석 CR에서 이를 구성해야 합니다. 로컬 스토리지 사용 안함.