From 9d1ec756fd959b0ed4eb35ea17fcba45bd79fcbe Mon Sep 17 00:00:00 2001 From: tierno Date: Wed, 9 Nov 2016 07:13:35 +0000 Subject: [PATCH] Feature allow concurrent access to VIMs Signed-off-by: tierno --- Release3/allow_concurrent_access_to_VIMs.md | 40 +++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Release3/allow_concurrent_access_to_VIMs.md diff --git a/Release3/allow_concurrent_access_to_VIMs.md b/Release3/allow_concurrent_access_to_VIMs.md new file mode 100644 index 0000000..80f5040 --- /dev/null +++ b/Release3/allow_concurrent_access_to_VIMs.md @@ -0,0 +1,40 @@ +# Allow concurrent access to VIMs # + +## Proposer ## +- Alfonso Tierno (Telefonica) +- Gerardo Garcia (Telefonica) +- Francisco-Javier Ramon (Telefonica) + +## Type ## +**Feature** + +## Target MDG/TF ## +RO + +## Description ## +Currently, OSM does not support concurrent actions over more than one +datacenter. That becomes even more problematic when the response time in one of +VIMs is really long or when there is no response at all (e.g. because of a communication problem), since it affects the operations in the rest of sites as well. + +In order to solve this issue, it is required to enable the support of +asynchronous operations in OSM components. + +## Demo or definition of done ## +Check that several deployments over the different datacenters can be done in parallel. + +## REQUIREMENTS ## +( Implementation details ) +At RO: +- New thread per VIM/credential (in the future a pool of threads to use uppon necessity) + - anwers asynchronously and operates to VIM using the current vimconnector + - works both with synchronous and asynchronous VIM operations + - caches in memory VIM information: VMs, images,... periodically refreshed +- vimconnector changes: + - Class is created/destroyed every time needed. As before + - Constructor will receive a new python dict variable called persisten_info={} + - All modifications over this inside the class, available next time class is created + - Can be used for store login information, tokens, etc. + - Only if needed it can be stored at database + - New function for checking if VIM address and credentials are ok. "check_credentials()" + - Return None if ok, or raises an exception on error + - Remove this cheks from vimconnector constructor -- 2.17.1