sphinx.addnodesdocument)}( rawsource children]docutils.nodessection)}(hhh](h title)}(h2Infrastructure Operations and Lifecycle Managementh]h Text2Infrastructure Operations and Lifecycle Management}(hhparenth _documenthsourceNlineNuba
attributes}(ids]classes]names]dupnames]backrefs]utagnamehhhhhhI/var/jenkins_home/workspace/cntt-tox/doc/ref_model/chapters/chapter09.rsthKubh)}(hhh](h)}(hIntroductionh]hIntroduction}(hh2hh0hhhNhNubah}(h!]h#]h%]h']h)]uh+hhh-hhhh,hKubh paragraph)}(hX The purpose of this chapter is to define the capabilities required of the infrastructure to ensure it is effectively supported, maintained and otherwise lifecycle-managed by Operations teams. This includes requirements relating to the need to be able to maintain infrastructure services "in-service" without impacting the applications and workloads, whilst minimising human labour. It shall also capture any exceptions and related assumptions.h]hX The purpose of this chapter is to define the capabilities required of the infrastructure to ensure it is effectively supported, maintained and otherwise lifecycle-managed by Operations teams. This includes requirements relating to the need to be able to maintain infrastructure services “in-service” without impacting the applications and workloads, whilst minimising human labour. It shall also capture any exceptions and related assumptions.}(hhBhh@hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhh-hhubh?)}(hThere are three main business operating frameworks that are commonly known and used across the Telecommunications industry related to the topics in this chapter:h]hThere are three main business operating frameworks that are commonly known and used across the Telecommunications industry related to the topics in this chapter:}(hhPhhNhhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK hh-hhubh bullet_list)}(hhh](h list_item)}(h(FCAPS (ISO model for network management)h]h?)}(hheh]h(FCAPS (ISO model for network management)}(hhehhghhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhhcubah}(h!]h#]h%]h']h)]uh+hahh^hhhh,hNubhb)}(h1eTOM (TM Forum Business Process Framework (eTOM))h]h?)}(hh|h]h1eTOM (TM Forum Business Process Framework (eTOM))}(hh|hh~hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhhzubah}(h!]h#]h%]h']h)]uh+hahh^hhhh,hNubhb)}(haITIL (ITIL 4.0 attempts to adapt IT Service Management practices to the cloud environment needs)
h]h?)}(h`ITIL (ITIL 4.0 attempts to adapt IT Service Management practices to the cloud environment needs)h]h`ITIL (ITIL 4.0 attempts to adapt IT Service Management practices to the cloud environment needs)}(hhhhhhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK
hhubah}(h!]h#]h%]h']h)]uh+hahh^hhhh,hNubeh}(h!]h#]h%]h']h)]bullet-uh+h\hh,hKhh-hhubh?)}(h>The chapters below roughly map to these frameworks as follows:h]h>The chapters below roughly map to these frameworks as follows:}(hhhhhhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhh-hhubh table)}(hhh]h tgroup)}(hhh](h colspec)}(hhh]h}(h!]h#]h%]h']h)]colwidthK&uh+hhhubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthKuh+hhhubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthK
uh+hhhubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthKuh+hhhubh thead)}(hhh]h row)}(hhh](h entry)}(hhh]h?)}(hChapter Nameh]hChapter Name}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhhubah}(h!]h#]h%]h']h)]uh+hhhubh)}(hhh]h?)}(hFCAPSh]hFCAPS}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhhubh)}(hhh]h?)}(heTOMh]heTOM}(hj2 hj0 hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj- ubah}(h!]h#]h%]h']h)]uh+hhhubh)}(hhh]h?)}(hITILh]hITIL}(hjI hjG hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjD ubah}(h!]h#]h%]h']h)]uh+hhhubeh}(h!]h#]h%]h']h)]uh+hhhubah}(h!]h#]h%]h']h)]uh+hhhubh tbody)}(hhh](h)}(hhh](h)}(hhh]h?)}(h&Configuration and Lifecycle Managementh]h&Configuration and Lifecycle Management}(hjt hjr hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjo ubah}(h!]h#]h%]h']h)]uh+hhjl ubh)}(hhh]h?)}(h
Configurationh]h
Configuration}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhjl ubh)}(hhh]h?)}(h
Fulfilmenth]h
Fulfilment}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhjl ubh)}(hhh]h?)}(hConfiguration, Release, Changeh]hConfiguration, Release, Change}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhjl ubeh}(h!]h#]h%]h']h)]uh+hhji ubh)}(hhh](h)}(hhh]h?)}(h Assuranceh]h Assurance}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hPerformance, Faulth]hPerformance, Fault}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h Assuranceh]h Assurance}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hEvent, Incidenth]hEvent, Incident}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhji ubh)}(hhh](h)}(hhh]h?)}(hCapacity Managementh]hCapacity Management}(hj> hj< hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj9 ubah}(h!]h#]h%]h']h)]uh+hhj6 ubh)}(hhh]h?)}(h
Configurationh]h
Configuration}(hjU hjS hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjP ubah}(h!]h#]h%]h']h)]uh+hhj6 ubh)}(hhh]h?)}(h
Fulfilmenth]h
Fulfilment}(hjl hjj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjg ubah}(h!]h#]h%]h']h)]uh+hhj6 ubh)}(hhh]h?)}(hCapacity Managementh]hCapacity Management}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj~ ubah}(h!]h#]h%]h']h)]uh+hhj6 ubeh}(h!]h#]h%]h']h)]uh+hhji ubeh}(h!]h#]h%]h']h)]uh+jg hhubeh}(h!]h#]h%]h']h)]colsKuh+hhhubah}(h!]h#]h%]h']h)]uh+hhh-hhhh,hNubh?)}(h#**Table 9-1:** Operating Frameworksh](h strong)}(h**Table 9-1:**h]h
Table 9-1:}(hhhj hhhNhNubah}(h!]h#]h%]h']h)]uh+j hj ubh Operating Frameworks}(h Operating Frameworkshj hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hKhh-hhubh block_quote)}(hhh]h?)}(h**Note:** The above mapping is provided for the general orientation purpose only. Detailed mapping of the required Cloud Infrastructure Lifecycle Management capabilities to any of these frameworks is beyond the scope of this document.h](j )}(h **Note:**h]hNote:}(hhhj hhhNhNubah}(h!]h#]h%]h']h)]uh+j hj ubh The above mapping is provided for the general orientation purpose only. Detailed mapping of the required Cloud Infrastructure Lifecycle Management capabilities to any of these frameworks is beyond the scope of this document.}(h The above mapping is provided for the general orientation purpose only. Detailed mapping of the required Cloud Infrastructure Lifecycle Management capabilities to any of these frameworks is beyond the scope of this document.hj hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+j hh-hhhh,hNubeh}(h!]introductionah#]h%]introductionah']h)]uh+h
hhhhhh,hKubh)}(hhh](h)}(h&Configuration and Lifecycle Managementh]h&Configuration and Lifecycle Management}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hKubh?)}(hX? Configuration management is concerned with defining the configuration of infrastructure and its components, and tracking (observing) the running configuration of that infrastructure, and any changes that take place. Modern configuration management practices such as desired state configuration management also mean that any changes from the desired state that are observed (aka the delta) are rectified by an orchestration / fulfilment component of the configuration management system. This "closed loop" mitigates against configuration drift in the infrastructure and its components. Our recommendation is to keep these closed loops as small as possible to reduce complexity and risk of error. :numref:`Configuration and Lifecycle Management` shows the configuration management "loop" and how this relates to lifecycle management.h](hX Configuration management is concerned with defining the configuration of infrastructure and its components, and tracking (observing) the running configuration of that infrastructure, and any changes that take place. Modern configuration management practices such as desired state configuration management also mean that any changes from the desired state that are observed (aka the delta) are rectified by an orchestration / fulfilment component of the configuration management system. This “closed loop” mitigates against configuration drift in the infrastructure and its components. Our recommendation is to keep these closed loops as small as possible to reduce complexity and risk of error. }(hX Configuration management is concerned with defining the configuration of infrastructure and its components, and tracking (observing) the running configuration of that infrastructure, and any changes that take place. Modern configuration management practices such as desired state configuration management also mean that any changes from the desired state that are observed (aka the delta) are rectified by an orchestration / fulfilment component of the configuration management system. This "closed loop" mitigates against configuration drift in the infrastructure and its components. Our recommendation is to keep these closed loops as small as possible to reduce complexity and risk of error. hj hhhNhNubh pending_xref)}(h0:numref:`Configuration and Lifecycle Management`h]h literal)}(hj h]h&Configuration and Lifecycle Management}(hhhj hhhNhNubah}(h!]h#](xrefstd
std-numrefeh%]h']h)]uh+j hj ubah}(h!]h#]h%]h']h)]refdocchapters/chapter09 refdomainj* reftypenumrefrefexplicitrefwarn reftarget&configuration and lifecycle managementuh+j hh,hK hj ubh\ shows the configuration management “loop” and how this relates to lifecycle management.}(hX shows the configuration management "loop" and how this relates to lifecycle management.hj hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hK hj hhubh figure)}(hhh](h image)}(h.. figure:: ../figures/ch09_config_mgmt.png
:name: Configuration and Lifecycle Management
:alt: "Configuration and Lifecycle Management"
Configuration and Lifecycle Management
h]h}(h!]h#]h%]h']h)]alt("Configuration and Lifecycle Management"urifigures/ch09_config_mgmt.png
candidates}*j] suh+jN hjK hh,hNubh caption)}(h&Configuration and Lifecycle Managementh]h&Configuration and Lifecycle Management}(hje hjc hhhNhNubah}(h!]h#]h%]h']h)]uh+ja hh,hK&hjK ubeh}(h!]id1ah#]h%]&configuration and lifecycle managementah']h)]uh+jI hj hhhh,hNubh?)}(hX The initial desired state might be for 10 hosts with a particular set of configuration attributes, including the version of the hypervisor and any management agents. The configuration management system will take that as input (1) and configure the infrastructure as required (2). It will then observe the current state periodically over time (3) and in the case of a difference between the desired state and the observed state it will calculate the delta (4) and re-configure the infrastructure (5). For each lifecycle stage (create, update, delete) this loop takes place - for example if an update to the hypervisor version is defined in the desired state, the configuration management system will calculate the delta (e.g. v1 --> v2) and re-configure the infrastructure as required.h]hX The initial desired state might be for 10 hosts with a particular set of configuration attributes, including the version of the hypervisor and any management agents. The configuration management system will take that as input (1) and configure the infrastructure as required (2). It will then observe the current state periodically over time (3) and in the case of a difference between the desired state and the observed state it will calculate the delta (4) and re-configure the infrastructure (5). For each lifecycle stage (create, update, delete) this loop takes place - for example if an update to the hypervisor version is defined in the desired state, the configuration management system will calculate the delta (e.g. v1 –> v2) and re-configure the infrastructure as required.}(hj{ hjy hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK(hj hhubh?)}(hXQ However, the key requirements for the infrastructure and infrastructure management are those interfaces and reference points in the red box - where configuration is **set**, and where it is **observed**. Table 9-2 lists the main components and capabilities required in order to manage the configuration and lifecycle of those components.h](hHowever, the key requirements for the infrastructure and infrastructure management are those interfaces and reference points in the red box - where configuration is }(hHowever, the key requirements for the infrastructure and infrastructure management are those interfaces and reference points in the red box - where configuration is hj hhhNhNubj )}(h**set**h]hset}(hhhj hhhNhNubah}(h!]h#]h%]h']h)]uh+j hj ubh, and where it is }(h, and where it is hj hhhNhNubj )}(h**observed**h]hobserved}(hhhj hhhNhNubah}(h!]h#]h%]h']h)]uh+j hj ubh. Table 9-2 lists the main components and capabilities required in order to manage the configuration and lifecycle of those components.}(h. Table 9-2 lists the main components and capabilities required in order to manage the configuration and lifecycle of those components.hj hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hK*hj hhubh)}(hhh]h)}(hhh](h)}(hhh]h}(h!]h#]h%]h']h)]colwidthK!uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthKuh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthK!uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthKuh+hhj ubh)}(hhh]h)}(hhh](h)}(hhh]h?)}(h Componenth]h Component}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK-hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h
set / observeh]h
set / observe}(hj hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK-hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h
Capabilityh]h
Capability}(hj# hj! hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK-hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hExampleh]hExample}(hj: hj8 hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK-hj5 ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj ubah}(h!]h#]h%]h']h)]uh+hhj ubjh )}(hhh](h)}(hhh](h)}(hhh]h?)}(h(Cloud Infrastructure Management
Softwareh]h(Cloud Infrastructure Management
Software}(hjc hja hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK/hj^ ubah}(h!]h#]h%]h']h)]morerowsKuh+hhj[ ubh)}(hhh]h?)}(hSeth]hSet}(hj{ hjy hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK/hjv ubah}(h!]h#]h%]h']h)]morerowsKuh+hhj[ ubh)}(hhh]h?)}(h"Target software / firmware
versionh]h"Target software / firmware
version}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK/hj ubah}(h!]h#]h%]h']h)]uh+hhj[ ubh)}(hhh]h?)}(hSoftware: v1.2.1h]hSoftware: v1.2.1}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK/hj ubah}(h!]h#]h%]h']h)]uh+hhj[ ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hDesired configuration attributeh]hDesired configuration attribute}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK2hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hdhcp_lease_time: 86400h]hdhcp_lease_time: 86400}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK2hj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hDesired component quantitiesh]hDesired component quantities}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK4hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h# hypervisor hosts: 10h]h# hypervisor hosts: 10}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK4hj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hObserveh]hObserve}(hj8 hj6 hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK6hj3 ubah}(h!]h#]h%]h']h)]morerowsKuh+hhj0 ubh)}(hhh]h?)}(h$Observed software / firmware
versionh]h$Observed software / firmware
version}(hjP hjN hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK6hjK ubah}(h!]h#]h%]h']h)]uh+hhj0 ubh)}(hhh]h?)}(hSoftware: v1.2.1h]hSoftware: v1.2.1}(hjg hje hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK6hjb ubah}(h!]h#]h%]h']h)]uh+hhj0 ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(h Observed configuration attributeh]h Observed configuration attribute}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK9hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hdhcp_lease_time: 86400h]hdhcp_lease_time: 86400}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK9hj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hObserved component quantitiesh]hObserved component quantities}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK;hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h# hypervisor hosts: 10h]h# hypervisor hosts: 10}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK;hj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hCloud Infrastructure Softwareh]hCloud Infrastructure Software}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK=hj ubah}(h!]h#]h%]h']h)]morerowsKuh+hhj ubh)}(hhh]h?)}(hSeth]hSet}(hj
hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK=hj ubah}(h!]h#]h%]h']h)]morerowsKuh+hhj ubh)}(hhh]h?)}(hTarget software versionh]hTarget software version}(hj% hj# hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK=hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hHypervisor software: v3.4.1h]hHypervisor software: v3.4.1}(hj< hj: hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK=hj7 ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hDesired configuration attributeh]hDesired configuration attribute}(hj\ hjZ hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK?hjW ubah}(h!]h#]h%]h']h)]uh+hhjT ubh)}(hhh]h?)}(hmanagement_int: eth0h]hmanagement_int: eth0}(hjs hjq hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK?hjn ubah}(h!]h#]h%]h']h)]uh+hhjT ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hDesired component quantitiesh]hDesired component quantities}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKAhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h# NICs for data: 6h]h# NICs for data: 6}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKAhj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hObserveh]hObserve}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKChj ubah}(h!]h#]h%]h']h)]morerowsKuh+hhj ubh)}(hhh]h?)}(h$Observed software / firmware
versionh]h$Observed software / firmware
version}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKChj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hHypervisor software: v3.4.1h]hHypervisor software: v3.4.1}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKChj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(h Observed configuration attributeh]h Observed configuration attribute}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKFhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hmanagement_int: eth0h]hmanagement_int: eth0}(hj0 hj. hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKFhj+ ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hObserved component quantitiesh]hObserved component quantities}(hjP hjN hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKHhjK ubah}(h!]h#]h%]h']h)]uh+hhjH ubh)}(hhh]h?)}(h# NICs for data: 6h]h# NICs for data: 6}(hjg hje hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKHhjb ubah}(h!]h#]h%]h']h)]uh+hhjH ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hInfrastructure Hardwareh]hInfrastructure Hardware}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKJhj ubah}(h!]h#]h%]h']h)]morerowsKuh+hhj ubh)}(hhh]h?)}(hSeth]hSet}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKJhj ubah}(h!]h#]h%]h']h)]morerowsKuh+hhj ubh)}(hhh]h?)}(h"Target software / firmware
versionh]h"Target software / firmware
version}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKJhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h$Storage controller firmware:
v10.3.4h]h$Storage controller firmware:
v10.3.4}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKJhj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hDesired configuration attributeh]hDesired configuration attribute}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKMhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h!Virtual disk 1: RAID1
[HDD1,HDD2]h]h!Virtual disk 1: RAID1
[HDD1,HDD2]}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKMhj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(hObserveh]hObserve}(hj% hj# hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKPhj ubah}(h!]h#]h%]h']h)]morerowsKuh+hhj ubh)}(hhh]h?)}(h$Observed software / firmware
versionh]h$Observed software / firmware
version}(hj= hj; hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKPhj8 ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h$Storage controller firmware:
v10.3.4h]h$Storage controller firmware:
v10.3.4}(hjT hjR hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKPhjO ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhjX ubh)}(hhh](h)}(hhh]h?)}(h Observed configuration attributeh]h Observed configuration attribute}(hjt hjr hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKShjo ubah}(h!]h#]h%]h']h)]uh+hhjl ubh)}(hhh]h?)}(h!Virtual disk 1: RAID1
[HDD1,HDD2]h]h!Virtual disk 1: RAID1
[HDD1,HDD2]}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKShj ubah}(h!]h#]h%]h']h)]uh+hhjl ubeh}(h!]h#]h%]h']h)]uh+hhjX ubeh}(h!]h#]h%]h']h)]uh+jg hj ubeh}(h!]h#]h%]h']h)]colsKuh+hhj ubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hNubh?)}(hB**Table 9-2:** Configuration and Lifecycle Management Capabilitiesh](j )}(h**Table 9-2:**h]h
Table 9-2:}(hhhj hhhNhNubah}(h!]h#]h%]h']h)]uh+j hj ubh4 Configuration and Lifecycle Management Capabilities}(h4 Configuration and Lifecycle Management Capabilitieshj hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hKWhj hhubh?)}(hThis leads to the following table (Table 9-3) which defines the standard interfaces that should be made available by the infrastructure and Cloud Infrastructure Management components to allow for successful Configuration Management.h]hThis leads to the following table (Table 9-3) which defines the standard interfaces that should be made available by the infrastructure and Cloud Infrastructure Management components to allow for successful Configuration Management.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKYhj hhubh)}(hhh]h)}(hhh](h)}(hhh]h}(h!]h#]h%]h']h)]colwidthKuh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthKuh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthKuh+hhj ubh)}(hhh]h)}(hhh](h)}(hhh]h?)}(h Componenth]h Component}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK\hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hInterface Standardh]hInterface Standard}(hj' hj% hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK\hj" ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hLinkh]hLink}(hj> hj< hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK\hj9 ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj ubah}(h!]h#]h%]h']h)]uh+hhj ubjh )}(hhh](h)}(hhh](h)}(hhh]h?)}(hInfrastructure Managementh]hInfrastructure Management}(hjg hje hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK^hjb ubah}(h!]h#]h%]h']h)]uh+hhj_ ubh)}(hhh]h?)}(hDefined in RA specificationsh]hDefined in RA specifications}(hj~ hj| hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK^hjy ubah}(h!]h#]h%]h']h)]uh+hhj_ ubh)}(hhh]h?)}(h
RA-1, RA-2h]h
RA-1, RA-2}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK^hj ubah}(h!]h#]h%]h']h)]uh+hhj_ ubeh}(h!]h#]h%]h']h)]uh+hhj\ ubh)}(hhh](h)}(hhh]h?)}(hInfrastructure Softwareh]hInfrastructure Software}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK_hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hDefined in RA specificationsh]hDefined in RA specifications}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK_hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h
RA-1, RA-2h]h
RA-1, RA-2}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK_hj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj\ ubh)}(hhh](h)}(hhh]h?)}(hInfrastructure Hardwareh]hInfrastructure Hardware}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK`hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hRedfish APIh]hRedfish API}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK`hj
ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hDMTF RedFish specification [11]h]hDMTF RedFish specification [11]}(hj1
hj/
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK`hj,
ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj\ ubeh}(h!]h#]h%]h']h)]uh+jg hj ubeh}(h!]h#]h%]h']h)]colsKuh+hhj ubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hNubh?)}(h?**Table 9-3:** Interface Standards for Configuration Managementh](j )}(h**Table 9-3:**h]h
Table 9-3:}(hhhj`
hhhNhNubah}(h!]h#]h%]h']h)]uh+j hj\
ubh1 Interface Standards for Configuration Management}(h1 Interface Standards for Configuration Managementhj\
hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hKchj hhubeh}(h!]&configuration-and-lifecycle-managementah#]h%]h']jv ah)]uh+h
hhhhhh,hK
referencedKubh)}(hhh](h)}(h Assuranceh]h Assurance}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+hhj
hhhh,hKfubh?)}(hAssurance is concerned with:h]hAssurance is concerned with:}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhhj
hhubh])}(hhh](hb)}(hThe proactive and reactive maintenance activities that are required to ensure infrastructure services are available as per defined performance and availability levels.h]h?)}(hj
h]hThe proactive and reactive maintenance activities that are required to ensure infrastructure services are available as per defined performance and availability levels.}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKjhj
ubah}(h!]h#]h%]h']h)]uh+hahj
hhhh,hNubhb)}(hkContinuous monitoring of the status and performance of individual components and of the service as a whole.h]h?)}(hj
h]hkContinuous monitoring of the status and performance of individual components and of the service as a whole.}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKkhj
ubah}(h!]h#]h%]h']h)]uh+hahj
hhhh,hNubhb)}(hCollection and analysis of performance data, which is used to identify potential issues including the ability to resolve the issue with no customer impact.
h]h?)}(hCollection and analysis of performance data, which is used to identify potential issues including the ability to resolve the issue with no customer impact.h]hCollection and analysis of performance data, which is used to identify potential issues including the ability to resolve the issue with no customer impact.}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKlhj
ubah}(h!]h#]h%]h']h)]uh+hahj
hhhh,hNubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKjhj
hhubh?)}(h*There are the following requirement types:h]h*There are the following requirement types:}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKnhj
hhubh enumerated_list)}(hhh](hb)}(hX Data collection from all components, e.g.
- The ability to collect data relating to events (transactions, security events, physical interface up/down events, warning events, error events, etc.)
- The ability to collect data relating to component status (up/down, physical temperature, disk speed, etc.)
- The ability to collect data relating to component performance (used CPU resources, storage throughput, network bandwidth in/out, API transactions, transaction response times, etc.)
h](h?)}(h)Data collection from all components, e.g.h]h)Data collection from all components, e.g.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKphj ubh])}(hhh](hb)}(hThe ability to collect data relating to events (transactions, security events, physical interface up/down events, warning events, error events, etc.)h]h?)}(hj h]hThe ability to collect data relating to events (transactions, security events, physical interface up/down events, warning events, error events, etc.)}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKrhj ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(hjThe ability to collect data relating to component status (up/down, physical temperature, disk speed, etc.)h]h?)}(hj0 h]hjThe ability to collect data relating to component status (up/down, physical temperature, disk speed, etc.)}(hj0 hj2 hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKshj. ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(hThe ability to collect data relating to component performance (used CPU resources, storage throughput, network bandwidth in/out, API transactions, transaction response times, etc.)
h]h?)}(hThe ability to collect data relating to component performance (used CPU resources, storage throughput, network bandwidth in/out, API transactions, transaction response times, etc.)h]hThe ability to collect data relating to component performance (used CPU resources, storage throughput, network bandwidth in/out, API transactions, transaction response times, etc.)}(hjK hjI hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKthjE ubah}(h!]h#]h%]h']h)]uh+hahj ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKrhj ubeh}(h!]h#]h%]h']h)]uh+hahj
hhhNhNubhb)}(hX Capabilities of the Infrastructure Management Software to allow for in-service maintenance of the Infrastructure Software and Hardware under its management, e.g.
- The ability to mark a physical compute node as being in some sort of "maintenance mode" and for the Infrastructure Management Software to ensure all running workloads are moved off or rescheduled on to other available nodes (after checking that there is sufficient capacity) before marking the node as being ready for whatever maintenance activity needs to be performed
- The ability to co-ordinate, automate, and allow the declarative input of in-service software component upgrades - such as internal orchestration and scheduler components in the Infrastructure Management Software
h](h?)}(hCapabilities of the Infrastructure Management Software to allow for in-service maintenance of the Infrastructure Software and Hardware under its management, e.g.h]hCapabilities of the Infrastructure Management Software to allow for in-service maintenance of the Infrastructure Software and Hardware under its management, e.g.}(hjo hjm hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKvhji ubh])}(hhh](hb)}(hXq The ability to mark a physical compute node as being in some sort of "maintenance mode" and for the Infrastructure Management Software to ensure all running workloads are moved off or rescheduled on to other available nodes (after checking that there is sufficient capacity) before marking the node as being ready for whatever maintenance activity needs to be performedh]h?)}(hj h]hXu The ability to mark a physical compute node as being in some sort of “maintenance mode” and for the Infrastructure Management Software to ensure all running workloads are moved off or rescheduled on to other available nodes (after checking that there is sufficient capacity) before marking the node as being ready for whatever maintenance activity needs to be performed}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKxhj~ ubah}(h!]h#]h%]h']h)]uh+hahj{ ubhb)}(hThe ability to co-ordinate, automate, and allow the declarative input of in-service software component upgrades - such as internal orchestration and scheduler components in the Infrastructure Management Software
h]h?)}(hThe ability to co-ordinate, automate, and allow the declarative input of in-service software component upgrades - such as internal orchestration and scheduler components in the Infrastructure Management Softwareh]hThe ability to co-ordinate, automate, and allow the declarative input of in-service software component upgrades - such as internal orchestration and scheduler components in the Infrastructure Management Software}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKyhj ubah}(h!]h#]h%]h']h)]uh+hahj{ ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKxhji ubeh}(h!]h#]h%]h']h)]uh+hahj
hhhNhNubeh}(h!]h#]h%]h']h)]enumtypearabicprefixhsuffix.uh+j
hj
hhhh,hKpubh?)}(hX Note that the above only refers to components - it is expected that any "service" level assurance doesn't add any further requirements onto the infrastructure, but rather takes the data extracted and builds service models based on the knowledge it has of the services being offered.h]hX Note that the above only refers to components - it is expected that any “service” level assurance doesn’t add any further requirements onto the infrastructure, but rather takes the data extracted and builds service models based on the knowledge it has of the services being offered.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hK{hj
hhubeh}(h!] assuranceah#]h%] assuranceah']h)]uh+h
hhhhhh,hKfubh)}(hhh](h)}(hCapacity Managementh]hCapacity Management}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hK~ubh?)}(hX" Capacity Management is a potentially wide ranging process that includes taking demand across lines of business, analysing data about the infrastructure that is running, and calculating when additional infrastructure might be required, or when infrastructure might need to be decommissioned.h]hX" Capacity Management is a potentially wide ranging process that includes taking demand across lines of business, analysing data about the infrastructure that is running, and calculating when additional infrastructure might be required, or when infrastructure might need to be decommissioned.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubh?)}(hX3 As such the requirements for Capacity Management on the infrastructure are covered by the Assurance and Configuration and Lifecycle Management sections above. The Assurance section deals with the collection of data - there is no reason to consider that this would be done by a different mechanism for Capacity Management as it is for Assurance - and the Configuration and Lifecycle Management section deals with the changes being made to the infrastructure hardware, software, and management components (e.g. changing of number of hypervisor hosts from 10 to 12).h]hX3 As such the requirements for Capacity Management on the infrastructure are covered by the Assurance and Configuration and Lifecycle Management sections above. The Assurance section deals with the collection of data - there is no reason to consider that this would be done by a different mechanism for Capacity Management as it is for Assurance - and the Configuration and Lifecycle Management section deals with the changes being made to the infrastructure hardware, software, and management components (e.g. changing of number of hypervisor hosts from 10 to 12).}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubeh}(h!]capacity-managementah#]h%]capacity managementah']h)]uh+h
hhhhhh,hK~ubh)}(hhh](h)}(h
Automationh]h
Automation}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hKubh)}(hhh](h)}(hInfrastructure LCM Automationh]hInfrastructure LCM Automation}(hj% hj# hhhNhNubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hKubh?)}(hX In a typical telecom operator environment, infrastructure Life Cycle Management is highly complex and error-prone. The environment, with its multiple vendors and products, is maintenance expensive (both time and costs) because of the need for complex planning, testing, and the out-of-business-hours execution required to perform disruptive maintenance (e.g., upgrades) and to mitigate outages to mission-critical applications. Processes and tooling for infrastructure management across hybrid environments create additional complexity due to the different levels of access to infrastructure: hands-on access to the on-premise infrastructure but only restricted access to consumable services offered by public clouds.h]hX In a typical telecom operator environment, infrastructure Life Cycle Management is highly complex and error-prone. The environment, with its multiple vendors and products, is maintenance expensive (both time and costs) because of the need for complex planning, testing, and the out-of-business-hours execution required to perform disruptive maintenance (e.g., upgrades) and to mitigate outages to mission-critical applications. Processes and tooling for infrastructure management across hybrid environments create additional complexity due to the different levels of access to infrastructure: hands-on access to the on-premise infrastructure but only restricted access to consumable services offered by public clouds.}(hj3 hj1 hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubh?)}(hX1 Life cycle operations, such as software or hardware upgrades (including complex and risky firmware updates), typically involve time-consuming manual research and substantive testing to ensure that an upgrade is available, required, or needed, and does not conflict with the current versions of other components. In a complex and at-scale Hybrid Multi-Cloud environment, consisting of multiple on-premise and public clouds, such a manual process is ineffective and, in many cases, impossible to execute in a controlled manner. Hence, the need for automation.h]hX1 Life cycle operations, such as software or hardware upgrades (including complex and risky firmware updates), typically involve time-consuming manual research and substantive testing to ensure that an upgrade is available, required, or needed, and does not conflict with the current versions of other components. In a complex and at-scale Hybrid Multi-Cloud environment, consisting of multiple on-premise and public clouds, such a manual process is ineffective and, in many cases, impossible to execute in a controlled manner. Hence, the need for automation.}(hjA hj? hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubh definition_list)}(hhh](h definition_list_item)}(hX The goals of LCM are to provide a reliable administration of a system from its provisioning, through its operational stage, to its final retirement. Key functions of Infrastructure LCM:
- Hybrid, Multi-Cloud support, that is, LCM works across physical, virtual, and cloud environments, supporting on-premise, cloud, and distributed environments (like Edge)
- Complete system life cycle control (Build, Monitor, Maintain, Retire)
- Enablement for automation of most system maintenance tasks
h](h term)}(hThe goals of LCM are to provide a reliable administration of a system from its provisioning, through its operational stage, to its final retirement. Key functions of Infrastructure LCM:h]hThe goals of LCM are to provide a reliable administration of a system from its provisioning, through its operational stage, to its final retirement. Key functions of Infrastructure LCM:}(hj\ hjZ hhhNhNubah}(h!]h#]h%]h']h)]uh+jX hh,hKhjT ubh
definition)}(hhh]h])}(hhh](hb)}(hHybrid, Multi-Cloud support, that is, LCM works across physical, virtual, and cloud environments, supporting on-premise, cloud, and distributed environments (like Edge)h]h?)}(hjr h]hHybrid, Multi-Cloud support, that is, LCM works across physical, virtual, and cloud environments, supporting on-premise, cloud, and distributed environments (like Edge)}(hjr hjt hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjp ubah}(h!]h#]h%]h']h)]uh+hahjm ubhb)}(hEComplete system life cycle control (Build, Monitor, Maintain, Retire)h]h?)}(hj h]hEComplete system life cycle control (Build, Monitor, Maintain, Retire)}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahjm ubhb)}(h;Enablement for automation of most system maintenance tasks
h]h?)}(h:Enablement for automation of most system maintenance tasksh]h:Enablement for automation of most system maintenance tasks}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahjm ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhjj ubah}(h!]h#]h%]h']h)]uh+jh hjT ubeh}(h!]h#]h%]h']h)]uh+jR hh,hKhjO ubjS )}(hEssential foundation functional blocks for Infrastructure LCM automation:
- Representation Model
- Repository functions
- Available Software Versions and Dependencies
- Orchestration Engine
h](jY )}(hIEssential foundation functional blocks for Infrastructure LCM automation:h]hIEssential foundation functional blocks for Infrastructure LCM automation:}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+jX hh,hKhj ubji )}(hhh]h])}(hhh](hb)}(hRepresentation Modelh]h?)}(hj h]hRepresentation Model}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(hRepository functionsh]h?)}(hj h]hRepository functions}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(h,Available Software Versions and Dependenciesh]h?)}(hj
h]h,Available Software Versions and Dependencies}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj
ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(hOrchestration Engine
h]h?)}(hOrchestration Engineh]hOrchestration Engine}(hj+
hj)
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj%
ubah}(h!]h#]h%]h']h)]uh+hahj ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhj ubah}(h!]h#]h%]h']h)]uh+jh hj ubeh}(h!]h#]h%]h']h)]uh+jR hh,hKhjO hhubjS )}(hX Automated LCM uses Representation Model to:
- abstract various automation technologies
- promote evolution from automation understood as automation of human tasks to autonomous systems using intent-based, declarative automation, supported by evolving AI/ML technologies
h](jY )}(h+Automated LCM uses Representation Model to:h]h+Automated LCM uses Representation Model to:}(hjU
hjS
hhhNhNubah}(h!]h#]h%]h']h)]uh+jX hh,hKhjO
ubji )}(hhh]h])}(hhh](hb)}(h(abstract various automation technologiesh]h?)}(hji
h]h(abstract various automation technologies}(hji
hjk
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjg
ubah}(h!]h#]h%]h']h)]uh+hahjd
ubhb)}(hpromote evolution from automation understood as automation of human tasks to autonomous systems using intent-based, declarative automation, supported by evolving AI/ML technologies
h]h?)}(hpromote evolution from automation understood as automation of human tasks to autonomous systems using intent-based, declarative automation, supported by evolving AI/ML technologiesh]hpromote evolution from automation understood as automation of human tasks to autonomous systems using intent-based, declarative automation, supported by evolving AI/ML technologies}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj~
ubah}(h!]h#]h%]h']h)]uh+hahjd
ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhja
ubah}(h!]h#]h%]h']h)]uh+jh hjO
ubeh}(h!]h#]h%]h']h)]uh+jR hh,hKhjO hhubjS )}(hX Automated LCM uses Repository functions to:
- store and manage configuration data
- store and manage metrics related data such as event data, alert data, and performance data
- maintain currency of data by the use of discovery of current versions of software modules
- track and account for all systems, assets, subscriptions (monitoring)
- provide an inventory of all virtual and physical assets
- provide a topological view of interconnected resources
- support network design function
h](jY )}(h+Automated LCM uses Repository functions to:h]h+Automated LCM uses Repository functions to:}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+jX hh,hKhj
ubji )}(hhh]h])}(hhh](hb)}(h#store and manage configuration datah]h?)}(hj
h]h#store and manage configuration data}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj
ubah}(h!]h#]h%]h']h)]uh+hahj
ubhb)}(h[store and manage metrics related data such as event data, alert data, and performance datah]h?)}(hj
h]h[store and manage metrics related data such as event data, alert data, and performance data}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj
ubah}(h!]h#]h%]h']h)]uh+hahj
ubhb)}(hYmaintain currency of data by the use of discovery of current versions of software modulesh]h?)}(hj
h]hYmaintain currency of data by the use of discovery of current versions of software modules}(hj
hj
hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj
ubah}(h!]h#]h%]h']h)]uh+hahj
ubhb)}(hEtrack and account for all systems, assets, subscriptions (monitoring)h]h?)}(hj h]hEtrack and account for all systems, assets, subscriptions (monitoring)}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj
ubhb)}(h7provide an inventory of all virtual and physical assetsh]h?)}(hj h]h7provide an inventory of all virtual and physical assets}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj
ubhb)}(h6provide a topological view of interconnected resourcesh]h?)}(hj5 h]h6provide a topological view of interconnected resources}(hj5 hj7 hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj3 ubah}(h!]h#]h%]h']h)]uh+hahj
ubhb)}(h!support network design function
h]h?)}(hsupport network design functionh]hsupport network design function}(hjP hjN hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjJ ubah}(h!]h#]h%]h']h)]uh+hahj
ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhj
ubah}(h!]h#]h%]h']h)]uh+jh hj
ubeh}(h!]h#]h%]h']h)]uh+jR hh,hKhjO hhubjS )}(hX Automated LCM uses available IAC Software Versions and Dependencies component to:
- store information about available software versions, software patches and dependency expectations
- determine the recommended version of a software item (such as firmware) and dependencies on other items in the node to ensure compliance and maintain the system integrity
- determine the recommended versions of foundation software running on the cluster
h](jY )}(hQAutomated LCM uses available IAC Software Versions and Dependencies component to:h]hQAutomated LCM uses available IAC Software Versions and Dependencies component to:}(hjz hjx hhhNhNubah}(h!]h#]h%]h']h)]uh+jX hh,hKhjt ubji )}(hhh]h])}(hhh](hb)}(hastore information about available software versions, software patches and dependency expectationsh]h?)}(hj h]hastore information about available software versions, software patches and dependency expectations}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(hdetermine the recommended version of a software item (such as firmware) and dependencies on other items in the node to ensure compliance and maintain the system integrityh]h?)}(hj h]hdetermine the recommended version of a software item (such as firmware) and dependencies on other items in the node to ensure compliance and maintain the system integrity}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(hQdetermine the recommended versions of foundation software running on the cluster
h]h?)}(hPdetermine the recommended versions of foundation software running on the clusterh]hPdetermine the recommended versions of foundation software running on the cluster}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhj ubah}(h!]h#]h%]h']h)]uh+jh hjt ubeh}(h!]h#]h%]h']h)]uh+jR hh,hKhjO hhubjS )}(hXp Automated LCM uses Orchestration Engine to:
- take the inputs from Repositories, Available Software Versions, and Dependencies
- run the software version changes
- dynamically remediate dependencies during the change process to optimise outcome
- ensure that the system is consistent across its life cycle by maintaining it in accordance with the intent templates
h](jY )}(h+Automated LCM uses Orchestration Engine to:h]h+Automated LCM uses Orchestration Engine to:}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+jX hh,hKhj ubji )}(hhh]h])}(hhh](hb)}(hPtake the inputs from Repositories, Available Software Versions, and Dependenciesh]h?)}(hj h]hPtake the inputs from Repositories, Available Software Versions, and Dependencies}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(h run the software version changesh]h?)}(hj h]h run the software version changes}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(hPdynamically remediate dependencies during the change process to optimise outcomeh]h?)}(hj, h]hPdynamically remediate dependencies during the change process to optimise outcome}(hj, hj. hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj* ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(huensure that the system is consistent across its life cycle by maintaining it in accordance with the intent templates
h]h?)}(htensure that the system is consistent across its life cycle by maintaining it in accordance with the intent templatesh]htensure that the system is consistent across its life cycle by maintaining it in accordance with the intent templates}(hjG hjE hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjA ubah}(h!]h#]h%]h']h)]uh+hahj ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhj ubah}(h!]h#]h%]h']h)]uh+jh hj ubeh}(h!]h#]h%]h']h)]uh+jR hh,hKhjO hhubeh}(h!]h#]h%]h']h)]uh+jM hj hhhNhNubh?)}(hNote: Developmnet of new structure and contents for this section in progress for Moselle release, driven by Issue#2087 and subordinate issues.h]hNote: Developmnet of new structure and contents for this section in progress for Moselle release, driven by Issue#2087 and subordinate issues.}(hjs hjq hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubeh}(h!]infrastructure-lcm-automationah#]h%]infrastructure lcm automationah']h)]uh+h
hj hhhh,hKubh)}(hhh](h)}(h5Software Onboarding Automation and CI/CD Requirementsh]h5Software Onboarding Automation and CI/CD Requirements}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hKubh)}(hhh](h)}(hSoftware Onboarding Automationh]hSoftware Onboarding Automation}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hKubh?)}(hX% For software deployment, as far as Cloud Infrastructure services or workloads are concerned, automation is the core of DevOps concept. Automation allows to eliminate manual processes, reducing human errors and speeding software deployments. The prerequisite is to install CI/CD tools chain to:h]hX% For software deployment, as far as Cloud Infrastructure services or workloads are concerned, automation is the core of DevOps concept. Automation allows to eliminate manual processes, reducing human errors and speeding software deployments. The prerequisite is to install CI/CD tools chain to:}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubh])}(hhh](hb)}(h)Build, package, test application/softwareh]h?)}(hj h]h)Build, package, test application/software}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj hhhh,hNubhb)}(h1Store environment's parameters and configurationsh]h?)}(hj h]h3Store environment’s parameters and configurations}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj hhhh,hNubhb)}(h%Automate the delivery and deployment
h]h?)}(h$Automate the delivery and deploymenth]h$Automate the delivery and deployment}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj hhhh,hNubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhj hhubh?)}(hThe CI/CD pipeline is used to deploy, test and update the Cloud Infrastructure services, and also to onboard workloads hosted on the infrastructure. Typically, this business process consists of the following key phases:h]hThe CI/CD pipeline is used to deploy, test and update the Cloud Infrastructure services, and also to onboard workloads hosted on the infrastructure. Typically, this business process consists of the following key phases:}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubj
)}(hhh](hb)}(hX: Tenant Engagement and Software Evaluation:
- In this phase the request from the tenant to host a workload on the Cloud Infrastructure platform is assessed and a decision made on whether to proceed with the hosting request.
- If the Cloud infrastructure software needs to be updated or installed, an evaluation is made of the impacts (including to tenants) and if it is OK to proceed
- This phase may also involve the tenant accessing a pre-staging environment to perform their own evaluation and/or pre-staging activities in preparation for later onboarding phases.
h](h?)}(h*Tenant Engagement and Software Evaluation:h]h*Tenant Engagement and Software Evaluation:}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubh])}(hhh](hb)}(hIn this phase the request from the tenant to host a workload on the Cloud Infrastructure platform is assessed and a decision made on whether to proceed with the hosting request.h]h?)}(hj. h]hIn this phase the request from the tenant to host a workload on the Cloud Infrastructure platform is assessed and a decision made on whether to proceed with the hosting request.}(hj. hj0 hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj, ubah}(h!]h#]h%]h']h)]uh+hahj) ubhb)}(hIf the Cloud infrastructure software needs to be updated or installed, an evaluation is made of the impacts (including to tenants) and if it is OK to proceedh]h?)}(hjE h]hIf the Cloud infrastructure software needs to be updated or installed, an evaluation is made of the impacts (including to tenants) and if it is OK to proceed}(hjE hjG hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjC ubah}(h!]h#]h%]h']h)]uh+hahj) ubhb)}(hThis phase may also involve the tenant accessing a pre-staging environment to perform their own evaluation and/or pre-staging activities in preparation for later onboarding phases.
h]h?)}(hThis phase may also involve the tenant accessing a pre-staging environment to perform their own evaluation and/or pre-staging activities in preparation for later onboarding phases.h]hThis phase may also involve the tenant accessing a pre-staging environment to perform their own evaluation and/or pre-staging activities in preparation for later onboarding phases.}(hj` hj^ hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjZ ubah}(h!]h#]h%]h']h)]uh+hahj) ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhj ubeh}(h!]h#]h%]h']h)]uh+hahj hhhNhNubhb)}(hX Software Packaging:
- The main outcome of this phase is to produce the software deployable image and the deployment manifests (such as TOSCA blueprints or HEAT templates or Helm charts) that will define the Cloud Infrastructure service attributes.
- The software packaging can be automated or performed by designated personnel, through self-service capabilities (for tenants) or by the Cloud Infrastructure Operations team.
h](h?)}(hSoftware Packaging:h]hSoftware Packaging:}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj~ ubh])}(hhh](hb)}(hThe main outcome of this phase is to produce the software deployable image and the deployment manifests (such as TOSCA blueprints or HEAT templates or Helm charts) that will define the Cloud Infrastructure service attributes.h]h?)}(hj h]hThe main outcome of this phase is to produce the software deployable image and the deployment manifests (such as TOSCA blueprints or HEAT templates or Helm charts) that will define the Cloud Infrastructure service attributes.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(hThe software packaging can be automated or performed by designated personnel, through self-service capabilities (for tenants) or by the Cloud Infrastructure Operations team.
h]h?)}(hThe software packaging can be automated or performed by designated personnel, through self-service capabilities (for tenants) or by the Cloud Infrastructure Operations team.h]hThe software packaging can be automated or performed by designated personnel, through self-service capabilities (for tenants) or by the Cloud Infrastructure Operations team.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhj~ ubeh}(h!]h#]h%]h']h)]uh+hahj hhhNhNubhb)}(hXN Software Validation and Certification:
- In this phase the software is deployed and tested to validate it against the service design and other Operator specific acceptance criteria, as required.
- Software validation and certification should be automated using CI/CD toolsets / pipelines and Test as a Service (TaaS) capabilities.
h](h?)}(h&Software Validation and Certification:h]h&Software Validation and Certification:}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubh])}(hhh](hb)}(h In this phase the software is deployed and tested to validate it against the service design and other Operator specific acceptance criteria, as required.h]h?)}(hj h]hIn this phase the software is deployed and tested to validate it against the service design and other Operator specific acceptance criteria, as required.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubhb)}(hSoftware validation and certification should be automated using CI/CD toolsets / pipelines and Test as a Service (TaaS) capabilities.
h]h?)}(hSoftware validation and certification should be automated using CI/CD toolsets / pipelines and Test as a Service (TaaS) capabilities.h]hSoftware validation and certification should be automated using CI/CD toolsets / pipelines and Test as a Service (TaaS) capabilities.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hahj ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhj ubeh}(h!]h#]h%]h']h)]uh+hahj hhhNhNubhb)}(hX Publish Software:
- Tenant Workloads: After the software is certified the final onboarding process phase is for it to be published to the Cloud Infrastructure production catalogue from where it can be instantiated on the Cloud Infrastructure platform by the tenant.
- Cloud Infrastructure software: After the software is certified, it is scheduled for deployment in concurrence with the user community.
h](h?)}(hPublish Software:h]hPublish Software:}(hj$ hj" hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubh])}(hhh](hb)}(hTenant Workloads: After the software is certified the final onboarding process phase is for it to be published to the Cloud Infrastructure production catalogue from where it can be instantiated on the Cloud Infrastructure platform by the tenant.h]h?)}(hj5 h]hTenant Workloads: After the software is certified the final onboarding process phase is for it to be published to the Cloud Infrastructure production catalogue from where it can be instantiated on the Cloud Infrastructure platform by the tenant.}(hj5 hj7 hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj3 ubah}(h!]h#]h%]h']h)]uh+hahj0 ubhb)}(hCloud Infrastructure software: After the software is certified, it is scheduled for deployment in concurrence with the user community.
h]h?)}(hCloud Infrastructure software: After the software is certified, it is scheduled for deployment in concurrence with the user community.h]hCloud Infrastructure software: After the software is certified, it is scheduled for deployment in concurrence with the user community.}(hjP hjN hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjJ ubah}(h!]h#]h%]h']h)]uh+hahj0 ubeh}(h!]h#]h%]h']h)]hhuh+h\hh,hKhj ubeh}(h!]h#]h%]h']h)]uh+hahj hhhNhNubeh}(h!]h#]h%]h']h)]j j j hj j uh+j
hj hhhh,hKubh?)}(hAll phases described above can be automated using technology specific toolsets and procedures. Hence, details of such automation are left for the technology specific Reference Architecture and Reference Implementation specifications.h]hAll phases described above can be automated using technology specific toolsets and procedures. Hence, details of such automation are left for the technology specific Reference Architecture and Reference Implementation specifications.}(hjv hjt hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubeh}(h!]software-onboarding-automationah#]h%]software onboarding automationah']h)]uh+h
hj hhhh,hKubh)}(hhh](h)}(hSoftware CI/CD Requirementsh]hSoftware CI/CD Requirements}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hKubh?)}(hX The requirements including for CI/CD for ensuring software security scans, image integrity checks, OS version checks, etc. prior to deployment, are listed in the Table 9-4 (below). Please note that the tenant processes for application LCM (such as updates) are out of scope. For the purpose of these requirements, CI includes Continuous Delivery, and CD refers to Continuous Deployment.h]hX The requirements including for CI/CD for ensuring software security scans, image integrity checks, OS version checks, etc. prior to deployment, are listed in the Table 9-4 (below). Please note that the tenant processes for application LCM (such as updates) are out of scope. For the purpose of these requirements, CI includes Continuous Delivery, and CD refers to Continuous Deployment.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubh)}(hhh]h)}(hhh](h)}(hhh]h}(h!]h#]h%]h']h)]colwidthK
uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthK}uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthMuh+hhj ubh)}(hhh]h)}(hhh](h)}(hhh]h?)}(hRef #h]hRef #}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hDescriptionh]hDescription}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hComments/Notesh]hComments/Notes}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj ubah}(h!]h#]h%]h']h)]uh+hhj ubjh )}(hhh](h)}(hhh](h)}(hhh]h?)}(h
auto.cicd.001h]h
auto.cicd.001}(hj/ hj- hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj* ubah}(h!]h#]h%]h']h)]uh+hhj' ubh)}(hhh]h?)}(h|The CI/CD pipeline must support deployment on any cloud and cloud infrastructures including different hardware accelerators.h]h|The CI/CD pipeline must support deployment on any cloud and cloud infrastructures including different hardware accelerators.}(hjF hjD hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjA ubah}(h!]h#]h%]h']h)]uh+hhj' ubh)}(hhh]h?)}(hX CI/CD pipelines automate CI/CD best practices into repeatable workflows for integrating code and configurations into builds, testing builds including validation against design and operator specific criteria, and delivery of the product onto a runtime environment. Example of an open-source cloud native CI/CD framework is the Tekton project (`https://tekton.dev/ `__)h](hXV CI/CD pipelines automate CI/CD best practices into repeatable workflows for integrating code and configurations into builds, testing builds including validation against design and operator specific criteria, and delivery of the product onto a runtime environment. Example of an open-source cloud native CI/CD framework is the Tekton project (}(hXV CI/CD pipelines automate CI/CD best practices into repeatable workflows for integrating code and configurations into builds, testing builds including validation against design and operator specific criteria, and delivery of the product onto a runtime environment. Example of an open-source cloud native CI/CD framework is the Tekton project (hj[ hhhNhNubh reference)}(h-`https://tekton.dev/ `__h]hhttps://tekton.dev/}(hhttps://tekton.dev/hjf hhhNhNubah}(h!]h#]h%]h']h)]namejn refurihttps://tekton.dev/uh+jd hj[ ubh)}(h)hj[ hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hKhjX ubah}(h!]h#]h%]h']h)]uh+hhj' ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.002h]h
auto.cicd.002}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h9The CI/CD pipelines must use event-driven task automationh]h9The CI/CD pipelines must use event-driven task automation}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.003h]h
auto.cicd.003}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h1The CI/CD pipelines should avoid scheduling tasksh]h1The CI/CD pipelines should avoid scheduling tasks}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.004h]h
auto.cicd.004}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hcThe CI/CD pipeline is triggered by a new or updated software release being loaded into a repositoryh]hcThe CI/CD pipeline is triggered by a new or updated software release being loaded into a repository}(hj. hj, hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj) ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hXF The software release cane be source code files, configuration files, images, manifests. Operators may support a single or multiple repositories and may, thus, specify which repository is to be used for these release. An example, of an open source repository is the CNCF Harbor (`https://goharbor.io/ `__)h](hX The software release cane be source code files, configuration files, images, manifests. Operators may support a single or multiple repositories and may, thus, specify which repository is to be used for these release. An example, of an open source repository is the CNCF Harbor (}(hX The software release cane be source code files, configuration files, images, manifests. Operators may support a single or multiple repositories and may, thus, specify which repository is to be used for these release. An example, of an open source repository is the CNCF Harbor (hjC hhhNhNubje )}(h/`https://goharbor.io/ `__h]hhttps://goharbor.io/}(hhttps://goharbor.io/hjL hhhNhNubah}(h!]h#]h%]h']h)]namejT jv https://goharbor.io/uh+jd hjC ubh)}(hj| hjC hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hKhj@ ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.005h]h
auto.cicd.005}(hj{ hjy hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjv ubah}(h!]h#]h%]h']h)]uh+hhjs ubh)}(hhh]h?)}(huThe CI pipeline must scan source code and manifests to validate for compliance with design and coding best practices.h]huThe CI pipeline must scan source code and manifests to validate for compliance with design and coding best practices.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhjs ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhjs ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.006h]h
auto.cicd.006}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h}The CI pipeline must support build and packaging of images and deployment manifests from source code and configuration files.h]h}The CI pipeline must support build and packaging of images and deployment manifests from source code and configuration files.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.007h]h
auto.cicd.007}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(heThe CI pipeline must scan images and manifests to validate for compliance with security requirements.h]heThe CI pipeline must scan images and manifests to validate for compliance with security requirements.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj
ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hSee section 7.9 (:ref:`ref_model/chapters/chapter07:consolidated security requirements`). Examples of such security requirements include only ingesting images, source code, configuration files, etc. only form trusted sources.h](hSee section 7.9 (}(hSee section 7.9 (hj' hhhNhNubj )}(hF:ref:`ref_model/chapters/chapter07:consolidated security requirements`h]h inline)}(hj2 h]h?ref_model/chapters/chapter07:consolidated security requirements}(hhhj6 hhhNhNubah}(h!]h#](j) stdstd-refeh%]h']h)]uh+j4 hj0 ubah}(h!]h#]h%]h']h)]refdocj6 refdomainj@ reftyperefrefexplicitrefwarnj< ?ref_model/chapters/chapter07:consolidated security requirementsuh+j hh,hKhj' ubh). Examples of such security requirements include only ingesting images, source code, configuration files, etc. only form trusted sources.}(h). Examples of such security requirements include only ingesting images, source code, configuration files, etc. only form trusted sources.hj' hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hKhj$ ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.008h]h
auto.cicd.008}(hjq hjo hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjl ubah}(h!]h#]h%]h']h)]uh+hhji ubh)}(hhh]h?)}(h2The CI pipeline must validate images and manifestsh]h2The CI pipeline must validate images and manifests}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhji ubh)}(hhh]h?)}(hExample, different testsh]hExample, different tests}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhji ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.009h]h
auto.cicd.009}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(haThe CI pipeline must validate with all hardware offload permutations and without hardware offloadh]haThe CI pipeline must validate with all hardware offload permutations and without hardware offload}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.010h]h
auto.cicd.010}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hMThe CI pipeline must promote validated images and manifests to be deployable.h]hMThe CI pipeline must promote validated images and manifests to be deployable.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hIExample, promote from a development repository to a production repositoryh]hIExample, promote from a development repository to a production repository}(hj- hj+ hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj( ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.011h]h
auto.cicd.011}(hjM hjK hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjH ubah}(h!]h#]h%]h']h)]uh+hhjE ubh)}(hhh]h?)}(h;The CD pipeline must verify and validate the tenant requesth]h;The CD pipeline must verify and validate the tenant request}(hjd hjb hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj_ ubah}(h!]h#]h%]h']h)]uh+hhjE ubh)}(hhh]h?)}(hJExample, RBAC, request is within quota limits, affinity/anti-affinity, …h]hJExample, RBAC, request is within quota limits, affinity/anti-affinity, …}(hj{ hjy hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjv ubah}(h!]h#]h%]h']h)]uh+hhjE ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.012h]h
auto.cicd.012}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h]The CD pipeline after all validations must turn over control to orchestration of the softwareh]h]The CD pipeline after all validations must turn over control to orchestration of the software}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.013h]h
auto.cicd.013}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hYThe CD pipeline must be able to deploy into Development, Test and Production environmentsh]hYThe CD pipeline must be able to deploy into Development, Test and Production environments}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.014h]h
auto.cicd.014}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hsThe CD pipeline must be able to automatically promote software from Development to Test and Production environmentsh]hsThe CD pipeline must be able to automatically promote software from Development to Test and Production environments}(hj2 hj0 hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj- ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.015h]h
auto.cicd.015}(hj[ hjY hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjV ubah}(h!]h#]h%]h']h)]uh+hhjS ubh)}(hhh]h?)}(hGThe CI pipeline must run all relevant Reference Conformance test suitesh]hGThe CI pipeline must run all relevant Reference Conformance test suites}(hjr hjp hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhjm ubah}(h!]h#]h%]h']h)]uh+hhjS ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhjS ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubh)}(hhh](h)}(hhh]h?)}(h
auto.cicd.016h]h
auto.cicd.016}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hGThe CD pipeline must run all relevant Reference Conformance test suitesh]hGThe CD pipeline must run all relevant Reference Conformance test suites}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj$ ubeh}(h!]h#]h%]h']h)]uh+jg hj ubeh}(h!]h#]h%]h']h)]colsKuh+hhj ubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hNubh?)}(h**Table 9-4:** Automation CI/CDh](j )}(h**Table 9-4:**h]h
Table 9-4:}(hhhj hhhNhNubah}(h!]h#]h%]h']h)]uh+j hj ubh Automation CI/CD}(h Automation CI/CDhj hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubeh}(h!]software-ci-cd-requirementsah#]h%]software ci/cd requirementsah']h)]uh+h
hj hhhh,hKubh)}(hhh](h)}(hCI/CD Design Requirementsh]hCI/CD Design Requirements}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+hhj hhhh,hKubh?)}(hX A couple of CI/CD pipeline properties and rules must be agreed between the
different actors to allow smoothly deploy and test the cloud infrastructures
and the hosted network functions whatever if the jobs operate open-source or
proprietary software. They all prevent that specific deployment or testing
operations force a particular CI/CD design or even worse ask to deploy a full
dedicated CI/CD toolchain for a particular network service.h]hX A couple of CI/CD pipeline properties and rules must be agreed between the
different actors to allow smoothly deploy and test the cloud infrastructures
and the hosted network functions whatever if the jobs operate open-source or
proprietary software. They all prevent that specific deployment or testing
operations force a particular CI/CD design or even worse ask to deploy a full
dedicated CI/CD toolchain for a particular network service.}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubh?)}(hX At first glance, the deployment and test job must not basically ask for a
specific CI/CD tools such as `Jenkins `__ or
`Gitlab CI/CD `__. But they are many other
ways where deployment and test jobs can constraint the end users from the
build servers to the artefact management. Any manual operation is discouraged
whatever it's about the deployment or the test resources.h](hgAt first glance, the deployment and test job must not basically ask for a
specific CI/CD tools such as }(hgAt first glance, the deployment and test job must not basically ask for a
specific CI/CD tools such as hj* hhhNhNubje )}(h%`Jenkins `__h]hJenkins}(hJenkinshj3 hhhNhNubah}(h!]h#]h%]h']h)]namej; jv https://www.jenkins.io/uh+jd hj* ubh or
}(h or
hj* hhhNhNubje )}(h1`Gitlab CI/CD `__h]hGitlab CI/CD}(hGitlab CI/CDhjI hhhNhNubah}(h!]h#]h%]h']h)]nameGitlab CI/CDjv https://docs.gitlab.com/ee/ci/uh+jd hj* ubh. But they are many other
ways where deployment and test jobs can constraint the end users from the
build servers to the artefact management. Any manual operation is discouraged
whatever it’s about the deployment or the test resources.}(h. But they are many other
ways where deployment and test jobs can constraint the end users from the
build servers to the artefact management. Any manual operation is discouraged
whatever it's about the deployment or the test resources.hj* hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hKhj hhubh?)}(hThe following requirements also aims at deploying smoothly and easily all CI/CD
toolchains via simple playbooks as targeted by the Reference Conformance
suites currently leveraging `XtestingCI `__.h](hThe following requirements also aims at deploying smoothly and easily all CI/CD
toolchains via simple playbooks as targeted by the Reference Conformance
suites currently leveraging }(hThe following requirements also aims at deploying smoothly and easily all CI/CD
toolchains via simple playbooks as targeted by the Reference Conformance
suites currently leveraging hjf hhhNhNubje )}(h>`XtestingCI `__h]h
XtestingCI}(h
XtestingCIhjo hhhNhNubah}(h!]h#]h%]h']h)]namejw jv -https://galaxy.ansible.com/collivier/xtestinguh+jd hjf ubh.}(hj hjf hhhNhNubeh}(h!]h#]h%]h']h)]uh+h>hh,hMhj hhubh)}(hhh]h)}(hhh](h)}(hhh]h}(h!]h#]h%]h']h)]colwidthKuh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthK]uh+hhj ubh)}(hhh]h}(h!]h#]h%]h']h)]colwidthKpuh+hhj ubh)}(hhh]h)}(hhh](h)}(hhh]h?)}(hRef #h]hRef #}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hMhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hDescriptionh]hDescription}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hMhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hCommentsh]hComments}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hMhj ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj ubah}(h!]h#]h%]h']h)]uh+hhj ubjh )}(hhh](h)}(hhh](h)}(hhh]h?)}(hdesign.cicd.001h]hdesign.cicd.001}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hM
hj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h:The pipeline must allow chaining of independent CI/CD jobsh]h:The pipeline must allow chaining of independent CI/CD jobs}(hj' hj% hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hM
hj" ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(hpFor example, all deployment and test operations from baremetal to Kubernetes, OpenStack, to the network servicesh]hpFor example, all deployment and test operations from baremetal to Kubernetes, OpenStack, to the network services}(hj> hj< hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hM
hj9 ubah}(h!]h#]h%]h']h)]uh+hhj ubeh}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh](h)}(hhh]h?)}(hdesign.cicd.002h]hdesign.cicd.002}(hj^ hj\ hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hMhjY ubah}(h!]h#]h%]h']h)]uh+hhjV ubh)}(hhh]h?)}(h#The pipeline jobs should be modularh]h#The pipeline jobs should be modular}(hju hjs hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hMhjp ubah}(h!]h#]h%]h']h)]uh+hhjV ubh)}(hhh]h?)}(hoThis allows execution of jobs independently of others, for example, start with an existing OpenStack deploymenth]hoThis allows execution of jobs independently of others, for example, start with an existing OpenStack deployment}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hMhj ubah}(h!]h#]h%]h']h)]uh+hhjV ubeh}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh](h)}(hhh]h?)}(hdesign.cicd.003h]hdesign.cicd.003}(hj hj hhhNhNubah}(h!]h#]h%]h']h)]uh+h>hh,hMhj ubah}(h!]h#]h%]h']h)]uh+hhj ubh)}(hhh]h?)}(h