Skip to content
index.html 65.7 KiB
Newer Older
  
  
  
    <li class="md-nav__item">
      <a href="../../service_design/examples/jenkins_helm_install_aas/jenkins_helm_install_aas/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Jenkins Helm Installation aaS
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../service_design/examples/monitoring_aas/monitoring_aas/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Monitoring aaS
    
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
        
          
          <label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Service Ordering
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_5">
            <span class="md-nav__icon md-icon"></span>
            Service Ordering
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../service_ordering/ordering_services/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Ordering Services from catalogs
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
        
          
          <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
            
  
  <span class="md-ellipsis">
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_6">
            <span class="md-nav__icon md-icon"></span>
      <a href="../../addons/intro/" class="md-nav__link">
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_2" >
        
          
          <label class="md-nav__link" for="__nav_6_2" id="__nav_6_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    CAMARA
    
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_2_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_6_2">
            <span class="md-nav__icon md-icon"></span>
            CAMARA
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
      <a href="../../addons/camara/intro/" class="md-nav__link">
    Offering CAMARAaaS
    
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../addons/camara/qod/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Quality on Demand
    
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
        
          
          <label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Design & Architecture
    
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_7">
            <span class="md-nav__icon md-icon"></span>
            Design & Architecture
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../architecture/architecture/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Architecture
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../architecture/messagebus/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Message bus
    <li class="md-nav__item">
      <a href="../../architecture/cridge/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    CRIDGE
    
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../architecture/metrico/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    METRICO
    
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../architecture/oauth/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Authentication
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7_7" >
          <label class="md-nav__link" for="__nav_7_7" id="__nav_7_7_label" tabindex="0">
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_7_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_7_7">
            <span class="md-nav__icon md-icon"></span>
            APIs
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../architecture/tmfapi/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    TMF API
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../architecture/nfvapi/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    NFV API
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../architecture/centrallog/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Central logging
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
          <label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_8">
            <span class="md-nav__icon md-icon"></span>
      <a href="../../contribute/developing/" class="md-nav__link">
      <a href="../../contribute/documenting/" class="md-nav__link">
  </span>
  

      </a>
    </li>
  

    
  </ul>
</nav>
                  </div>
                </div>
              </div>
            
            
              
              <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    

<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  
  
  
    
  
  
    <label class="md-nav__title" for="__toc">
      <span class="md-nav__icon md-icon"></span>
      Table of contents
    </label>
    <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
      
        <li class="md-nav__item">
  <a href="#introduction-in-openslice-lcm" class="md-nav__link">
    <span class="md-ellipsis">
      Introduction in OpenSlice LCM
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Introduction in OpenSlice LCM">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#0-preparation-phase" class="md-nav__link">
    <span class="md-ellipsis">
      0. Preparation Phase
    </span>
  </a>
  
    <nav class="md-nav" aria-label="0. Preparation Phase">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#service-design" class="md-nav__link">
    <span class="md-ellipsis">
      Service Design:
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#1-instantiation-phase" class="md-nav__link">
    <span class="md-ellipsis">
      1. Instantiation Phase
    </span>
  </a>
  
    <nav class="md-nav" aria-label="1. Instantiation Phase">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#service-instantiation" class="md-nav__link">
    <span class="md-ellipsis">
      Service Instantiation:
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#service-deployment" class="md-nav__link">
    <span class="md-ellipsis">
      Service Deployment:
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#2-operation-phase" class="md-nav__link">
    <span class="md-ellipsis">
      2. Operation Phase
    </span>
  </a>
  
    <nav class="md-nav" aria-label="2. Operation Phase">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#service-operation" class="md-nav__link">
    <span class="md-ellipsis">
      Service Operation:
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#3-decommissioning-phase" class="md-nav__link">
    <span class="md-ellipsis">
      3. Decommissioning Phase
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#high-level-example-enhanced-mobile-broadband-embb-service-lifecycle" class="md-nav__link">
    <span class="md-ellipsis">
      High level example: Enhanced Mobile Broadband (eMBB) Service Lifecycle
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
        <li class="md-nav__item">
  <a href="#probe-further" class="md-nav__link">
    <span class="md-ellipsis">
      Probe further
    </span>
  </a>
  
