구성 파이프라인 생성 및 관리

파이프라인을 만들고 구성하는 방법에 대한 자세한 내용은 CI/CD 파이프라인을 참조하십시오.

Cloud Manager에서 구성 파이프라인을 만들 때 파이프라인을 구성할 때 전체 스택 코드 ​이 아닌 대상 배포 ​를 선택해야 합니다.

앞에서 설명한 대로 RDE에 대한 구성은 파이프라인이 아닌 명령줄 도구를 사용하여 배포됩니다.

일반 구문

각 구성 파일은 다음 예제 코드 조각과 유사한 속성으로 시작됩니다.

  kind: "LogForwarding"
  version: "1"
  metadata:
    envTypes: ["dev"]
속성설명기본값
kind로그 전달, 트래픽 필터 규칙 또는 요청 변환 등 구성 유형을 결정하는 문자열필수, 기본값 없음
version스키마 버전을 나타내는 문자열필수, 기본값 없음
envTypes이 문자열 배열은 metadata 노드의 자식 속성입니다. 가능한 값은 dev, stage, prod 또는 모든 조합이며 구성이 처리될 환경 유형을 결정합니다. 예를 들어 배열에 dev만 포함된 경우 구성이 스테이지 또는 프로덕션 환경에 배포되더라도 구성이 로드되지 않습니다.모든 환경 유형(개발, 스테이지, 프로덕션)

yq 유틸리티를 사용하여 구성 파일의 YAML 형식을 로컬로 확인할 수 있습니다(예: yq cdn.yaml).

폴더 구조

/config 또는 유사한 이름의 폴더는 트리의 맨 위에 있어야 하며 그 아래 트리 어딘가에 YAML 파일이 하나 더 있어야 합니다.

예:

/config
  cdn.yaml

또는

/config
  /dev
    cdn.yaml

/config 아래의 폴더 이름 및 파일 이름은 임의의 이름입니다. 그러나 YAML 파일에는 올바른 kind 속성 값이(가) 포함되어야 합니다.

일반적으로 구성은 모든 환경에 배포됩니다. 각 환경에 대해 모든 속성 값이 동일하면 단일 YAML 파일로 충분합니다. 하지만 낮은 환경을 테스트하는 등의 경우에는 환경마다 속성 값이 다른 것이 일반적입니다.

다음 섹션에서는 파일을 구조화하기 위한 몇 가지 전략을 설명합니다.

모든 환경을 위한 단일 구성 파일

파일 구조는 다음과 유사합니다.

/config
  cdn.yaml
  logForwarding.yaml

모든 환경 및 모든 구성 유형(CDN, 로그 전달 등)에 대해 동일한 구성으로 충분한 경우 이 구조를 사용합니다. 이 시나리오에서는 envTypes 배열 속성에 모든 환경 유형이 포함됩니다.

   kind: "cdn"
   version: "1"
   metadata:
     envTypes: ["dev", "stage", "prod"]

암호 유형 환경 변수를 사용하면 ${{SPLUNK_TOKEN}} 참조에 표시된 대로 암호 속성이 환경별로 달라질 수 있습니다

kind: "LogForwarding"
version: "1"
metadata:
  envTypes: ["dev"]
data:
  splunk:
    default:
      enabled: true
      host: "splunk-host.example.com"
      token: "${{SPLUNK_TOKEN}}"
      index: "AEMaaCS"

환경 유형별 개별 파일

파일 구조는 다음과 유사합니다.

/config
  cdn-dev.yaml
  cdn-stage.yaml
  cdn-prod.yaml
  logForwarding-dev.yaml
  logForwarding-stage.yaml
  logForwarding-prod.yaml

속성 값에 차이가 있을 수 있는 경우 이 구조를 사용합니다. 예를들어, 파일에서 envTypes 배열 값은 접미사와 일치해야 합니다
값이 ["dev"]cdn-dev.yamllogForwarding-dev.yaml, 값이 ["stage"]cdn-stage.yamllogForwarding-stage.yaml 등입니다.

환경당 폴더

이 전략에서는 환경당 별도의 config 폴더가 있으며 각 폴더에 대해 Cloud Manager에서 선언된 별도의 파이프라인이 있습니다.

이 접근 방식은 각 개발 환경에 고유한 속성 값이 있는 경우 특히 유용합니다.

파일 구조는 다음과 유사합니다.

/config/dev1
  cdn.yaml
  logForwarding.yaml
/config/dev2
  cdn.yaml
  logForwarding.yaml
/config/prod
  cdn.yaml
  logForwarding.yaml

이 방법의 변형은 환경당 별도의 분기를 유지 관리하는 것입니다.

보안 환경 변수

중요한 정보를 소스 제어에 저장할 필요가 없도록 구성 파일은 secret 유형의 Cloud Manager 환경 변수를 지원합니다. 로그 전달을 비롯한 일부 구성의 경우 특정 속성에 대해 보안 환경 변수가 필수입니다.

아래 코드 조각은 구성에 보안 환경 변수 ${{SPLUNK_TOKEN}}이(가) 사용되는 방법의 예입니다.

kind: "LogForwarding"
version: "1"
metadata:
  envTypes: ["dev"]
data:
  splunk:
    default:
      enabled: true
      host: "splunk-host.example.com"
      token: "${{SPLUNK_TOKEN}}"
      index: "AEMaaCS"

환경 변수를 사용하는 방법에 대한 자세한 내용은 Cloud Manager 환경 변수 문서를 참조하십시오.

Experience Manager