Documentation ¶
Index ¶
- type ActivationInfo
- type Deployment
- type Domain
- type EgressService
- type Event
- type EventList
- type EventMobility
- type EventNetworkCharacteristicsUpdate
- type EventOther
- type EventPoasInRange
- type ExternalConfig
- type GpuConfig
- type IngressService
- type NetworkCharacteristics
- type NetworkLocation
- type NodeServiceMaps
- type PhysicalLocation
- type PodStatus
- type PodsStatus
- type Process
- type Release
- type Replay
- type ReplayEvent
- type ReplayFileList
- type ReplayInfo
- type ReplayStatus
- type Scenario
- type ScenarioConfig
- type ScenarioInfo
- type ScenarioList
- type ServiceConfig
- type ServicePort
- type Settings
- type Zone
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ActivationInfo ¶
type ActivationInfo struct { // Replay-file name to execute at deployment time ReplayFileName string `json:"replayFileName,omitempty"` }
Activation information
type Deployment ¶
type Deployment struct { // Latency in ms between domains InterDomainLatency int32 `json:"interDomainLatency,omitempty"` // Latency variation in ms between domains InterDomainLatencyVariation int32 `json:"interDomainLatencyVariation,omitempty"` // The limit of the traffic supported between domains InterDomainThroughput int32 `json:"interDomainThroughput,omitempty"` // Packet lost (in terms of percentage) between domains InterDomainPacketLoss float64 `json:"interDomainPacketLoss,omitempty"` // Key/Value Pair Map (string, string) Meta map[string]string `json:"meta,omitempty"` // Key/Value Pair Map (string, string) UserMeta map[string]string `json:"userMeta,omitempty"` Domains []Domain `json:"domains,omitempty"` }
Network deployment object
type Domain ¶
type Domain struct { // Unique domain ID Id string `json:"id,omitempty"` // Domain name Name string `json:"name,omitempty"` // Domain type Type_ string `json:"type,omitempty"` // Latency in ms between zones within domain InterZoneLatency int32 `json:"interZoneLatency,omitempty"` // Latency variation in ms between zones within domain InterZoneLatencyVariation int32 `json:"interZoneLatencyVariation,omitempty"` // The limit of the traffic supported between zones within the domain InterZoneThroughput int32 `json:"interZoneThroughput,omitempty"` // Packet lost (in terms of percentage) between zones within the domain InterZonePacketLoss float64 `json:"interZonePacketLoss,omitempty"` // Key/Value Pair Map (string, string) Meta map[string]string `json:"meta,omitempty"` // Key/Value Pair Map (string, string) UserMeta map[string]string `json:"userMeta,omitempty"` Zones []Zone `json:"zones,omitempty"` }
Operator domain object
type EgressService ¶
type EgressService struct { // Service name Name string `json:"name,omitempty"` // Multi-Edge service name, if any MeSvcName string `json:"meSvcName,omitempty"` // External node IP address Ip string `json:"ip,omitempty"` // Service port number Port int32 `json:"port,omitempty"` // Service protocol (TCP or UDP) Protocol string `json:"protocol,omitempty"` }
External service exposed internally via specific port
type Event ¶
type Event struct { // Event name Name string `json:"name,omitempty"` // Event type Type_ string `json:"type,omitempty"` EventNetworkCharacteristicsUpdate *EventNetworkCharacteristicsUpdate `json:"eventNetworkCharacteristicsUpdate,omitempty"` EventMobility *EventMobility `json:"eventMobility,omitempty"` EventPoasInRange *EventPoasInRange `json:"eventPoasInRange,omitempty"` EventOther *EventOther `json:"eventOther,omitempty"` }
Event object
type EventList ¶
type EventList struct {
Events []Event `json:"events,omitempty"`
}
Event list object
type EventMobility ¶
type EventMobility struct { // Name of the network element to be updated ElementName string `json:"elementName,omitempty"` // Destination element identifier Dest string `json:"dest,omitempty"` }
Mobility Event object
type EventNetworkCharacteristicsUpdate ¶
type EventNetworkCharacteristicsUpdate struct { // Name of the network element to be updated ElementName string `json:"elementName,omitempty"` // Type of the network element to be updated ElementType string `json:"elementType,omitempty"` // Latency in ms Latency int32 `json:"latency,omitempty"` // Latency variation in ms LatencyVariation int32 `json:"latencyVariation,omitempty"` // Throughput limit Throughput int32 `json:"throughput,omitempty"` // Packet loss percentage PacketLoss float64 `json:"packetLoss,omitempty"` }
Network Characteristics update Event object
type EventOther ¶
type EventOther struct { // Other event string Event string `json:"event,omitempty"` }
Other Event object
type EventPoasInRange ¶
type EventPoasInRange struct { // UE identifier Ue string `json:"ue,omitempty"` PoasInRange []string `json:"poasInRange,omitempty"` }
POAs In Range Event object
type ExternalConfig ¶
type ExternalConfig struct { IngressServiceMap []IngressService `json:"ingressServiceMap,omitempty"` EgressServiceMap []EgressService `json:"egressServiceMap,omitempty"` }
External Process configuration. NOTE: Only valid if 'isExternal' is set.
type GpuConfig ¶
type GpuConfig struct { // Requested GPU type Type_ string `json:"type,omitempty"` // Number of GPUs requested Count int32 `json:"count,omitempty"` }
GPU configuration object
type IngressService ¶
type IngressService struct { // Service name (unique or multi-edge) Name string `json:"name,omitempty"` // Internal service port number Port int32 `json:"port,omitempty"` // Externally-exposed unique service port in range (30000 - 32767) ExternalPort int32 `json:"externalPort,omitempty"` // Service protocol (TCP or UDP) Protocol string `json:"protocol,omitempty"` }
Internal service exposed externally via specific port
type NetworkCharacteristics ¶
type NetworkCharacteristics struct { // Latency in ms Latency int32 `json:"latency,omitempty"` // Latency variation in ms LatencyVariation int32 `json:"latencyVariation,omitempty"` // Throughput limit in Mbps Throughput int32 `json:"throughput,omitempty"` // Packet loss percentage PacketLoss float64 `json:"packetLoss,omitempty"` }
Network characteristics object
type NetworkLocation ¶
type NetworkLocation struct { // Unique network location ID Id string `json:"id,omitempty"` // Network location name Name string `json:"name,omitempty"` // Network location type Type_ string `json:"type,omitempty"` // Latency in ms for all terminal links within network location TerminalLinkLatency int32 `json:"terminalLinkLatency,omitempty"` // Latency variation in ms for all terminal links within network location TerminalLinkLatencyVariation int32 `json:"terminalLinkLatencyVariation,omitempty"` // The limit of the traffic supported for all terminal links within the network location TerminalLinkThroughput int32 `json:"terminalLinkThroughput,omitempty"` // Packet lost (in terms of percentage) for all terminal links within the network location TerminalLinkPacketLoss float64 `json:"terminalLinkPacketLoss,omitempty"` // Key/Value Pair Map (string, string) Meta map[string]string `json:"meta,omitempty"` // Key/Value Pair Map (string, string) UserMeta map[string]string `json:"userMeta,omitempty"` PhysicalLocations []PhysicalLocation `json:"physicalLocations,omitempty"` }
Logical network location object
type NodeServiceMaps ¶
type NodeServiceMaps struct { // Unique external node identifier Node string `json:"node,omitempty"` IngressServiceMap []IngressService `json:"ingressServiceMap,omitempty"` EgressServiceMap []EgressService `json:"egressServiceMap,omitempty"` }
Node-specific mapping of exposed internal & external services
type PhysicalLocation ¶
type PhysicalLocation struct { // Unique physical location ID Id string `json:"id,omitempty"` // Physical location name Name string `json:"name,omitempty"` // Physical location type Type_ string `json:"type,omitempty"` // true: Physical location is external to MEEP false: Physical location is internal to MEEP IsExternal bool `json:"isExternal,omitempty"` NetworkLocationsInRange []string `json:"networkLocationsInRange,omitempty"` // Key/Value Pair Map (string, string) Meta map[string]string `json:"meta,omitempty"` // Key/Value Pair Map (string, string) UserMeta map[string]string `json:"userMeta,omitempty"` Processes []Process `json:"processes,omitempty"` // Latency in ms between the physical location and the network (wired interface, air interface) LinkLatency int32 `json:"linkLatency,omitempty"` // Latency variation in ms between the physical location and the network (wired interface, air interface) LinkLatencyVariation int32 `json:"linkLatencyVariation,omitempty"` // The limit of the traffic supported between the physical location and the network (wired interface, air interface) LinkThroughput int32 `json:"linkThroughput,omitempty"` // Packet lost (in terms of percentage) between the physical location and the network (wired interface, air interface) LinkPacketLoss float64 `json:"linkPacketLoss,omitempty"` }
Physical location object
type PodStatus ¶
type PodStatus struct { // Pod name Name string `json:"name,omitempty"` // Pod namespace Namespace string `json:"namespace,omitempty"` // Pod process name MeepApp string `json:"meepApp,omitempty"` // Pod origin(core, scenario) MeepOrigin string `json:"meepOrigin,omitempty"` // Pod scenario name MeepScenario string `json:"meepScenario,omitempty"` // Pod phase Phase string `json:"phase,omitempty"` // Pod initialized (true/false) PodInitialized string `json:"podInitialized,omitempty"` // Pod ready (true/false) PodReady string `json:"podReady,omitempty"` // Pod scheduled (true/false) PodScheduled string `json:"podScheduled,omitempty"` // Pod unschedulable (true/false) PodUnschedulable string `json:"podUnschedulable,omitempty"` // Pod error message PodConditionError string `json:"podConditionError,omitempty"` // Failed container error message ContainerStatusesMsg string `json:"containerStatusesMsg,omitempty"` // Number of containers that are up NbOkContainers string `json:"nbOkContainers,omitempty"` // Number of total containers in the pod NbTotalContainers string `json:"nbTotalContainers,omitempty"` // Number of container failures leading to pod restarts NbPodRestart string `json:"nbPodRestart,omitempty"` // State that is mapping the kubernetes api state LogicalState string `json:"logicalState,omitempty"` // Pod creation time StartTime string `json:"startTime,omitempty"` }
type PodsStatus ¶
type PodsStatus struct {
PodStatus []PodStatus `json:"podStatus,omitempty"`
}
List of all pods status
type Process ¶
type Process struct { // Unique process ID Id string `json:"id,omitempty"` // Process name Name string `json:"name,omitempty"` // Process type Type_ string `json:"type,omitempty"` // true: process is external to MEEP false: process is internal to MEEP IsExternal bool `json:"isExternal,omitempty"` // Docker image to deploy inside MEEP Image string `json:"image,omitempty"` // Environment variables using the format NAME=\"value\",NAME=\"value\",NAME=\"value\" Environment string `json:"environment,omitempty"` // Arguments to command executable CommandArguments string `json:"commandArguments,omitempty"` // Executable to invoke at container start up CommandExe string `json:"commandExe,omitempty"` ServiceConfig *ServiceConfig `json:"serviceConfig,omitempty"` GpuConfig *GpuConfig `json:"gpuConfig,omitempty"` ExternalConfig *ExternalConfig `json:"externalConfig,omitempty"` // Process status Status string `json:"status,omitempty"` // Chart location for the deployment of the chart provided by the user UserChartLocation string `json:"userChartLocation,omitempty"` // Chart values.yaml file location for the deployment of the chart provided by the user UserChartAlternateValues string `json:"userChartAlternateValues,omitempty"` // Chart supplemental information related to the group (service) UserChartGroup string `json:"userChartGroup,omitempty"` // Key/Value Pair Map (string, string) Meta map[string]string `json:"meta,omitempty"` // Key/Value Pair Map (string, string) UserMeta map[string]string `json:"userMeta,omitempty"` // Latency in ms caused by the application AppLatency int32 `json:"appLatency,omitempty"` // Latency variation in ms caused by the application AppLatencyVariation int32 `json:"appLatencyVariation,omitempty"` // The limit of the traffic supported by the application AppThroughput int32 `json:"appThroughput,omitempty"` // Packet lost (in terms of percentage) caused by the application AppPacketLoss float64 `json:"appPacketLoss,omitempty"` // Identifier used for process placement in AdvantEDGE cluster PlacementId string `json:"placementId,omitempty"` }
Application or service object
type Replay ¶
type Replay struct { // User description of the content of the replay file. Description string `json:"description,omitempty"` Events []ReplayEvent `json:"events,omitempty"` }
ReplayEvents from the Replay-file
type ReplayEvent ¶
type ReplayEvent struct { // Event index Index int32 `json:"index,omitempty"` // Relative time (ms) an event happened since the begining of a replay sequence Time int32 `json:"time,omitempty"` Event *Event `json:"event,omitempty"` }
Replay event object
type ReplayFileList ¶
type ReplayFileList struct {
ReplayFiles []string `json:"replay-files,omitempty"`
}
Replay-file list
type ReplayInfo ¶
type ReplayInfo struct { // Scenario name ScenarioName string `json:"scenarioName,omitempty"` // User description of the replay file Description string `json:"description,omitempty"` }
Scenario information
type ReplayStatus ¶
type ReplayStatus struct { // Name of the replay file currently running ReplayFileRunning string `json:"replayFileRunning,omitempty"` // Index of the last ran event Index int32 `json:"index,omitempty"` // Number of events in the replay file MaxIndex int32 `json:"maxIndex,omitempty"` // Loop mode enables LoopMode bool `json:"loopMode,omitempty"` // Total time remaining for the replay file after last event TimeRemaining int32 `json:"timeRemaining,omitempty"` // Time remaining until the next event for the replay file after last event TimeToNextEvent int32 `json:"timeToNextEvent,omitempty"` }
Replay status object
type Scenario ¶
type Scenario struct { // Scenario version Version string `json:"version,omitempty"` // Unique scenario ID Id string `json:"id,omitempty"` // Unique scenario name Name string `json:"name,omitempty"` // User description of the scenario. Description string `json:"description,omitempty"` Config *ScenarioConfig `json:"config,omitempty"` Deployment *Deployment `json:"deployment,omitempty"` }
Scenario object
type ScenarioConfig ¶
type ScenarioConfig struct { // Visualization configuration Visualization string `json:"visualization,omitempty"` // Other scenario configuration Other string `json:"other,omitempty"` }
Scenario configuration
type ScenarioInfo ¶
type ScenarioInfo struct { // Scenario name Name string `json:"name,omitempty"` }
Scenario information
type ScenarioList ¶
type ScenarioList struct {
Scenarios []Scenario `json:"scenarios,omitempty"`
}
Scenario list
type ServiceConfig ¶
type ServiceConfig struct { // Unique service name Name string `json:"name,omitempty"` // Multi-Edge service name, if any MeSvcName string `json:"meSvcName,omitempty"` Ports []ServicePort `json:"ports,omitempty"` }
Service object
type ServicePort ¶
type ServicePort struct { // Protocol that the application is using (TCP or UDP) Protocol string `json:"protocol,omitempty"` // Port number that the service is listening on Port int32 `json:"port,omitempty"` // External port number on which to expose the application (30000 - 32767) <li>Only one application allowed per external port <li>Scenario builder must configure to prevent conflicts ExternalPort int32 `json:"externalPort,omitempty"` }
Service port object
type Zone ¶
type Zone struct { // Unique zone ID Id string `json:"id,omitempty"` // Zone name Name string `json:"name,omitempty"` // Zone type Type_ string `json:"type,omitempty"` NetChar *NetworkCharacteristics `json:"netChar,omitempty"` // **DEPRECATED** As of release 1.3.0, no longer supported InterFogLatency int32 `json:"interFogLatency,omitempty"` // **DEPRECATED** As of release 1.3.0, no longer supported InterFogLatencyVariation int32 `json:"interFogLatencyVariation,omitempty"` // **DEPRECATED** As of release 1.3.0, no longer supported InterFogThroughput int32 `json:"interFogThroughput,omitempty"` // **DEPRECATED** As of release 1.3.0, no longer supported InterFogPacketLoss float64 `json:"interFogPacketLoss,omitempty"` // **DEPRECATED** As of release 1.3.0, no longer supported InterEdgeLatency int32 `json:"interEdgeLatency,omitempty"` // **DEPRECATED** As of release 1.3.0, no longer supported InterEdgeLatencyVariation int32 `json:"interEdgeLatencyVariation,omitempty"` // **DEPRECATED** As of release 1.3.0, no longer supported InterEdgeThroughput int32 `json:"interEdgeThroughput,omitempty"` // **DEPRECATED** As of release 1.3.0, no longer supported InterEdgePacketLoss float64 `json:"interEdgePacketLoss,omitempty"` // **DEPRECATED** As of release 1.3.0, replaced by netChar latency EdgeFogLatency int32 `json:"edgeFogLatency,omitempty"` // **DEPRECATED** As of release 1.3.0, replaced by netChar latencyVariation EdgeFogLatencyVariation int32 `json:"edgeFogLatencyVariation,omitempty"` // **DEPRECATED** As of release 1.3.0, replaced by netChar throughput EdgeFogThroughput int32 `json:"edgeFogThroughput,omitempty"` // **DEPRECATED** As of release 1.3.0, replaced by netChar packetLoss EdgeFogPacketLoss float64 `json:"edgeFogPacketLoss,omitempty"` // Key/Value Pair Map (string, string) Meta map[string]string `json:"meta,omitempty"` // Key/Value Pair Map (string, string) UserMeta map[string]string `json:"userMeta,omitempty"` NetworkLocations []NetworkLocation `json:"networkLocations,omitempty"` }
Logical zone (MEC network) object
Source Files ¶
- model_activation_info.go
- model_deployment.go
- model_domain.go
- model_egress_service.go
- model_event.go
- model_event_list.go
- model_event_mobility.go
- model_event_network_characteristics_update.go
- model_event_other.go
- model_event_poas_in_range.go
- model_external_config.go
- model_gpu_config.go
- model_ingress_service.go
- model_network_characteristics.go
- model_network_location.go
- model_node_service_maps.go
- model_physical_location.go
- model_pod_status.go
- model_pods_status.go
- model_process.go
- model_release.go
- model_replay.go
- model_replay_event.go
- model_replay_file_list.go
- model_replay_info.go
- model_replay_status.go
- model_scenario.go
- model_scenario_config.go
- model_scenario_info.go
- model_scenario_list.go
- model_service_config.go
- model_service_port.go
- model_settings.go
- model_zone.go