</li>
      
    </ul>
  
</nav>
                  </div>
                </div>
              </div>
            
          
          
            <div class="md-content" data-md-component="content">
              <article class="md-content__inner md-typeset">
                
                  


<h1 id="lifecycle-management-lcm">Lifecycle Management - LCM</h1>
<p><strong>Intended Audience: OpenSlice Service Designers</strong></p>
<p>Lifecycle Management: The orchestration framework handles the activation, termination and any necessary modifications throughout the service lifecycle.</p>
<p>In OpenSlice the Lifecycle of a service follows in general the concept of Network Slice lifecycle as defined by 3GPP.</p>
<p><a class="glightbox" href="../lcm/img01.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="lcm" src="../lcm/img01.png" /></a></p>
<h2 id="introduction-in-openslice-lcm">Introduction in OpenSlice LCM</h2>
<p>OpenSlice adopted the LCM model by 3GPP and mapped to the TMF model service state. Next we discuss briefly the process and the relationships.</p>
<p>The lifecycle of a service, particularly in the context of Network Service lifecycle encompasses several stages that ensure the service is effectively planned, deployed, managed, and eventually decommissioned. </p>
<p>Here is an overview of these stages and relationships with OpenSlice:</p>
<h3 id="0-preparation-phase">0. Preparation Phase</h3>
<p>This phase is performed by Service Designers</p>
<h4 id="service-design">Service Design:</h4>
<ul>
<li><strong>Requirements Gathering:</strong> Collect service requirements from stakeholders, including performance metrics, quality of service (QoS), security needs, and geographical coverage.</li>
<li><strong>Service Specification:</strong> Define the service in terms of functionalities, attributes, and dependencies. This can be formalized using standardized templates such as the GSMA Generic Slice Template (GST).</li>
<li><strong>Resource Planning:</strong> Identify and plan the required resources, including network functions, computing power, storage, and connectivity, inclluding network function configurations.</li>
<li><strong>Expose to Service Catalog</strong>:  Expose to service catalog for user ordering.</li>
</ul>
<p><strong>Next phases are handled by the Service Orchestrator after a service is scheduled for instantiation</strong></p>
<p><strong>If it is a bundle of services, each services follows its own Lifecycle!</strong></p>
<h3 id="1-instantiation-phase">1. Instantiation Phase</h3>
<h4 id="service-instantiation">Service Instantiation:</h4>
<ul>
<li><strong>Configuration:</strong> Configure the network service according to the specifications including the user requirements from the service order, ensuring that all components are correctly set up to provide the desired service.</li>
<li><strong>Resource Allocation - Feasibility check:</strong> Allocate the necessary physical and virtual resources based on the service specification. This includes any containerized resources, virtual network functions (VNFs) and software-defined networking (SDN) components. (This step is not performed in OpenSlice)</li>
<li>OpenSlice Service Orchestrator creates the services at "RESERVED" state</li>
<li><strong>User Notification:</strong>  There could be an email notification from the system (if Bugzilla is configured)</li>
</ul>
<h4 id="service-deployment">Service Deployment:</h4>
<ul>
<li><strong>Activation:</strong> OpenSlice Service Orchestrator activates the network service and makes the service available to the end-users. This may involve:</li>
<li>Create any related services that the service depends on</li>
<li>Contacting all related controllers during provisioning, e.g. Kubernetes controllers, Kubernetes operators, MANO Orchestrators, RAN controllers, SDN Controlles, or other external services (e.g. via REST calls)</li>
<li>Scheduling instantiation, Resolving dependencies and passing paramemters between controllers,</li>
<li>setting up user accounts, provisioning access credentials -this is performed either offline or via other services.</li>
<li>OpenSlice Service Orchestrator if everything is succesful puts the service at "ACTIVE" state</li>
<li><strong>User Notification:</strong>  There could be an email notification from the system (if Bugzilla is configured)</li>
</ul>
<h3 id="2-operation-phase">2. Operation Phase</h3>
<h4 id="service-operation">Service Operation:</h4>
<ul>
<li><strong>Lifecycle Management:</strong> Manage the network slice throughout its lifecycle, including scaling, reconfiguration, and adaptation to changing requirements. </li>
<li>In OpenSlice this is performed with Lifecycle management Rules (see next)</li>
</ul>
<p>In this phase the Service Designer can define several aspects.  <strong>Be aware that these are NOT performed automatically by OpenSlice - further examples and future enhancements will address these</strong>. This could include:</p>
<ul>
<li><strong>Monitoring:</strong> Continuously monitor the service for performance, availability, and compliance with SLAs. Utilize tools for real-time tracking and alerts for any anomalies or performance degradation.</li>
<li><strong>Maintenance:</strong> Conduct regular maintenance activities, including software updates, patching, and optimization to ensure the service runs smoothly.</li>
<li><strong>Scaling:</strong> Dynamically scale the resources up or down based on the demand and performance requirements.</li>
<li><strong>Fault Management:</strong> Detect and resolve faults in the network slice to minimize downtime and maintain service quality.</li>
</ul>
<h3 id="3-decommissioning-phase">3. Decommissioning Phase</h3>
<ul>
<li><strong>Service Termination:</strong> Service Orchestrator terminates the network service. This may involve:</li>
<li>Terminate any related services that the service depends on</li>
<li>Contacting all related controllers during termination to release resources, e.g. Kubernetes controllers, Kubernetes operators, MANO Orchestrators, RAN controllers, SDN Controlles, or other external services (e.g. via REST calls)</li>
<li>Scheduling termination, Resolving dependencies and passing paramemters between controllers</li>
<li>OpenSlice Service Orchestrator, if everything is succesful, puts the service at "TERMINATED" state</li>
<li><strong>User Notification:</strong>  There could be an email notification from the system (if Bugzilla is configured)</li>
</ul>
<h3 id="high-level-example-enhanced-mobile-broadband-embb-service-lifecycle">High level example: Enhanced Mobile Broadband (eMBB) Service Lifecycle</h3>
<ol>
<li>
<p><strong>Preparation:</strong></p>
</li>
<li>
<p>Define eMBB service requirements for high bandwidth and low latency.</p>
</li>
<li>Create an eMBB service specification template specifying related services and resources to Kubernetes Operators, VNFs for content delivery and traffic management.</li>
<li>
<p>Expose to catalog</p>
</li>
<li>
<p><strong>Instantiation:</strong></p>
</li>
<li>
<p>Instantiate other services and allocate resources such as edge computing nodes and high-capacity links.</p>
</li>
<li>
<p>Configure the service to prioritize video streaming traffic.</p>
</li>
<li>
<p><strong>Operation:</strong></p>
</li>
<li>
<p>Monitor the service to ensure it meets high-bandwidth requirements.</p>
</li>
<li>
<p>Scale up resources during peak usage periods, such as live sports events.</p>
</li>
<li>
<p><strong>Decommissioning:</strong></p>
</li>
<li>
<p>Notify users about service termination.</p>
</li>
<li>Decommission the network service, reclaiming resources for other services.</li>
</ol>
<h2 id="probe-further">Probe further</h2>
<ul>
<li>See 3GPP <a href="https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3091">Lifecycle</a></li>
</ul>












                
              </article>
            </div>
          
          
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
        </div>
        
          <button type="button" class="md-top md-icon" data-md-component="top" hidden>
  
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z"/></svg>
  Back to top
</button>
        
      </main>
      
        <footer class="md-footer">
  
    
      
      <nav class="md-footer__inner md-grid" aria-label="Footer" >
        
          
          <a href="../so_intro/" class="md-footer__link md-footer__link--prev" aria-label="Previous: Introduction">
            <div class="md-footer__button md-icon">
              
              <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
            </div>
            <div class="md-footer__title">
              <span class="md-footer__direction">
                Previous
              </span>