ucloud_common/docs/ucloud-general-working (cur...

56 lines
1.6 KiB
Plaintext

digraph G{
rankdir=TB;
start [shape=point];
ucloud_api [style=filled,color=white];
start -> ucloud_api [label="User Requests to Start VM 'vm1'"];
subgraph cluster_common {
style=filled;
color=lightgrey;
RequestQueue [shape=rect, style=filled, color=plum1];
}
subgraph cluster_api {
style=filled;
color=lightgrey;
node [style=filled,color=white];
ucloud_api -> RequestQueue [label="RequestQueue.append(Request) "]
}
subgraph cluster_scheduler {
rankdir=RL;
style=filled;
color=lightgrey;
node [style=filled,color=white];
label="ucloud-scheduler";
PENDING_REQUESTS [shape=rect, color=peachpuff]
RequestQueue -> FindHost [label="Get StartVM Requests Only"];
FindHost -> PENDING_REQUESTS [constraint=false, color=red, label="append this requests to pending requests"];
FindHost -> RequestQueue [label="RequestQueue.append(RunVmRequest(vm='vm1'))", color=darkgreen];
PENDING_REQUESTS -> FindHost [label="On Timeout Event.\n Try to fulfil the request again"]
}
subgraph cluster_vm {
rankdir=RL;
style=filled;
color=lightgrey;
node [style=filled,color=white];
label="ucloud-vm";
VmTrash [shape=point, color=red]
RequestQueue -> HandleRequest [label="Get Requests for VM Operations"]
HandleRequest -> Running [label="RunVMRequest", color=darkgreen]
HandleRequest -> Stopped [label="ShutdownVMRequest", color=darkgreen]
HandleRequest -> VmTrash [constraint=false, color=red, label="Put error message into VM's log"]
}
}