4단계: 클러스터 구성

구성 재정의 지정

Apigee Hybrid 설치 프로그램은 많은 설정에 기본값을 사용합니다. 하지만 기본값이 없는 몇 가지 설정이 있습니다. 다음에 설명된 대로 이 설정에 값을 제공해야 합니다.

  1. 현재 위치가 hybrid-base-directory/hybrid-files/overrides/ 디렉터리인지 확인합니다.
    cd hybrid-base-directory/hybrid-files/overrides
  2. 즐겨 찾는 텍스트 편집기에서 overrides.yaml라는 새 파일을 만듭니다. 예를 들면 다음과 같습니다.
    vi overrides.yaml

    overrides.yaml은 고유 Apigee Hybrid 설치에 대한 구성을 제공합니다. 이 단계의 재정의 파일은 첫 번째 설치에 적합한 소규모 하이브리드 런타임 설치를 위한 기본 구성을 제공합니다.

  3. overrides.yaml에서 아래 표시된 필요한 속성 값을 추가합니다. 각 속성에 대한 자세한 설명은 다음과 같습니다.

    구문

    overrides.yaml 파일에 다음 구조와 문법이 있는지 확인합니다. red, bold italics의 값은 제공해야 하는 속성 값이며, 다음 표에 설명되어 있습니다.

    
    gcp:
      region: analytics-region
      projectID: gcp-project-id
    
    k8sCluster:
      name: cluster-name
      region: cluster-region # Must be the same region where the cluster is running.
    
    org: org-name
    
    instanceID: "unique-instance-identifier"
    
    cassandra:
      hostNetwork: false #Set this to `true` for GKE-On-prem installations.
    
    virtualhosts:
      - name: environment-group-name
        sslCertPath: ./certs/cert-name.pem
        sslKeyPath: ./certs/key-name.key
    
    envs:
      - name: environment-name
        serviceAccountPaths:
          synchronizer: ./service-accounts/synchronizer-service-account-name.json
          udca: ./service-accounts/udca-service-account-name.json
    
    mart:
      serviceAccountPath: ./service-accounts/mart-service-account-name.json
    
    connectAgent:
      serviceAccountPath: ./service-accounts/mart-service-account-name.json
      # Same account used for mart and connectAgent
    
    metrics:
      serviceAccountPath: ./service-accounts/metrics-service-account-name.json
    
    watcher:
      serviceAccountPath: ./service-accounts/watcher-service-account-name.json
    
    logger:
      enabled: true
      serviceAccountPath: ./service-accounts/logger-service-account-name.json
    

    다음 예시에서는 예시 속성 값이 추가된, 완료된 재정의 파일을 보여줍니다.

    gcp:
      region: us-central1
      projectID: hybrid-example
    
    k8sCluster:
      name: apigee-hybrid
      region: us-central1
    
    org: hybrid-example
    
    instanceID: "my_hybrid_example"
    
    cassandra:
      hostNetwork: false #Set this to `true` for GKE-On Prem installations.
    
    virtualhosts:
      - name: example-env-group
        sslCertPath: ./certs/keystore.pem
        sslKeyPath: ./certs/keystore.key
    
    envs:
      - name: test
        serviceAccountPaths:
          synchronizer: ./service-accounts/hybrid-project-apigee-synchronizer.json
          udca: ./service-accounts/hybrid-project-apigee-udca.json
    
    mart:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-mart.json
    
    connectAgent:
      serviceAccountPath: ./service-accounts/example-hybrid-apigee-mart.json
    
    metrics:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-metrics.json
    
    watcher:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-watcher.json
    
    logger:
      enabled: true
      serviceAccountPath: ./service-accounts/logger-service-account-name.json
    
    
  4. 완료되면 파일을 저장합니다.

다음 표에서는 재정의 파일에 제공해야 하는 각 속성 값을 설명합니다. 자세한 내용은 구성 속성 참조를 참조하세요.

변수 설명
analytics-region 클러스터가 실행되는 동일한 리전으로 이 값을 설정해야 합니다. 이전에 클러스터 생성 시 환경 변수 ANALYTICS_REGION에 할당한 값입니다. apigee-loggerapigee-metrics는 이 리전에 데이터를 푸시합니다.
gcp-project-id apigee-loggerapigee-metrics가 데이터를 푸시하는 Google Cloud 프로젝트를 식별합니다. 환경 변수 PROJECT_ID에 할당된 값입니다.
cluster-name Kubernetes 클러스터 이름입니다. 환경 변수 CLUSTER_NAME에 할당된 값입니다.
org-name Apigee 하이브리드 조직의 ID입니다. 환경 변수 ORG_NAME에 할당된 값입니다.
unique-instance-identifier

이 인스턴스를 식별하는 고유한 문자열입니다. 문자와 숫자 조합을 최대 63자(영문 기준)까지 사용할 수 있습니다.

동일한 클러스터에 여러 조직을 만들 수 있지만 instanceId는 동일한 Kubernetes 클러스터의 모든 조직에 대해 동일해야 합니다.
environment-group-name 환경이 할당된 환경 그룹의 이름입니다. 프로젝트 및 조직 설정 - 6단계: 환경 그룹 만들기에서 만든 그룹입니다. 환경 변수 ENV_GROUP에 할당된 값입니다.
cert-name
key-name
이전에 3단계: apigeectl 설치에서 생성한 자체 서명 TLS 키와 인증서 파일의 이름을 입력합니다. 이러한 파일은 base_directory/hybrid-files/certs 디렉터리에 있어야 합니다. 예를 들면 다음과 같습니다.
sslCertPath: ./certs/keystore.pem
sslKeyPath: ./certs/keystore.key
environment-name 프로젝트 및 조직 설정 - 6단계: 환경 그룹 만들기의 설명대로 UI에서 환경을 만들 때 사용한 이름과 동일한 이름을 사용합니다.
synchronizer-service-account-name create-service-account 도구로 생성한 synchronizer 서비스 계정 키 파일의 이름입니다. 예를 들면 다음과 같습니다.
serviceAccountPath:
  synchronizer: ./service-accounts/hybrid-project-apigee-synchronizer.json
udca-service-account-name create-service-account 도구로 생성한 udca 서비스 계정 키 파일의 이름입니다. 예를 들면 다음과 같습니다.
serviceAccountPath:
  udca: ./service-accounts/hybrid-project-apigee-udca.json
mart-service-account-name create-service-account 도구로 생성한 mart 서비스 계정 키 JSON 파일의 이름입니다.
metrics-service-account-name create-service-account 도구로 생성한 측정항목 서비스 계정 JSON 파일의 이름입니다. 예를 들면 다음과 같습니다.
metrics:
  serviceAccountPath: ./service-accounts/hybrid-project-apigee-metrics.json
mart-service-account-name 3단계: apigeectl 설치에서 만든 mart 서비스 계정(Apigee Connect 에이전트 역할이 할당됨)의 이름입니다. MART와 Apigee Connect 에이전트는 동일한 서비스 계정을 사용합니다.
watcher-service-account-name create-service-account 도구로 생성한 watcher 서비스 계정 JSON 파일의 이름입니다. 예를 들면 다음과 같습니다.
watcher:
  serviceAccountPath: ./service-accounts/hybrid-project-apigee-watcher.json

요약

구성 파일은 하이브리드 구성요소를 클러스터에 배포하는 방법을 Kubernetes에 지정합니다. 다음으로 클러스터에 이 구성을 적용합니다.

1 2 3 4 (다음) 5단계: 하이브리드 런타임 설치