From e470a36aca226f97cbe3bd8b74ec06e3c147653d Mon Sep 17 00:00:00 2001 From: John Hamrick Date: Thu, 28 Sep 2023 17:01:23 -0700 Subject: [PATCH 1/2] Add gNOI Reboot HLD. --- doc/gnoi-reboot/gnoi_reboot.md | 252 ++++++++++++++++++++++++++++++ doc/gnoi-reboot/images/image1.png | Bin 0 -> 14546 bytes doc/gnoi-reboot/images/image2.png | Bin 0 -> 12159 bytes doc/gnoi-reboot/images/image3.png | Bin 0 -> 23888 bytes doc/gnoi-reboot/images/image4.png | Bin 0 -> 33092 bytes 5 files changed, 252 insertions(+) create mode 100644 doc/gnoi-reboot/gnoi_reboot.md create mode 100644 doc/gnoi-reboot/images/image1.png create mode 100644 doc/gnoi-reboot/images/image2.png create mode 100644 doc/gnoi-reboot/images/image3.png create mode 100644 doc/gnoi-reboot/images/image4.png diff --git a/doc/gnoi-reboot/gnoi_reboot.md b/doc/gnoi-reboot/gnoi_reboot.md new file mode 100644 index 0000000000..378d02ca9d --- /dev/null +++ b/doc/gnoi-reboot/gnoi_reboot.md @@ -0,0 +1,252 @@ + +# **gNOI Reboot** + + +## Table of Content + + + + +- [Revision](#revision) +- [Scope](#scope) +- [Definitions/Abbreviations](#definitionsabbreviations) +- [Overview](#overview) +- [Requirements](#requirements) +- [Architecture Design](#architecture-design) + * [Framework Container](#framework-container) +- [High-Level Design](#high-level-design) + * [Telemetry <-> Reboot BE API](#telemetry-lt-reboot-be-api) + * [Reboot Request Notification Schema](#reboot-request-notification-schema) + * [Reboot Response Notification Schema](#reboot-response-notification-schema) + * [CLI](#cli) + * [Sonic Host Services](#sonic-host-services) + * [SAI API {#sai-api}](#sai-api-sai-api) + * [Configuration and management {#configuration-and-management}](#configuration-and-management-configuration-and-management) + * [Warmboot and Fastboot Design Impact {#warmboot-and-fastboot-design-impact}](#warmboot-and-fastboot-design-impact-warmboot-and-fastboot-design-impact) + * [Restrictions/Limitations {#restrictions-limitations}](#restrictionslimitations-restrictions-limitations) + * [Testing Requirements/Design {#testing-requirements-design}](#testing-requirementsdesign-testing-requirements-design) + + + + + + + + + +## Revision + + +Rev | RevDate | Author(s) | Change Description +---- | ---------- | ----------- | ------------------ +v0.1 | 09/22/2023 | John Hamrick (Google) | Initial Version + + + +## Scope + +_This document describes the high level design for SONiC gNOI Reboot RPC support._ + + +## Definitions/Abbreviations + +API: Application Programming Interface + +BE: Backend + +FE: Frontend + +gNOI: gRPC Network Operations Interface + +RPC: remote procedure call + +SAI: Switch Abstraction Interface + +SONiC: Software for Open Networking in the Cloud + +UMF: Unified Management Framework + + +## Overview + +_Openconfig system.proto ([https://github.com/openconfig/gnoi/blob/main/system/system.proto](https://github.com/openconfig/gnoi/blob/main/system/system.proto)) defines reboot, cancel reboot and reboot status rpc’s within the system service. These rpc’s can be used to start, cancel and check status of reboot activities._ + + +## Requirements + +_NA_ + + +## Architecture Design + +The proposal is to create a Reboot Backend (BE) daemon in a new “Framework” container to handle a reboot request and forward it to the platform via DBUS. + +This daemon provides a location to implement application level reboot functionality before forwarding a reboot request to the platform (in the spirit of “[Docker to Host Communications HLD](https://github.com/sonic-net/SONiC/blob/master/doc/mgmt/Docker%20to%20Host%20communication.md)”. + +The reboot request contains a delay parameter, method and subcomponent fields. For subcomponents we can have support for: + + + +* system reboot (method = warm, cold, fast, etc) +* optic reboot +* container reboot +* etc + +The immediate short term use case for the reboot backend daemon is to support system warm boot. During warmboot applications will be requested and confirmed to: + + + +* freeze/quiesce +* verify state +* checkpoint (save) state before shutdown +* reconcile after boot +* verify state +* unfreeze + + + + + +![drawing](./images/image3.png) + +The controller can send a reboot request to the UMF gNOI Reboot Front End. This request will be forwarded to a Reboot Back End daemon executing in a container. The reboot back end daemon will then request host/platform level reboot actions via DBUS and a reboot sonic host service. + +### Framework Container + +There is no obvious container home for a reboot backend daemon: SWSS and PMON were considered. SWSS has the primary role of processing CONFIG_DB inputs (or kernel events) to APP_DB and ASIC_DB outputs. PMON, by name, exists to monitor the platform. Further, there are plans for a state verification daemon which also needs a home. + +The Framework container is envisioned to provide a home for foundational services that interact with multiple containers/applications. + +State verification daemon periodically (or by request) asks applications to verify their state. For example: + + + +* SWSS Cfgmgr confirms CONFIG DB matches APPL DB. +* Syncd verifies ASIC DB matches SDK cache. + +State verification daemon aggregates application results into a single state and writes overall state to the STATE DB. + +It is proposed to create a new “Framework” container with reboot as its first daemon and state verification as its second. + + + +![drawing](./images/image1.png) + +One step further: the Reboot BE Daemon can have multiple state machines for different subcomponents. For example: + + + +* System reboot +* Optic reboot +* Container reboot + + + + + + +![drawing](./images/image2.png) + + +## High-Level Design + + + + + +![drawing](./images/image4.png) + +The gNOI System service ([system.proto](https://github.com/openconfig/gnoi/blob/main/system/system.proto)) defines Reboot, RebootStatus and CancelReboot rpc’s. These rpc’s can be used to reboot a switch (or subcomponent) via gNOI. + + +### Telemetry <-> Reboot BE API + +There are three reboot rpc’s defined in [system.proto](https://github.com/openconfig/gnoi/blob/main/system/system.proto): Reboot, RebootStatus and CancelReboot. + +JSON encoded RebootRequest, RebootStatusRequest and CancelRebootRequest will be send to the Reboot BE via a redis notification channel named: “`Reboot_Request_Channel".` + +JSON encoded RebootResponse, RebootStatusResponse and CancelRebootResponse will be send to the gNOI Reboot FE via a redis notification channel named: “`Reboot_Response_Channel".` + + +### Reboot Request Notification Schema + +Data is JSON encoded [RebootRequest](https://github.com/openconfig/gnoi/blob/98d6b81c6dfe3c5c400209f82a228cf3393ac923/system/system.proto#L103C13-L103C13), [RebootStatusRequest](https://github.com/openconfig/gnoi/blob/98d6b81c6dfe3c5c400209f82a228cf3393ac923/system/system.proto#L145) or [CancelRebootRequest](https://github.com/openconfig/gnoi/blob/98d6b81c6dfe3c5c400209f82a228cf3393ac923/system/system.proto#L137) (from [system.proto](http://google3/third_party/openconfig/gnoi/system/system.proto)) indicated by the Key value. + + +### Reboot Response Notification Schema + +Where StatusCode is defined in [sonic-swss-common/common/status_code_util.h](https://github.com/sonic-net/sonic-swss-common/blob/master/common/status_code_util.h) and can be populated via swss::statusCodeToStr(StatusCode::SWSS_RC_SUCCESS). + +Data is JSON encoded RebootRequestResponse, RebootStatusResponse or CancelRebootResponse (from [system.proto](https://github.com/openconfig/gnoi/blob/main/system/system.proto)) indicated by the Key value. + + +### CLI + +A cli based tool/script can write/read to/from the “Reboot_Request_Channel” and “Reboot_Response_Channel” notification channels to provide cli based reboot support. + + +### Sonic Host Services + +We propose adding a new sonic host service named gnoi_reboot. This host service will have 3 methods defined: reboot, reboot_status and cancel_reboot. + +These three methods will take as input json formatted RebootRequest, RebootStatusRequest and CancelRebootRequest (defined in system.proto as input). + +Similarly, these three methods will return json formatted RebootResponse, RebootStatusResponse and CancelRebootResponse. + +Reboot function definition: + + @host_service.method(host_service.bus_name(MOD_NAME), in_signature='as', out_signature='is') + def reboot(self, options): + request = json.loads(options[0]) + reboot_response = self.do_reboot(request) + return 0, json.dumps(response) + +Reboot status function definition: + + @host_service.method(host_service.bus_name(MOD_NAME), in_signature='as', out_signature='is') + def reboot_status(self): + request = json.loads(options[0]) + response = self.get_reboot_status(request) + return 0, json.dumps(response) + +Cancel reboot function defintion: + + @host_service.method(host_service.bus_name(MOD_NAME), in_signature='as', out_signature='is') + def cancel_reboot(self): + request = json.loads(options[0]) + response = self.cancel_reboot(request) + return 0, json.dumps(response) + + +### SAI API {#sai-api} + +_NA_ + + +### Configuration and management {#configuration-and-management} + +_NA_ + + +### Warmboot and Fastboot Design Impact {#warmboot-and-fastboot-design-impact} + +_No changes to existing functionality._ + +_This architecture provides a foundation for a gNOI based warm reboot with in switch software upgrade support. _ + + +### Restrictions/Limitations {#restrictions-limitations} + + +### Testing Requirements/Design {#testing-requirements-design} + +_Ondatra based gnoi reboot test will be designed/implemented._ + +_Ondatra is an open-source testing framework for network devices. It provides a way to write and run tests against network devices. Ondatra is written in Go and uses the gRPC protocol to communicate with the devices under test._ + +_More details about Ondatra can be found here [https://github.com/openconfig/ondatra/blob/main/README.md](https://github.com/openconfig/ondatra/blob/main/README.md)_ + + +### +Open/Action items - if any {#open-action-items-if-any} + diff --git a/doc/gnoi-reboot/images/image1.png b/doc/gnoi-reboot/images/image1.png new file mode 100644 index 0000000000000000000000000000000000000000..67e506bbaa9e072d6836aadf6c78a784c21c40b5 GIT binary patch literal 14546 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 I>Yf1OF}9uiMM0u{-u^wg!k;K^(6HF-hO@0AhE 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 Date: Thu, 28 Sep 2023 17:01:23 -0700 Subject: [PATCH 2/2] Add gNOI Reboot HLD. --- doc/gnoi-reboot/gnoi_reboot.md | 1 - 1 file changed, 1 deletion(-) diff --git a/doc/gnoi-reboot/gnoi_reboot.md b/doc/gnoi-reboot/gnoi_reboot.md index 378d02ca9d..872d75386f 100644 --- a/doc/gnoi-reboot/gnoi_reboot.md +++ b/doc/gnoi-reboot/gnoi_reboot.md @@ -89,7 +89,6 @@ The reboot request contains a delay parameter, method and subcomponent fields. F * system reboot (method = warm, cold, fast, etc) * optic reboot -* container reboot * etc The immediate short term use case for the reboot backend daemon is to support system warm boot. During warmboot applications will be requested and confirmed to: