56 lines
1.6 KiB
Plaintext
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"]
|
|
}
|
|
|
|
} |