Cisco-IOS-XE-app-hosting-oper

This module contains a collection of YANG definitions for monitoring app-hosting in a Network Element. Copyright (c) 2016-2020 b...

  • Version: 2021-07-01

    Cisco-IOS-XE-app-hosting-oper@2021-07-01


    
      module Cisco-IOS-XE-app-hosting-oper {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XE-app-hosting-oper";
    
        prefix app-hosting-ios-xe-oper;
    
        import ietf-inet-types {
          prefix inet;
        }
        import ietf-yang-types {
          prefix yang;
        }
        import cisco-semver {
          prefix cisco-semver;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
    
         Postal: 170 W Tasman Drive
         San Jose, CA 95134
    
         Tel: +1 1800 553-NETS
    
         E-mail: cs-yang@cisco.com";
    
        description
          "This module contains a collection of YANG definitions for
         monitoring app-hosting in a Network Element.
         Copyright (c) 2016-2020 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2021-07-01" {
          description
            "- Added support for platform resource profiles.
           - Added MAC address of Internal Ethernet Out-of-band Channel interface.
           - Added the reserved CPU resource shown in 'unit'.";
          reference
            "3.5.0";
    
        }
    
        revision "2021-03-01" {
          description
            "- Added support for IOX enablement.";
          reference
            "3.4.0";
    
        }
    
        revision "2020-11-01" {
          description
            "- Added static IPV6 support.
           - Added CPU percent that is relative to IOX total CPU units.
           - Added URL package path
           - Added support for docker package runtime options";
          reference
            "3.3.0";
    
        }
    
        revision "2019-05-01" {
          description
            "- Add network-name and some docker-related operational details.
           - Added semantic version";
          reference
            "3.2.0";
    
        }
    
        revision "2018-11-29" {
          description
            "- Add option to indicate if activation of an application is allowed or not
           - Cleaned up spelling errors in descriptions.
           - Add global resources.
           - Add DMI notification event.";
          reference
            "3.1.0";
    
        }
    
        revision "2018-06-14" {
          description
            "Rename virtual service to app-hosting";
          reference
            "3.0.0";
    
        }
    
        revision "2018-02-01" {
          description
            "Add owner details to application";
          reference
            "2.1.0";
    
        }
    
        revision "2017-09-25" {
          description
            "Add process details and change network utilization and storage utilization lists";
          reference
            "2.0.0";
    
        }
    
        revision "2017-02-07" {
          description "Initial revision";
          reference
            "1.0.0";
    
        }
    
        cisco-semver:module-version "3.5.0";
        cisco-semver:module-version "3.4.0";
        cisco-semver:module-version "3.3.0";
        cisco-semver:module-version "3.2.0";
        cisco-semver:module-version "3.1.0";
        cisco-semver:module-version "3.0.0";
        cisco-semver:module-version "2.1.0";
        cisco-semver:module-version "2.0.0";
        cisco-semver:module-version "1.0.0";
    
        typedef iox-pkg-policy {
          type enumeration {
            enum "iox-pkg-policy-invalid" {
              value 0;
              description
                "Package policy is invalid";
            }
            enum "iox-pkg-policy-none" {
              value 1;
              description
                "Package policy does not set";
            }
            enum "iox-pkg-policy-cisco" {
              value 2;
              description
                "Package policy is signed by Cisco";
            }
            enum "iox-pkg-policy-third-party" {
              value 3;
              description
                "Package policy is signed by third party";
            }
            enum "iox-pkg-policy-unsigned" {
              value 4;
              description
                "Package policy is unsigned";
            }
          }
          description "IOX package policy";
        }
    
        typedef notification-event-severity {
          type enumeration {
            enum "critical" {
              value 0;
              description "Severity critical";
            }
            enum "major" {
              value 1;
              description "Severity major";
            }
            enum "minor" {
              value 2;
              description "Severity minor";
            }
          }
          description
            "Notification event severity";
        }
    
        typedef notification-event-type {
          type enumeration {
            enum "im-iox-enable" {
              value 0;
              description "IOX is enabled";
            }
            enum "im-app-install" {
              value 1;
              description
                "Application is installed";
            }
            enum "im-app-uninstall" {
              value 2;
              description
                "Application is uninstalled";
            }
            enum "im-app-start" {
              value 3;
              description
                "Application is started";
            }
            enum "im-app-no-start" {
              value 4;
              description
                "Application is stopped";
            }
            enum "im-app-unsolicited" {
              value 5;
              description
                "Application is unsolicited";
            }
            enum "im-app-activate" {
              value 6;
              description
                "Application is activated";
            }
            enum "im-app-deactivate" {
              value 7;
              description
                "Application is deactivated";
            }
          }
          description "Notification event type";
        }
    
        typedef notification-app-status {
          type enumeration {
            enum "im-app-pass" {
              value 0;
              description "Status pass";
            }
            enum "im-app-fail" {
              value 1;
              description "Status failed";
            }
          }
          description
            "Notification application status";
        }
    
        typedef notification-app-state {
          type enumeration {
            enum "im-state-deployed" {
              value 0;
              description
                "Application is in deployed state";
            }
            enum "im-state-activated" {
              value 1;
              description
                "Application is in activated state";
            }
            enum "im-state-running" {
              value 2;
              description
                "Application is in running state";
            }
            enum "im-state-stopped" {
              value 3;
              description
                "Application is in stopped state";
            }
            enum "im-state-uninstalled" {
              value 4;
              description
                "Application is in uninstalled state";
            }
          }
          description
            "Notification application state";
        }
    
        container app-hosting-oper-data {
          config false;
          description
            "Information on all applications";
          list app {
            key "name";
            description "List of applications";
            leaf name {
              type string;
              description "Virtual service name";
            }
    
            container details {
              description
                "Virtual service details";
              leaf state {
                type string;
                description
                  "State of the virtual service";
              }
    
              container package-information {
                description
                  "Virtual service packaging information";
                leaf name {
                  type string;
                  description "Package name";
                }
    
                leaf path {
                  type string;
                  description "Package path";
                }
    
                container application {
                  description
                    "Application details";
                  leaf name {
                    type string;
                    description
                      "Application name";
                  }
    
                  leaf installed-version {
                    type string;
                    description
                      "Application version";
                  }
    
                  leaf description {
                    type string;
                    description
                      "Application description";
                  }
    
                  leaf type {
                    type string;
                    description
                      "Application type";
                  }
    
                  leaf owner {
                    type string;
                    description
                      "Which process creates the application";
                  }
    
                  leaf activation-allowed {
                    type boolean;
                    description
                      "Does platform allow the activation of the application";
                  }
    
                  leaf author {
                    type string;
                    description
                      "Application author";
                  }
                }  // container application
    
                container signing {
                  description
                    "Key signing details";
                  leaf key-type {
                    type string;
                    description
                      "Signed key type";
                  }
    
                  leaf method {
                    type string;
                    description
                      "Method the key was signed";
                  }
                }  // container signing
    
                container licensing {
                  description
                    "Licensing details";
                  leaf name {
                    type string;
                    description "License name";
                  }
    
                  leaf version {
                    type string;
                    description
                      "License version";
                  }
                }  // container licensing
    
                leaf url-path {
                  type string;
                  description "URL package path";
                }
              }  // container package-information
    
              container detailed-guest-status {
                description
                  "Guest status details";
                container processes {
                  description
                    "List of all processes";
                  leaf name {
                    type string;
                    description "Process name";
                  }
    
                  leaf status {
                    type string;
                    description "Process status";
                  }
    
                  leaf pid {
                    type string;
                    description "Process ID";
                  }
    
                  leaf uptime {
                    type string;
                    description "Process uptime";
                  }
    
                  leaf memory {
                    type string;
                    description
                      "Amount of process memory";
                  }
                }  // container processes
              }  // container detailed-guest-status
    
              leaf activated-profile-name {
                type string;
                description
                  "Activated resource profile name";
              }
    
              container resource-reservation {
                description
                  "Resource reservation details";
                leaf disk {
                  type uint64;
                  description
                    "Amount of reserved disk space in MB";
                }
    
                leaf memory {
                  type uint64;
                  description
                    "Amount of reserved memory in MB";
                }
    
                leaf cpu {
                  type uint64;
                  description
                    "Amount of reserved CPU in unit";
                }
    
                leaf vcpu {
                  type uint64;
                  description
                    "Amount of reserved VCPU in unit";
                }
    
                leaf cpu-percent {
                  type uint8;
                  description
                    "Amount of reserved CPU in percent";
                }
              }  // container resource-reservation
    
              leaf guest-interface {
                type string;
                description
                  "Guest interface name";
              }
    
              container resource-admission {
                description
                  "Resources allocated for the virtual service";
                leaf state {
                  type string;
                  description
                    "Status of the resource allocation";
                }
    
                leaf disk-space {
                  type string;
                  description
                    "Amount of disk space allocated for the virtual service in MB";
                }
    
                leaf memory {
                  type string;
                  description
                    "Amount of memory allocated for the virtual service in MB";
                }
    
                leaf cpu {
                  type uint64;
                  description
                    "Percentage of CPU allocated for the virtual-service in unit";
                }
    
                leaf vcpus {
                  type string;
                  description
                    "Amount of VCPUs allocated for the virtual service";
                }
              }  // container resource-admission
    
              leaf docker-run-opts {
                type string;
                description
                  "Activated Docker Run-Time Options";
              }
    
              leaf command {
                type string;
                description
                  "Docker Run-time command";
              }
    
              leaf entry-point {
                type string;
                description
                  "Docker Run-Time entry point";
              }
    
              leaf health-status {
                type uint32;
                description
                  "Docker container health status";
              }
    
              leaf last-health-probe-error {
                type string;
                description
                  "Docker Last Health probe Error";
              }
    
              leaf last-health-probe-output {
                type string;
                description
                  "Docker Last Health probe Output";
              }
    
              leaf pkg-run-opt {
                type string;
                description
                  "Docker package runtime options";
              }
    
              leaf ieobc-mac-addr {
                type yang:mac-address;
                description
                  "MAC address of Internal Ethernet Out-of-band Channel interface";
              }
            }  // container details
    
            container utilization {
              description
                "Virtual service resource utilization details";
              leaf name {
                type string;
                description
                  "Name of the virtual service";
              }
    
              container cpu-util {
                description
                  "CPU utilization information";
                leaf requested-application-util {
                  type uint64;
                  description
                    "Amount of requested CPU utilization by the virtual service";
                }
    
                leaf actual-application-util {
                  type uint64;
                  description
                    "Percentage of CPU actual utilization for the virtual service";
                }
    
                leaf cpu-state {
                  type string;
                  description
                    "State of the CPU utilization for the virtual-service";
                }
              }  // container cpu-util
    
              container memory-util {
                description
                  "Memory utilization information";
                leaf memory-allocation {
                  type string;
                  description
                    "Amount of memory allocated for the virtual service in MB";
                }
    
                leaf memory-used {
                  type string;
                  description
                    "Amount of used memory for the virtual service in KB";
                }
              }  // container memory-util
            }  // container utilization
    
            container network-utils {
              description
                "Virtual service network utilization details";
              list network-util {
                key "name";
                description
                  "A list of network utilization details";
                leaf name {
                  type string;
                  description
                    "Name of the network used for the virtual service";
                }
    
                leaf alias {
                  type string;
                  description
                    "Alias of the network used by the virtual service";
                }
    
                leaf rx-packets {
                  type uint64;
                  description
                    "Number of packets received by the virtual service";
                }
    
                leaf rx-bytes {
                  type uint64;
                  description
                    "Number of octets received by the virtual service";
                }
    
                leaf rx-errors {
                  type uint64;
                  description
                    "Number of RX errors by the virtual service";
                }
    
                leaf tx-packets {
                  type uint64;
                  description
                    "Number of packets transmitted by the virtual service";
                }
    
                leaf tx-bytes {
                  type uint64;
                  description
                    "Number of octets transmitted by the virtual service";
                }
    
                leaf tx-errors {
                  type uint64;
                  description
                    "Number of TX errors by the virtual service";
                }
              }  // list network-util
            }  // container network-utils
    
            container storage-utils {
              description
                "Virtual service storage utilization details";
              list storage-util {
                key "name";
                description
                  "List of storage utilization details";
                leaf name {
                  type string;
                  description
                    "Name of the storage device used for the virtual service";
                }
    
                leaf alias {
                  type string;
                  description
                    "Alias of the storage device used by the virtual service";
                }
    
                leaf rd-bytes {
                  type uint64;
                  description
                    "Number of bytes read by the virtual service";
                }
    
                leaf rd-requests {
                  type uint64;
                  description
                    "Number of read requests made by the virtual service";
                }
    
                leaf errors {
                  type uint64;
                  description
                    "Number of storage error seen by the virtual service";
                }
    
                leaf wr-bytes {
                  type uint64;
                  description
                    "Number of bytes written by the virtual service";
                }
    
                leaf wr-requests {
                  type uint64;
                  description
                    "Number of write requests made by the virtual service";
                }
    
                leaf capacity {
                  type uint64;
                  description
                    "Storage capacity in 1000 blocks";
                }
    
                leaf available {
                  type string;
                  description
                    "Available storage in 1000 blocks";
                }
    
                leaf used {
                  type uint64;
                  description
                    "Used storage in 1000 blocks";
                }
    
                leaf usage {
                  type string;
                  description
                    "Percentage of storage capacity used by the virtual service";
                }
              }  // list storage-util
            }  // container storage-utils
    
            container processes {
              description
                "Virtual service process details";
              list process {
                key "name";
                description
                  "List of process details";
                leaf name {
                  type string;
                  description "Process name";
                }
    
                leaf status {
                  type string;
                  description "Process status";
                }
    
                leaf pid {
                  type string;
                  description "Process ID";
                }
    
                leaf uptime {
                  type string;
                  description "Process uptime";
                }
    
                leaf memory {
                  type string;
                  description
                    "Amount of process memory";
                }
              }  // list process
            }  // container processes
    
            container attached-devices {
              description
                "Virtual service attached device details";
              list attached-device {
                key "name";
                description
                  "A list of attached device details";
                leaf name {
                  type string;
                  description
                    "Attached device name";
                }
    
                leaf type {
                  type string;
                  description
                    "Attached device type";
                }
    
                leaf alias {
                  type string;
                  description
                    "Attached device alias";
                }
              }  // list attached-device
            }  // container attached-devices
    
            container network-interfaces {
              description
                "Virtual service network interface details";
              list network-interface {
                key "mac-address";
                description
                  "A list of network interface details";
                leaf mac-address {
                  type yang:mac-address;
                  description
                    "MAC address for the network interface";
                }
    
                leaf attached-interface {
                  type string;
                  description
                    "Attached interface name";
                }
    
                leaf ipv4-address {
                  type inet:ipv4-address;
                  description
                    "IPv4 address for the network interface";
                }
    
                leaf network-name {
                  type string;
                  description
                    "Name of the network";
                }
    
                leaf ipv6-address {
                  type inet:ipv6-address;
                  description
                    "IPv6 address for the network interface";
                }
              }  // list network-interface
            }  // container network-interfaces
    
            container guest-routes {
              description
                "Virtual service guest route details";
              list guest-route {
                key "route";
                description
                  "List of guest routes for a guest interface";
                leaf route {
                  type string;
                  description
                    "Guest route of the guest interface";
                }
              }  // list guest-route
            }  // container guest-routes
    
            list plfm-res-prof {
              key "name";
              description
                "Platform resource profiles";
              leaf name {
                type string;
                description "Profile name";
              }
    
              leaf cpu {
                type uint64;
                units "CPU unit";
                description
                  "Amount of reserved CPU";
              }
    
              leaf memory {
                type uint64;
                units "megabytes";
                description
                  "Amount of reserved memory";
              }
    
              leaf disk {
                type uint64;
                units "megabytes";
                description
                  "Amount of reserved disk space";
              }
            }  // list plfm-res-prof
    
            leaf pkg-policy {
              type iox-pkg-policy;
              description
                "Application package policy type";
            }
          }  // list app
    
          list app-resources {
            key "name";
            description "Global resources info";
            leaf name {
              type string;
              description "global resources";
            }
    
            list cpu {
              key "name";
              description "A list of CPU types";
              leaf name {
                type string;
                description "CPU type";
              }
    
              leaf quota {
                type uint32;
                units "percentage";
                description
                  "Amount of total system reserved CPU";
              }
    
              leaf available {
                type uint32;
                units "percentage";
                description
                  "Amount of total system available CPU";
              }
    
              leaf quota-unit {
                type uint64;
                units "unit";
                description
                  "Amount of total system reserved CPU units";
              }
    
              leaf available-unit {
                type uint64;
                units "unit";
                description
                  "Amount of total system available CPU units";
              }
            }  // list cpu
    
            list memory {
              key "name";
              description
                "A list of memory types";
              leaf name {
                type string;
                description "Memory type";
              }
    
              leaf quota {
                type uint32;
                units "MB";
                description
                  "Amount of reserved memory in MB";
              }
    
              leaf available {
                type uint32;
                units "MB";
                description
                  "Amount of available memory in MB";
              }
            }  // list memory
    
            list storage-device {
              key "name";
              description
                "A list of storage device types";
              leaf name {
                type string;
                description
                  "Storage device name";
              }
    
              leaf quota {
                type uint32;
                units "MB";
                description
                  "Amount of reserved storage space";
              }
    
              leaf available {
                type uint32;
                units "MB";
                description
                  "Amount of available storage space";
              }
            }  // list storage-device
          }  // list app-resources
    
          list app-notifications {
            key "name";
            description "Event notification";
            leaf name {
              type string;
              description "Event name";
            }
    
            leaf timestamp {
              type yang:date-and-time;
              description "Event timestamp";
            }
    
            leaf severity-level {
              type notification-event-severity;
              description "Event severity";
            }
    
            leaf host-name {
              type string;
              description "Host name";
            }
    
            leaf vrf-name {
              type string;
              description "Interface vrf name";
            }
    
            leaf app-id {
              type string;
              description "Application name";
            }
    
            leaf system-ip {
              type inet:ip-address;
              description "Host IP";
            }
    
            leaf ev-type {
              type notification-event-type;
              description "Event type";
            }
    
            leaf status {
              type notification-app-status;
              description "Event status";
            }
    
            leaf message {
              type string;
              description "Event message";
            }
    
            leaf app-state {
              type notification-app-state;
              description "Event state";
            }
          }  // list app-notifications
    
          container app-globals {
            presence "app-globals";
            description
              "Global app-hosting information";
            leaf iox-enabled {
              type boolean;
              description "Is IOX enabled";
            }
          }  // container app-globals
        }  // container app-hosting-oper-data
      }  // module Cisco-IOS-XE-app-hosting-oper
    

© 2023 YumaWorks, Inc. All rights reserved.