분석 CR 작성

분석 하위 시스템을 배포할 수 있도록 API Connect 분석에 대한 설치 CR을 만듭니다.

시작하기 전에

중요: 분석 서브시스템을 설치할 때 관리 서브시스템으로부터의 통신이 mTLS 또는 JWT로 보안되도록 분석 서브시스템을 구성해야 합니다. 서브시스템 간 통신에 대한 자세한 정보는 서브시스템 간 통신을 위한 네트워크 요구사항을 참조하십시오.

분석 설치 전 작업 계획 을 검토하여 배치 옵션을 결정하십시오.

이 태스크 정보

분석 서브시스템을 설치하려면 YAML 파일에서 분석 사용자 정의 자원 (CR) 을 정의하십시오. YAML 파일에는 분석 배치에 대한 모든 구성 설정이 포함되어 있습니다. 이 파일을 사용하여 분석 서브시스템의 구성을 설치, 업그레이드 및 업데이트하십시오.
참고: analytics_cr.yaml 템플리트 파일은 helper_files.zip의 압축을 푼 디렉토리에 저장됩니다.

프로시저

  1. helper_files에서 analytics_cr.yaml 파일을 작성하거나 복사하십시오.
  2. 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_TYPEshared로 설정하십시오. n3 (세 개의 복제본) 프로파일을 선택한 경우 $STORAGE_TYPEdedicated로 설정하십시오. 분석 스토리지 유형에 대한 자세한 정보는 스토리지 유형을 참조하십시오.
    $STORAGE_CLASS
    지속적 볼륨 청구에 사용될 Kubernetes 스토리지 클래스입니다. 자세한 정보는 Analytics 설치 전 작업 계획을 참조하십시오. kubectl get sc명령을 실행하여 대상 클러스터에서 사용 가능한 스토리지 클래스를 찾으십시오.
    • 공유 스토리지 배치의 경우 (여기서 $STORAGE_TYPEshared로 설정함):
        storage:
          type: shared
          shared:
            volumeClaimTemplate:
              storageClassName: local_storage
    • 전용 스토리지 배치의 경우 (여기서 $STORAGE_TYPEdedicated로 설정함) 다음 두 위치에서 $STORAGE_CLASS 를 설정하십시오.
        storage:
          type: dedicated
          shared:
            volumeClaimTemplate:
              storageClassName: local_storage
              ...
          master:
            volumeClaimTemplate:
              storageClassName: local_storage
              ...
    데이터_볼륨_크기
    $DATA_VOLUME_SIZE스토리지 요구사항 예상에서 계산한 값으로 대체하십시오. 스토리지 요구사항을 예상할 수 없는 경우 500Gi로 설정하십시오.
      storage:
        ...
        shared:
          volumeClaimTemplate:
            ...
            volumeSize: 500Gi
  3. license 설정을 편집하십시오.
    1. 라이센스에 동의하려면 accept:true 로 설정하십시오. 기본값은 false입니다. 라이센스에 동의하지 않으면 운영자가 서브시스템을 설치하지 않습니다.
    2. 제품 사용을 추적하려면 설정 metric: 하십시오. 프로그램 라이센스에 사용되는 측정 단위를 입력하십시오.
      • PROCESSOR_VALUE_UNIT-기본값. 필드를 공백으로 두면 이 값이 사용됩니다.
      • MONTHLY_API_CALL - IBM API Connect 하이브리드 자격 프로그램에만 적용됩니다.

      월별 호출 볼륨 추적에 대한 정보는 총 API 호출 수 계산을 참조하십시오.

    3. use:production 또는 nonproduction 중 하나로 설정하여 구매한 라이센스와 일치시키십시오.
    4. 구매한 license: 버전에 대한 라이선스 ID를 API Connect으로 설정합니다. API Connect licenses을 참조하세요.

    다음은 프로덕션 시스템에 대한 라이센스에 동의하는 예제 항목입니다.

      license:
        accept: true
        metric: PROCESSOR_VALUE_UNIT 
        use: production
        license: L-RJON-CEBL97
  4. 선택사항: 다음 사이의 통신에 대해 mTLS 를 사용 안함으로 설정하려는 경우 관리 및 분석 서브시스템과 게이트웨이 및 분석 서브시스템 간에 JWT를 대신 사용으로 설정한 후 mtlsValidateClientjwksUrl특성을 추가하고 설정하십시오.
    spec:
      ...
      mtlsValidateClient: false
      jwksUrl: <JWKS URL>
    여기서 <JWKS URL > 는 관리 하위 시스템에서 호스팅되는 JWKS 엔드포인트의 URL 입니다. jwksUrl를 찾으려면 관리 CR을 설명하고 status: 섹션을 확인하십시오.
    kubectl describe mgmt -n <namespace>
    ...
    status:
      - name: jwksUrl
        secretName: api-endpoint
        type: API
        uri: https://api.apic.acme.com/api/cloud/oauth2/certs
    JWT 보안에 대한 자세한 정보는 mTLS대신 JWT 보안 사용을 참조하십시오.
    참고: 분석 메시지 플로우에 대한 V5 호환 게이트웨이에서는 JWT를 사용할 수 없습니다.
  5. 선택 사항입니다: 참여용 Amazon SNS를 사용하도록 설정하고 다음 단계를 완료합니다:
    1. 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
      이러한 키의 이름을 변경하면 통합이 실패합니다.
    2. 애널리틱스 CR에서 시크릿을 참조하세요. 애널리틱스 사용자 지정 리소스 YAML에 다음 항목을 추가합니다:
      awsCredentialsSecret:
          secretName: <aws-creds-secret>
      Aws-creds-secret을 a 단계에서 만든 비밀의 정확한 이름으로 바꿉니다. 이제 분석 서비스에서 Amazon SNS에 액세스하기 위해 AWS 자격 증명을 사용할 수 있습니다.
  6. 선택사항: 분석 데이터베이스 백업을 구성하려는 경우 백업에 필요한 스토리지를 정의하십시오.
    spec.storage에서 backup.volumeClaimTemplate 특성을 추가하여 백업 PVC를 정의하십시오. 예를 들어,
    spec:
      storage:
        backup:
          volumeClaimTemplate:
            storageClassName: <storage class>
            volumeSize: <size>

    필요한 볼륨 크기가 확실하지 않으면 설치 후 backup.volumeClaimTemplate 를 구성할 수 있습니다.

  7. 파일을 저장하십시오.

다음에 수행할 작업

분석 하위 시스템을 설치합니다: 애널리틱스 설치하기
중요: 모든 분석 고급 구성 옵션 은 내부 스토리지의 사용 안함 또는 사용 설정을 제외하고 설치 후에 추가, 변경 또는 제거할 수 있습니다. 내부 스토리지를 사용 안함으로 설정하려면 설치 전에 분석 CR에서 이를 구성해야 합니다. 로컬 스토리지 사용 안함.