DevOps 변경 모델
DevOps 변경 속도 을 사용하면 목적에 맞는 변경 모델을 사용하여 최신 개발 프랙티스를 반영하도록 변경 모델 또는 프로세스를 보다 유연하게 정의할 수 있습니다.
DevOps 변경 모델 개요
특정 사용 사례에 대해 Flow Designer에 구축된 간결한 플로우 및 플로우 작업 제품군과 함께 목적에 맞는 변경 모델을 사용합니다. 변경 워크플로우(일반, 표준 및 긴급)에 미리 정의된 레거시 ITIL 기반 변경 프로세스를 사용하는 대신 특정 사용 사례에 최적화된 다양한 모델로 선택적으로 전환할 수 있습니다. 상태 간 전환을 결정하는 상태와 규칙을 사용하여 변경 모델을 생성할 수 있습니다. 변경 모델에 대한 자세한 내용은 다음 문서를 참조하십시오 변경 모델.
DevOps 또는 DevOps 간소화된 변경 모델을 포함한 모든 기본 시스템 변경 모델을 사용할 수 있습니다. 모델을 기반으로 변경 요청을 생성하려면 ServiceNow의 단계 양식에서 모델 필드를 구성하거나 오케스트레이션 파이프라인의 변경 단계에서 모델 sys_id 또는 이름을 전달할 수 있습니다.
기본 시스템 DevOps 변경 모델
DevOps 및 DevOps Simplified라는 두 가지 변경 모델이 기본 시스템에 포함되어 있으며 기본적으로 활성화되어 모델 기반 변경 요청을 생성할 수 있습니다.
- 유형 호환성 플래그
-
유형 호환성 com.snc.change_management.change_model.type_compatibility 속성은 생성할 변경 요청의 종류(유형 기반 또는 모델 기반)를 결정하는 데 사용됩니다. 시스템 속성 > 모든 속성으로 이동하여 이 속성의 값을 설정합니다. 이 속성의 기본값은 False입니다. 이 속성은 변경 모델에 대한 변경 유형 호환성을 활성화합니다. true로 설정하면 변경 요청을 유형 기반 워크플로우 또는 변경 모델로 만들 수 있습니다. 아니오로 설정하면 변경 요청은 변경 모델을 사용해서만 작성됩니다.
속성이 true 또는 false로 설정되면 다음 테이블에 정의된 대로 구성 조합에 따라 변경 요청이 생성됩니다.
표 1. 유형 호환성 속성이 True로 설정된 경우 ServiceNow의 파이프라인 단계에서 구성된 변경 속성 파이프라인에 전달된 변경 속성 변경 요청 생성 시 고려되는 변경 속성 변경 모델: <선택한 변경 모델> 모델이나 변경 유형이 전달되지 않았습니다. 모델 기반 변경 요청이 생성됩니다. 변경 모델: <선택한 변경 모델> 유형이 전달되었습니다. 예: 일반 { "attributes": { "type": "normal" } }유형 기반 변경 요청이 생성됩니다. 변경 모델: <선택한 변경 모델>(예: 모델 1)입니다. 다른 모델이 전달됩니다. 예: 모델 2.{ "attributes": { "chg_model": { "name": "Model 2" } } }변경 사항은 모델 2를 기반으로 생성됩니다. 변경 모델: 지정되지 않음
변경 유형: <선택한 변경 유형>
모델이나 변경 유형이 전달되지 않음 유형 기반 변경 요청이 생성됩니다. 변경 유형: <선택한 변경 유형> 모델이 전달되었습니다. { "attributes": { "chg_model": { "name": "DevOps" } } }모델 기반 변경 요청이 생성됩니다. 변경 유형: <선택한 변경 유형>입니다. 예: 일반 다른 유형이 전달됩니다. 예를 들어, 긴급입니다.{ "attributes": { "type": "emergency" } }변경 요청은 긴급 유형을 기반으로 생성됩니다. 표 2. 유형 호환성 속성이 False로 설정된 경우 ServiceNow의 파이프라인 단계에서 구성된 변경 속성 파이프라인에 전달된 변경 속성 변경 요청 생성 시 고려되는 변경 속성 변경 모델: <선택한 변경 모델> 모델이나 변경 유형이 전달되지 않음 모델 기반 변경 요청이 생성됩니다. 변경 모델: <선택한 변경 모델> 유형이 전달되었습니다. 예: 일반 { "attributes": { "type": "normal" } }오류 유형 호환성 플래그가 비활성화되어 있어 변경 요청을 생성할 수 없습니다. 시스템 속성에서 유형 호환성 플래그를 활성화하거나, ServiceNow의 단계 기록에서 변경 모델을 구성하거나, 파이프라인에 적절한 변경 모델 시스템 ID 또는 이름을 입력합니다.
이 오류를 해결하는 방법에 대한 자세한 내용은 다음 문서를 참조하십시오 DevOps 변경 속도의 일반적인 오류.
변경 모델: <선택한 변경 모델>(예: 모델 1)입니다. 다른 모델이 전달됩니다. 예: 모델 2.{ "attributes": { "chg_model": { "name": "Model 2" } } }변경 사항은 모델 2를 기반으로 생성됩니다. 변경 모델: 지정되지 않음
변경 유형: <선택한 변경 유형>
모델이나 변경 유형이 전달되지 않았습니다. 오류 파이프라인에 대해 변경 유형 또는 변경 모델이 구성되지 않아 변경 요청을 생성할 수 없습니다.
이 오류를 해결하는 방법에 대한 자세한 내용은 다음 문서를 참조하십시오 DevOps 변경 속도의 일반적인 오류.
변경 유형: <선택한 변경 유형> 모델이 전달되었습니다. { "attributes": { "chg_model": { "name": "DevOps" } } }모델 기반 변경 요청이 생성됩니다. 변경 유형: <선택한 변경 유형>입니다. 예: 일반 다른 유형이 전달됩니다. 예를 들어, 긴급입니다.{ "attributes": { "type": "emergency" } }오류 유형 호환성 플래그가 비활성화되어 있어 변경 요청을 생성할 수 없습니다. 시스템 속성에서 유형 호환성 플래그를 활성화하거나, ServiceNow의 단계 기록에서 변경 모델을 구성하거나, 파이프라인에 적절한 변경 모델 시스템 ID 또는 이름을 입력합니다.
이 오류를 해결하는 방법에 대한 자세한 내용은 다음 문서를 참조하십시오 DevOps 변경 속도의 일반적인 오류.
- DevOps 모델의 구성
-
기본 시스템 변경 모델의 구현 상태 필드 값은 구현으로, 기록 사전 설정 필드는 기본적으로 유형=일반 으로 선택됩니다. DevOps 변경 모델에 사용할 수 있는 모델 상태는 신규, 평가, 승인, 예약됨, 구현, 검토, 종결됨 및 취소됨입니다. DevOps 단순화된 변경 모델에 사용할 수 있는 모델 상태는 신규, 승인, 예약됨, 구현, 검토, 종결됨 및 취소됨입니다. 요구 사항에 따라 변경 모델을 수정하고 특정 사용 사례의 상태와 전환을 구성할 수 있습니다.
그림 1. DevOps 변경 모델 그림 2. DevOps 단순화된 변경 모델 기본 시스템 DevOps 모델을 사용하는 대신 자체 모델을 생성하려면 섹션 변경 모델 생성 의 지침을 참조하십시오.
기록 사전 설정을 사용하여 변경 모델의 변경 상세 정보를 구성할 수 있습니다. 변경이 생성될 때마다 이러한 값이 변경 시 자동으로 설정됩니다. 변경 요청에 있는 모든 변경 필드에 대한 기록 사전 설정을 설정할 수 있습니다.
변경 요청을 만들 때 변경 상세 정보를 사전 제출하기 위해 다음 논리를 고려합니다.- 기록 사전 설정에서 변경 상세 정보를 구성한 경우 파이프라인에서 변경 상세 정보를 전달하여 이 값을 재정의할 수 없습니다.
- 변경 상세 정보가 기록 사전 설정에 구성되지 않은 경우 파이프라인에서 전달된 값은 변경 요청의 상세 정보를 사전 제출하는 데 고려됩니다.
- 변경 상세 정보가 기록 사전 설정에 구성되지 않았거나 파이프라인에서 전달되지 않은 경우 ServiceNow의 단계 양식에 구성된 값이 고려됩니다.
ServiceNow의 기록 사전 설정에 구성된 변경 상세 정보 ServiceNow의 단계 양식에 구성된 변경 상세 정보 파이프라인에 전달된 변경 상세 정보 변경 작성 시 미리 채워진 변경 정보 할당 그룹: DevOps 보고서 할당 그룹: 지정되지 않음 할당 그룹: 지정되지 않음 할당 그룹은 변경 요청의 기록 사전 설정에서 미리 채워집니다. 할당 그룹: 구성되지 않음 할당 그룹: 지정되지 않음 할당 그룹: DevOps 보고서 할당 그룹은 변경 요청의 파이프라인에서 미리 채워집니다. 할당 그룹: 구성되지 않음 할당 그룹: DevOps 보고서 할당 그룹: 지정되지 않음 할당 그룹은 변경 요청의 단계 양식에서 미리 채워집니다.
DevOps 변경 모델
DevOps 변경 모델에는 상태 전환 및 변경 승인을 위한 기본 시스템의 플로우가 포함되어 있습니다. DevOps 모델의 각 상태에는 고유한 플로우가 있으며 각 플로우는 필수 조건이 충족되면 트리거됩니다. 변경 승인(자동 또는 수동)은 DevOps 모델 변경 정책을 기반으로 합니다. 기본적으로 기본 시스템 DevOps 모델 변경 정책에는 수동 승인 결정만 활성화되어 있습니다. 승인 자동화를 강화할 준비가 되면 정책을 수정할 수 있습니다. 다음 플로우는 상태 전환 및 변경 승인 동작을 설명합니다.- 변경 - DevOps - 신규: 변경 요청이 신규 상태로 생성되면 이 플로우가 트리거됩니다. 할당 그룹이 있는 경우 이 플로우는 변경 상태를 평가로 업데이트합니다.
- 변경 - DevOps - 평가: 변경 요청이 평가 상태이면 이 플로우가 트리거됩니다. 이 플로우에는 DevOps의 두 가지 주요 작업, 즉 변경 요청과 관련된 DevOps 데이터를 검색하고 변경 요청을 자동 승인, 자동 거부 또는 수동 승인을 위해 전송해야 하는지 여부를 확인하는 데 사용되는 변경 정책 데이터 수집과 변경 승인 정책 적용이 있습니다. 변경 승인(자동 또는 수동)은 DevOps 모델 변경 정책에 따라 변경 승인 정책 적용 작업에서 이 플로우의 일부로 발생합니다. 변경이 승인되면(자동 또는 수동) 승인 상태로 이동합니다. 변경이 거부되면 변경을 요청한 사용자에게 이메일 알림이 전송되고 변경이 다시 신규 상태로 전환됩니다.
- 변경 - DevOps - 승인: 변경 요청이 승인 상태인 경우 이 플로우가 트리거됩니다. 기본 시스템에는 DevOps 변경 정책 데이터 수집과 변경 승인 정책 적용이라는 두 가지 주요 작업이 있으며, 이 작업은 변경 요청과 연결된 DevOps 데이터를 검색하고 변경 요청을 자동 승인, 자동 거부 또는 수동 승인을 위해 전송되어야 하는지 여부를 확인하는 데 사용됩니다. 변경 승인 정책 적용 작업의 DevOps 모델 변경 정책 조건이 충족되지 않습니다. 따라서 이 플로우의 변경 승인(자동 또는 수동)은 건너뜁니다. 이 플로우는 변경 - DevOps - 일정 플로우를 트리거하는 변경 요청 상태만 예약됨으로 이동합니다. 주:변경 프로세스에 다른 승인이 필요한 경우 이 플로우를 참조하여 요구 사항에 따라 DevOps 모델 변경 정책을 사용자 지정할 수 있습니다.
- 변경 - DevOps - 예약: 변경 요청이 예약됨 상태이면 이 플로우가 트리거됩니다. 계획된 시작 날짜에 도달하면 변경이 구현 상태로 이동됩니다.
- 변경 - DevOps - 구현: 변경 요청이 구현 상태이면 이 플로우가 트리거됩니다.
- is_change_with_partial_data
- regression_tests_failed
- code_security
- code_coverage
- total_num_of_commits
- tests_passing_percent
- load_tests_failed
- num_of_open_incidents
- num_of_outages_in_last_7_days
- num_of_current_outages
- integration_tests_failed
- commits_without_work_item
- change_request
- risk
- 자동 승인: 정책에 지정된 조건이 충족되면 변경 요청이 자동으로 승인됩니다.
- 자동 거부: 정책에 지정된 조건 중 하나 이상이 충족되지 않으면 변경 요청이 자동으로 거부됩니다.
- 수동 승인: 하나 이상의 조건에서 사용자 또는 그룹의 수동 승인이 필요한 경우 정책에 지정됩니다. 수동 승인을 신속하게 처리하고 변경 요청을 진행하기 위해 정책에 의해 관련 사용자 또는 그룹에 알림이 전송됩니다.주:기본적으로 기본 시스템 DevOps 모델 변경 정책에는 수동 승인 결정만 활성화되어 있습니다.
DevOps 단순화 모델
- 변경 - DevOps 간소화 - 신규: 변경 요청이 신규 상태로 생성되면 이 플로우가 트리거됩니다. 할당 그룹이 있는 경우 이 플로우는 변경 상태를 평가로 업데이트합니다.
- 변경 - DevOps 간소화 - 승인: 변경 요청이 승인 상태인 경우 이 플로우가 트리거됩니다. 이 플로우에는 DevOps의 두 가지 주요 작업, 즉 변경 요청과 관련된 DevOps 데이터를 검색하고 변경 요청을 자동 승인, 자동 거부 또는 수동 승인을 위해 전송해야 하는지 여부를 확인하는 데 사용되는 변경 정책 데이터 수집과 변경 승인 정책 적용이 있습니다. 변경 승인(자동 또는 수동)은 DevOps 단순화된 모델 변경 정책에 따라 변경 승인 정책 적용 작업에서 이 플로우의 일부로 발생합니다. 변경이 승인되면(자동 또는 수동) 일정 상태로 이동합니다. 변경이 거부되면 변경을 요청한 사용자에게 이메일 알림이 전송되고 변경이 다시 신규 상태로 전환됩니다. 주:변경 프로세스에 다른 승인이 필요한 경우 이 플로우를 참조하여 요구 사항에 따라 DevOps 단순화된 모델 변경 정책을 사용자 지정할 수 있습니다.
- 변경 - DevOps 간소화 - 일정: 변경 요청이 예약됨 상태이면 이 플로우가 트리거됩니다. 계획된 시작 날짜에 도달하면 변경이 구현 상태로 이동됩니다.
- 변경 - DevOps 단순화됨 - 구현: 변경 요청이 구현 상태이면 이 플로우가 트리거됩니다.
- is_change_with_partial_data
- regression_tests_failed
- code_security
- code_coverage
- total_num_of_commits
- tests_passing_percent
- load_tests_failed
- num_of_open_incidents
- num_of_outages_in_last_7_days
- num_of_current_outages
- integration_tests_failed
- commits_without_work_item
- change_request
- risk
- 자동 승인: 정책에 지정된 조건이 충족되면 변경 요청이 자동으로 승인됩니다.
- 자동 거부: 정책에 지정된 조건 중 하나 이상이 충족되지 않으면 변경 요청이 자동으로 거부됩니다.
- 수동 승인: 하나 이상의 조건에서 사용자 또는 그룹의 수동 승인이 필요한 경우 정책에 지정됩니다. 수동 승인을 신속하게 처리하고 변경 요청을 진행하기 위해 정책에 의해 관련 사용자 또는 그룹에 알림이 전송됩니다.주:기본적으로 기본 시스템 DevOps 단순화된 모델 변경 정책에는 수동 승인 결정만 활성화되어 있습니다.
파이프라인을 다시 시작하는 콜백
- 구현 상태는 타사 오케스트레이션 도구에 콜백을 보내는 데 사용됩니다. 변경 모델에 구현 상태가 하나만 있는 경우 절대 비교가 이루어집니다. 변경 모델에 의해 생성된 변경이 설정된 구현 상태에 도달하면 콜백이 외부 공급업체 오케스트레이션 도구로 전송됩니다.주:변경 모델에서 구현 상태 필드에는 하나 이상의 상태가 있을 수 있습니다. 각 변경 모델의 구현 상태를 정의할 수 있습니다. 자세한 내용은 Legacy: 상태 모델 및 전환 문서를 참조하십시오.
- 변경 모델에 여러 구현 상태가 있는 경우 구현 상태에 먼저 도달한 상태의 외부 공급업체 오케스트레이션 도구로 콜백이 전송됩니다.
- 변경 모델에 설정된 구현 상태가 없으면 구현 상태에 대한 모델 상태가 확인됩니다. 구현 상태가 있는 경우 타사 오케스트레이션 도구로의 콜백으로 간주됩니다. 모델 상태에도 구현 상태가 없으면 sn_devops.change_request.implement_state 속성에 있는 값이 고려됩니다. 시스템 속성의 값은 기본적으로 구현 상태인 -1입니다.
업그레이드 후
- 변경 모델 필드가 단계 양식에 표시됩니다. 유형 호환성 속성(com.snc.change_management.change_model.type_compatibility)이 true이므로 기존 유형 기반 변경 생성 프로세스에는 영향을 주지 않습니다.
- 모델 기반 변경 요청을 하려면 유형 호환성 속성을 false로 설정합니다. 단계 양식의 변경 모델 필드가 필요합니다. 속성에 기반한 구성 조합에 대한 자세한 내용은 테이블 유형 호환성 속성이 False로 설정된 경우을 참조하십시오.
| 새 인스턴스 또는 업그레이드 인스턴스 | 유형 호환성 플래그 | 모델 또는 유형 | 상태 전환 플로우 | 자동 변경 승인 플로우 | 외부 공급업체에 콜백 |
|---|---|---|---|---|---|
| zboot(신규 또는 기존 zbooted) | 아니오 | DevOps 모델 |
|
기본 시스템에서 변경 승인(자동 또는 수동)은 변경 요청 - DevOps - 평가 플로우를 통해 이루어집니다. 다른 수준의 승인을 원하는 경우 변경 요청 - DevOps - 승인 플로우를 참조하고 그에 따라 DevOps 모델 변경 정책을 사용자 지정할 수 있습니다. | 콜백 섹션의 메모 를 참조하십시오. |
| 업그레이드 | 아니오 | DevOps 모델 |
|
기본 시스템에서 변경 승인(자동 또는 수동)은 변경 요청 - DevOps - 평가 플로우를 통해 이루어집니다. 다른 수준의 승인을 원하는 경우 변경 요청 - DevOps - 승인 플로우를 참조하고 그에 따라 DevOps 모델 변경 정책을 사용자 지정할 수 있습니다. | 콜백 섹션의 메모 를 참조하십시오. |
| zboot(신규 또는 기존 zbooted) | 아니오 | DevOps 단순화 모델 |
|
기본 시스템에서 변경 승인(자동 또는 수동)은 변경 요청 - DevOps - 승인 플로우를 통해 이루어집니다. 다른 수준의 승인이 필요한 경우 DevOps 단순 모델 변경 정책을 적절하게 사용자 지정할 수 있습니다. | 콜백 섹션의 메모 를 참조하십시오. |
| 업그레이드 | 아니오 | DevOps 단순화 모델 |
|
기본 시스템에서 변경 승인(자동 또는 수동)은 변경 요청 - DevOps - 승인 플로우를 통해 이루어집니다. 다른 수준의 승인이 필요한 경우 DevOps 단순 모델 변경 정책을 적절하게 사용자 지정할 수 있습니다. | 콜백 섹션의 메모 를 참조하십시오. |
| 업그레이드 | 예 | 유형 | 현재 동작이 계속됨 | DevOps 변경 요청 수동 승인 또는 DevOps 변경 요청 최소 자동화 승인 또는 DevOps 변경 요청 고급 자동화 승인 플로우(활성 상태의 플로우 중 하나) | 변경 통제 콜백 플로우 |