From 5286337d9b876c9834e063d3a8d738bfc58e4aa1 Mon Sep 17 00:00:00 2001 From: Simon Crowle <sgc@it-innovation.soton.ac.uk> Date: Wed, 4 Apr 2018 16:52:49 +0100 Subject: [PATCH] Updates configuration state modelling methodology and write-up Removes initial write up from README and puts into monitoring.md --- README.md | 48 +------------------------------ docs/image/configStateFlow.png | Bin 0 -> 18325 bytes docs/monitoring.md | 50 +++++++++++++++++++++++++++++++++ 3 files changed, 51 insertions(+), 47 deletions(-) create mode 100644 docs/image/configStateFlow.png diff --git a/README.md b/README.md index 8948957..0d9dbc7 100644 --- a/README.md +++ b/README.md @@ -119,50 +119,4 @@ If pytest is not installed, an easy solution is to use the Python Package Index `sudo apt-get install python3-pip` -`pip3 install pytest` - -#### Configuration status modelling and monitoring - -FLAME _endpoints_ (VMs created and managed by the SFEMC) and media service _media components_ (processes that realise the execution of the media service) both undergo changes in configuration state during the lifetime of a media service's deployment. Observations of these state changes are recorded in the CLMC under named measurement sets, for example 'endpoint_config' and '\<media component name\>_config' for endpoint and media component labels respectively. In each case, all recordable states of the endpoint/media component are enumerated as columns within the measurement set (see respective state models below for details). - -Observation of these states will be performed by a third party - for example, a Telegraf plugin will continuously __report__ on the state of an NGINX service to the CLMC using a _fixed_ interval (say 10 seconds). During this _reporting_ period, the actual state of the NGINX service will be sampled (polled) by the plugin several times (say 10 each second). During any reporting period, the NGINX service _may_ transition from one state to another: - -| State observation # | State | -| --- | --- | -| 1 | stopped | -| 2 | stopped | -| 3 | stopped | -| 4 | stopped | -| 5 | starting | -| 6 | starting | -| 7 | starting | -| 8 | starting | -| 9 | starting | -| 10 | starting | - -_Above: example observations within a single reporting period of a media component configuration state_ - -Therefore each report will include for each state: - -* The total time in the state for the reporting period -* The avarage time in the state for the reporting period - -##### Endpoint configuration state model - - -##### Media component configuration state model - -A media component configuration state model consists of the following states: - -* stopped -* starting [transitional] -* running -* stopping [transitional] - -An example measurement row for a media component configuration states is below: - -| tags | stopped | avg_stopped | starting | avg_starting | running | avg_running | stopping | avg_stopping | time | -| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | -| \<global tags...\> | 0 | 0 | 4 | 0.4 | 6 | 0.6 | 0.0 | 0.0 | 0 | - -In this example, the _reporting period_ is 10 seconds and with an observation rate of 1/second; the observed states were 'stopped' (4 observations) and 'starting' (6 observations). \ No newline at end of file +`pip3 install pytest` \ No newline at end of file diff --git a/docs/image/configStateFlow.png b/docs/image/configStateFlow.png new file mode 100644 index 0000000000000000000000000000000000000000..1916e8cac5e9eca7156c1f6fafdbb7fe0805aab7 GIT binary patch literal 18325 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 literal 0 HcmV?d00001 diff --git a/docs/monitoring.md b/docs/monitoring.md index e116d73..dd253cc 100644 --- a/docs/monitoring.md +++ b/docs/monitoring.md @@ -497,6 +497,56 @@ NAP service request and response metrics tbd +## Configuration status modelling and monitoring + +FLAME _endpoints_ (VMs created and managed by the SFEMC) and media service _media components_ (processes that realise the execution of the media service) both undergo changes in configuration state during the lifetime of a media service's deployment. Observations of these state changes are recorded in the CLMC under named measurement sets, for example 'endpoint_config' and '\<media component name\>_config' for endpoint and media component labels respectively. In each case, all recordable states of the endpoint/media component are enumerated as columns within the measurement set (see respective state models below for details). + +> +> Side note: a few definitions +> +> 'EP' - Endpoint: a VM created and managed by the SFEMC +> 'MC' - Media component: a process that realizes a part or the whole of a media service +> 'Sampling period' - the time elapsed before Telegraf reports (plugin generated) metrics to the CLMC +> 'Completed state' - a state that has been entered into and then exited +> 'Current state' - a state that has been entered into but not yet exited +> 'MST' - Mean state time: the sum of each time taken by each completed state of type 'X' divided by the number of completed state 'X's; i.e: +> +>```math +> meanStateTime = \frac{\sum(startTimeOfState - endTimeOfState)}{numberOfTimesInState} +>``` +> + +Observation of EP or MC states will be performed by a Telegraf plugin. For example, a Telegraf plugin could periodically __report__ on the state of an NGINX process to the CLMC at a _fixed_ time interval (say 10 seconds). In between these times (the _sampling period_) the Telegraf plugin will sample (or 'poll') the state of the EP or MC several times (say 10 each second). Note that during any sampling period, the EP or MC _may_ transition from one state to another, as a simple example: + + + +_Above: example observations within a two sampling periods for a MC configuration state_ + +In the example provided above a MC moves through several states, finishing in a stopped state. During each sampling period, the total time in observed states is measured and for those that are _completed states_ a sum of all the time and the average time for that state is recorded. For any state that has not been observed during the sample period, the sum and average values will be recorded as zero. For a state that has not yet completed, this state will be considered as the 'current state' and the length of time in this state increases and does so continuously, over multiple sample periods if necessary, until it exits. Finally, if a state completes directly after sample period [1] ends and a new state begins before the start of the next sample period [2], then the previous current state from period [1] should be recorded as _completed_ as part period [2]'s report. + + +##### Endpoint configuration state model + + +##### Media component configuration state model + +A media component configuration state model consists of the following states: + +* stopped +* starting [transitional] +* running +* stopping [transitional] + +An example (based the figure above) of some measurement rows for a media component configuration states is below: + +| global tags | current_state (tag) | current_state_time | stopped_sum | stopped_mst | starting_sum | starting_mst | running_sum | running_mst | stopping_sum | stopping_mst | time | +| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | +| ... | starting | 3 | 5 | 2.5 | 2 | 2 | 0 | 0 | 0 | 0 | ... | +| ... | running | 8 | 0 | 0 | 5 | 5 | 0 | 0 | 0 | 0 | ... | +| ... | stopped | 5 | 0 | 0 | 0 | 0 | 9 | 9 | 4 | 4 | ... | +| ... | starting | 10 | 5 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | ... | + + ## Media Service Measurements Media service measurements measure the configuration, usage and performance of media service instances deployed by the platform. -- GitLab