OKD O-Cloud implementation
[pti/rtp.git] / docs / overview.rst
index 79c3143..a7c7f5a 100644 (file)
 .. SPDX-License-Identifier: CC-BY-4.0
 .. Copyright (C) 2019 Wind River Systems, Inc.
 
-RTP Overview (INF)
-==================
+Infrastructure Overview (INF)
+=============================
 
-This project implements a real time platform (rtp) to deploy the O-CU and O-DU.
+This project is a reference implementation of O-Cloud infrastructure and it implements a real time platform (rtp) to deploy the O-CU and O-DU.
 
 In O-RAN architecture, the O-DU and O-CU could have different deployed scenarios.
-The could be container based or VM based, in this release, we only cover the container one. 
+The could be container based or VM based, which will be both supported in the release.
 In general the performance sensitive parts of the 5G stack require real time platform,
 especially for O-DU, the L1 and L2 are requiring the real time feature,
 the platform should support the Preemptive Scheduling feature. 
  
 Following requirements are going to address the container based solution:
 
-1.Support the real time kernel
-
-2.Support Node Feature Discovery
-
-
-3.Support CPU Affinity and Isolation
-
-
-4.Support Dynamic HugePages Allocation
-
+1. Support the real time kernel
+2. Support Node Feature Discovery
+3. Support CPU Affinity and Isolation
+4. Support Dynamic HugePages Allocation
 
 And for the network requirements, the following should be supported:
 
-1.Multiple Networking Interface
-
-
-2.High performance data plane including the DPDK based vswitch and PCI pass-through/SR-IOV.
+1. Multiple Networking Interface
+2. High performance data plane including the DPDK based vswitch and PCI pass-through/SR-IOV.
 
+O-Cloud Components
+------------------
 
-In the Bronze release, the following components and services are enabled:
+In this project, the following O-Cloud components and services are enabled:
 
 1. Fault Management
 
-   Framework for infrastructure services to raise and persist alarm and event data.
+   Framework for infrastructure services to raise and persist alarm and event data.
    
-    Set, clear and query customer alarms
+     - Set, clear and query customer alarms
+     - Generate customer logs for significant events
 
-    Generate customer logs for significant events
+   - Maintains an Active Alarm List
+   - Provides REST API to query alarms and events, also available through SNMP traps
+   - Support for alarm suppression
+   - Operator alarms
 
-   Maintains an Active Alarm List
+     - On platform nodes and resources
+     - On hosted virtual resources
 
-   Provides REST API to query alarms and events, also available through SNMP traps
+   - Operator logs - Event List
 
-   Support for alarm suppression
-
-   Operator alarms
-
-    On platform nodes and resources
-
-    On hosted virtual resources
-
-   Operator logs - Event List
-
-    Logging of sets/clears of alarms
-
-    Related to platform nodes and resources
-    
-    Related to hosted virtual resources
+     - Logging of sets/clears of alarms
+     - Related to platform nodes and resources
+     - Related to hosted virtual resources
 
 2. Configuration Management
 
-   Manages Installation and Commissioning
+   Manages Installation and Commissioning
    
-    Auto-discover of new nodes
-
-    Full Infrastructure management
+     - Auto-discover of new nodes
+     - Full Infrastructure management
+     - Manage installation parameters (i.e. console, root disks)
 
-    Manage installation parameters (i.e. console, root disks)
+   - Nodal Configuration
 
-   Nodal Configuration
+     - Node role, role profiles
+     - Core, memory (including huge page) assignments
+     - Network Interfaces and storage assignments
 
-    Node role, role profiles
+   - Hardware Discovery
 
-    Core, memory (including huge page) assignments
-
-    Network Interfaces and storage assignments
-
-   Hardware Discovery
-
-    CPU/cores, SMT, processors, memory, huge pages
-
-    Storage, ports
-
-    GPUs, storage, Crypto/compression H/W
+     - CPU/cores, SMT, processors, memory, huge pages
+     - Storage, ports
+     - GPUs, storage, Crypto/compression H/W
 
 3. Software Management
 
-   Manages Installation and Commissioning
-
-    Auto-discover of new nodes
+   - Manages Installation and Commissioning
 
-    Full Infrastructure management
+     - Auto-discover of new nodes
+     - Full Infrastructure management
+     - Manage installation parameters (i.e. console, root disks)
 
-    Manage installation parameters (i.e. console, root disks)
+   - Nodal Configuration
 
-   Nodal Configuration
+     - Node role, role profiles
+     - Core, memory (including huge page) assignments
+     - Network Interfaces and storage assignments
 
-    Node role, role profiles
+   - Hardware Discovery
 
-    Core, memory (including huge page) assignments
+     - CPU/cores, SMT, processors, memory, huge pages
+     - Storage, ports
+     - GPUs, storage, Crypto/compression H/W
 
-    Network Interfaces and storage assignments
+4. Host Management
 
