[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-8272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14354625#comment-14354625
 ] 

ASF subversion and git services commented on CLOUDSTACK-8272:
-------------------------------------------------------------

Commit 3951ab00e25458c9c804b190ae7c7758f57985a3 in cloudstack's branch 
refs/heads/concurrent-password-server from [[email protected]]
[ https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;h=3951ab0 ]

CLOUDSTACK-8272: Python based file-lock free password server implementation

- VRs are single CPU, so Threading based implementation favoured than Forking 
based
- Implements a Python based password server that does not use file based locks
- Saving password mechanism is provided by using secure token only to VR 
(localhost)
- Old serve_password implementation is removed
- Runs with Python 2.6+ with no external dependencies
- Locks used within threads for extra safety

Signed-off-by: Rohit Yadav <[email protected]>


> Improve password serving script by making it non-blocking non-locking 
> concurrent server
> ---------------------------------------------------------------------------------------
>
>                 Key: CLOUDSTACK-8272
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-8272
>             Project: CloudStack
>          Issue Type: Improvement
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>    Affects Versions: 4.5.0, 4.6.0, 4.4.2, 4.3.2
>            Reporter: Rohit Yadav
>            Assignee: Rohit Yadav
>              Labels: virtualrouter
>
> The current reset password server serves one user VM at a time, uses a global 
> lock per VR and slows up VM starting process for a VM that is created by a 
> template with reset password scripts. No only reset password option, but when 
> the VM starts for the first time this happens. The way it serves password 
> uses forking the process/scripts which eats up resources in both process 
> table and memory. For a concurrent launch of 30+ VM the VR hangs/fails. 
> Possible solution in the past includes increase the VR memory.
> The solution would be to implement a concurrent single-process multi-threaded 
> password server that works both in basic/isolated network and in VPCs. It's 
> hard to do this in bash, so we can either implement a backward compatible 
> python script that replaces the present bash script, or a compiled program 
> (like a native tool) in C/C++/Go/Rust.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to