Feature allow concurrent access to VIMs 45/645/6
authortierno <alfonso.tiernosepulveda@telefonica.com>
Wed, 9 Nov 2016 07:13:35 +0000 (07:13 +0000)
committergarciadeblas <gerardo.garciadeblas@telefonica.com>
Mon, 30 Nov 2020 11:58:37 +0000 (12:58 +0100)
Signed-off-by: tierno <alfonso.tiernosepulveda@telefonica.com>
Release3/allow_concurrent_access_to_VIMs.md [new file with mode: 0644]

diff --git a/Release3/allow_concurrent_access_to_VIMs.md b/Release3/allow_concurrent_access_to_VIMs.md
new file mode 100644 (file)
index 0000000..80f5040
--- /dev/null
@@ -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