-   Hardware Discovery
+   - Full life-cycle and availability management of the physical hosts
+   - Detects and automatically handles host failures and initiates recovery
+   - Monitoring and fault reporting for:
 
-    CPU/cores, SMT, processors, memory, huge pages
+     - Cluster connectivity
+     - Critical process failures
+     - Resource utilization thresholds, interface states
+     - H/W fault / sensors, host watchdog
+     - Activity progress reporting
 
-    Storage, ports
+   - Interfaces with board management (BMC)
 
-    GPUs, storage, Crypto/compression H/W
-4. Host Management
+     - For out of band reset
+     - Power-on/off
+     - H/W sensor monitoring
 
-   Full life-cycle and availability management of the physical hosts
+5. Service Management
 
-   Detects and automatically handles host failures and initiates recovery
+   - Manages high availability of critical infrastructure and cluster services
 
-   Monitoring and fault reporting for:
+     - Supports many redundancy models: N, or N+M
+     - Active or passive monitoring of services
+     - Allows for specifying the impact of a service failure and escalation policy
+     - Automatically recovers failed services
 
-    Cluster connectivity
+   - Uses multiple messaging paths to avoid split-brain communication failures
 
-    Critical process failures
+     - Up to 3 independent communication paths
+     - LAG can also be configured for multi-link protection of each path
+     - Messages are authenticated using HMAC
+     - SHA-512 if configured / enabled on an interface by-interface basis
 
-    Resource utilization thresholds, interface states
+6. Support the ansible bootstrap to implement the zero touch provisioning
 
-    H/W fault / sensors, host watchdog
+Enable the ansible configuration functions for infrastructure itself including the image installation and service configuration.
 
-    Activity progress reporting
+NOTE: These features leverage the StarlingX (www.starlingx.io). And in current release, these features are only avalaible for IA platform.
 
-   Interfaces with board management (BMC)
+Multi OS and Deployment Configurations
+--------------------------------------
 
-    For out of band reset
+* The INF project supports Multi OS and currently the following OS are supported:
 
-    Power-on/off
+   - Debian 11 (bullseye)
+   - CentOS 7
+   - Yocto 2.7 (warrior)
 
-    H/W sensor monitoring
-5. Service Management
+A variety of deployment configuration options are supported:
 
-   Manages high availability of critical infrastructure and cluster services
+1. **All-in-one Simplex**
 
-    Supports many redundancy models: N, or N+M
+  A single physical server providing all three cloud functions (controller, worker and storage).
 
-    Active or passive monitoring of services
+2. **All-in-one Duplex**
 
-    Allows for specifying the impact of a service failure and escalation policy
+  Two HA-protected physical servers, both running all three cloud functions (controller, worker and storage), optionally with up to 50 worker nodes added to the cluster.
 
-    Automatically recovers failed services
+3. **All-in-one Duplex + up to 50 worker nodes**
 
-   Uses multiple messaging paths to avoid split-brain communication failures
+  Two HA-protected physical servers, both running all three cloud functions (controller, worker and storage), plus with up to 50 worker nodes added to the cluster.
 
-    Up to 3 independent communication paths
+4. **Standard with Storage Cluster on Controller Nodes**
 
-    LAG can also be configured for multi-link protection of each path
+  A two node HA controller + storage node cluster, managing up to 200 worker nodes.
 
-    Messages are authenticated using HMAC
+5. **Standard with Storage Cluster on dedicated Storage Nodes**
 
-    SHA-512 if configured / enabled on an interface by-interface basis
-6. Support the ansible bootstrap to implement the zero touch provisioning
+  A two node HA controller node cluster with a 2-9 node Ceph storage cluster, managing up to 200 worker nodes.
 
-Enable the ansible configuration functions for infrastructure itself including the image installation and service configuration.
+6. **Distributed Cloud**
 
+  Distributed Cloud configuration supports an edge computing solution by providing central management and orchestration for a geographically distributed network of StarlingX systems.
 
-NOTE: These features leverage the StarlingX (www.starlingx.io). And in Bronze release, these features are only avalaible for IA platform.
+**NOTE:**
 
-NOTE: In this release single server solution is supported only. All the functionalities include controller functions, storage functions and compute functions are integrated in the single server.  
+ - For Debian and CentOS based image, all the above deployment configuration are supported.
+ - For Yocto Based image, only deployment 1 - 3 are supported, and only container based solution is supported, VM based is not supprted yet.
 
 About Yocto and OpenEmbedded
 ----------------------------
@@ -191,5 +192,5 @@ StarlingX is a complete cloud infrastructure software stack for the edge used by
 Contact info
 ------------
 If you need support or add new features/components, please feel free to contact the following:
-- Jackie Huang <jackie.huang@windriver.com>
-- Xiaohua Zhang <xiaohua.zhang@windriver.com> 
+
+ - Jackie Huang <jackie.huang@windriver.com>