구성 데이터 확인 및 수정
환경이 변경될 때마다 확인해야 하는 수십 또는 수백 개의 규칙(정책)이 있을 수 있습니다. CDM 를 사용하면 구성 데이터를 자동으로 검증하여 구성 데이터가 사용되기 전에 구성 변경 사항에 오류가 없고 정책을 준수하는지 확인할 수 있습니다.
CDM 검증 프로세스의 대부분을 자동화합니다.
팀이 애플리케이션을 배포할 때 일반적으로 코드 및 구성 수준에서 오류가 발생하지 않고 규정 준수 정책이 준수되는지 확인해야 합니다. 환경이 변경될 때마다 확인해야 하는 수십 또는 수백 개의 규칙(정책)이 있을 수 있습니다. 수동 확인 프로세스에는 오류가 발생하기 쉽습니다.
DevOps 는 개발자, IT 관리자 DevOps 구성 , 엔지니어 또는 팀 리더에게 구성 변경 사항이 오류 없이 진행되고 정책을 준수하도록 보장하는 방법을 제공합니다. 또한 유효성 검사 후 개발자 또는 IT 관리자에게 문제를 식별하고 해결하는 데 필요한 충분한 상황별 정보를 제공합니다. 즉, 사용자가 구성 데이터에 대한 변경 사항을 커밋한 후 모든 관련 정책이 적용되고, 결과가 평가되며, 적절한 조치(예: 배포 또는 배포 안 함)가 트리거됩니다.
다음은 구성 데이터를 사용하기 전에 자동으로 유효성을 검사하는 프로세스입니다 CDM .
- 기존 정책을 기반으로 정책 버전을 만든 다음 새 버전을 활성화하고 게시합니다.
- 정책을 배포 가능 항목에 매핑하면 요청 시(수동 또는 자동 요청) 배포 가능 항목의 모든 스냅샷에 대해 정책이 실행됩니다.
- 배포 가능 항목에 대한 변경 세트를 커밋할 때 시스템은 결과 스냅샷을 확인해야 합니다. 변경 세트가 커밋될 때마다 매핑된 정책의 실행을 자동으로 트리거하려면 변경 세트를 커밋할 때 확인 옵션을 선택합니다. 스냅샷을 수동으로 확인하는 옵션도 있습니다.
두 경우 모두 정적 매핑과 동적 매핑을 사용하여 매핑된 정책이 실행됩니다.
- 자동화된 프로세스가 파이프라인과 통합되도록 구성한 경우 정책은 유효성 검사 프로세스의 결과를 JSON 파일의 파이프라인에 반환합니다. 파이프라인은 확인 결정(준수, 미준수)에 따라 계속할지 여부를 결정합니다.
- 프로세스가 파이프라인과 통합되지 않았거나 확인에 실패했거나 완료되지 않은 경우 확인 결정을 검토하고 적절한 조치를 취합니다.
미리 정의된 정책을 사용자 지정 정책의 모델로 사용
- 모든 정책은 CdmQuery 스크립트 포함을 사용하여 구성 데이터를 검색합니다.
- 비밀과 함께 CdmQuery 를 사용하여 모든 데이터가 포함되도록 합니다.
- CdmPolicyUtil 스크립트 포함은 경고 및 실패를 추가합니다.
- 모든 정책이 실행되고 출력에 실패가 채워지면 결정이
non_compliant. - 디버깅을 위해 로거를 사용하십시오. 정책을 게시할 준비가 되면 로그를 제거합니다.
- 매핑 입력 매개변수를 사용하여 동적 입력 값을 제공합니다.
스냅샷 유효성 검사 지침
- 이미 검증되고 게시된 스냅샷을 수동으로 검증하지 마십시오.
- 변경 세트를 커밋할 때 스냅샷 확인 또는 스냅샷 확인 및 게시 옵션을 선택하면 각 스냅샷이 처음 생성될 때 시스템에서 자동으로 유효성을 검사합니다.
- 스냅샷에 대한 현재 유효성 검사 실패 또는 경고를 보려면 스냅숏을 열고 유효성 검사 결과 탭을 선택합니다. 자세한 내용은 스냅샷 확인 결과 보기 문서를 참조하십시오.
- 정책 테스트 플레이그라운드 기능을 사용하여 정책을 개발하는 동안 스냅샷의 유효성을 다시 검사할 수 있습니다. 결과 확인 결과는 테스트 결과로 플래그가 지정되며 작업에 영향을 주지 않습니다.
- 배포 가능 항목에 대한 모든 스냅샷의 유효성을 다시 검사해야 하는 요구 사항이 있는 경우 정책을 테스트하고 게시한 후에만 유효성을 다시 검사합니다.
피해야 할 관행
- 구성 데이터 기록을 검색하는 데 GlideRecord 를 사용하지 마십시오.
- UI CDM 에 정책 결정을 표시하려면 특정 구조의 경고 및 실패 데이터가 필요합니다. CdmPolicyUtil을 사용하여 경고 또는 실패를 추가합니다(수동 삽입 아님). (적어도 CdmPolicyUtil 이 오류 및 경고에 삽입하는 구조를 이해합니다.)
- 정책에서는 데이터에서 CDM 제공되지 않은 데이터를 검색하려고 시도하지 마십시오. 이 관행으로 인해 교차 범위 액세스 문제가 발생할 수 있습니다.
- "항상 준수" 또는 "항상 미준수" 정책을 작성하지 마십시오.
- 정책에서 이름이나 값을 하드 코딩하지 마십시오. 대신 매핑 입력 매개변수를 사용하여 동적 입력 값을 제공합니다.
스냅샷 상태
- 확인되지 않음: 스냅샷에 대해 정책이 실행되지 않은 초기 스냅샷 상태입니다.
- 요청됨: 확인 플로우가 시작되었습니다.
- 진행 중: 확인 플로우가 실행 중이고 정책이 현재 실행 중입니다.
- 통과: 스냅샷이 모든 정책을 통과했습니다.
- 실패: 스냅샷이 하나 이상의 정책에 실패했습니다.
- 실행 오류: 예기치 않은 오류로 인해 정책을 완료까지 실행하지 못했습니다
플로우 예시
사용자는 배포 전에 구성 데이터에 대한 변경 내용을 커밋합니다.
할당된 모든 정책에 대해 데이터가 확인됩니다.
- 오류 또는 경고 수에 관계없이 TEST 환경에서 배포를 허용합니다.
- 오류가 발생하면 PROD에서 배포를 중지합니다.
- 경고가 있는 경우 및 애플리케이션이 중요한 경우 PROD에서 배포를 중지합니다.
- 중요하지 않은 경우 경고 수에 관계없이 PROD에서 배포를 허용합니다.
사용자가 오류를 수정하고 변경을 다시 커밋합니다.
데이터가 다시 확인되고 결과가 정상입니다.
스냅샷이 작성됩니다.
배포가 실행됩니다.