mirror of
https://github.com/OpenNebula/one.git
synced 2025-01-13 13:17:39 +03:00
331 lines
12 KiB
Plaintext
331 lines
12 KiB
Plaintext
|
|
|
|
digraph OpenNebula {
|
|
graph [
|
|
nodesep=0.3,
|
|
ratio=0.6,
|
|
pad=0.5,
|
|
//concentrate=true,
|
|
];
|
|
|
|
node [fontname="Helvetica"];
|
|
edge [fontname="Menlo"];
|
|
|
|
user [
|
|
fillcolor="black",
|
|
style="filled", shape="box",
|
|
fontcolor="white", fontsize= "24.0"];
|
|
|
|
ANY [ shape="box" ];
|
|
"ANY \\ {stopped,undeployed,done}" [ shape="box" ];
|
|
|
|
running [ width = 2.5, height = 1 ]
|
|
|
|
subgraph {
|
|
rank = min;
|
|
user
|
|
}
|
|
subgraph {
|
|
rank = same;
|
|
suspended;
|
|
stopped;
|
|
undeployed;
|
|
poweroff;
|
|
color="white"
|
|
}
|
|
subgraph {
|
|
rank = same;
|
|
boot;
|
|
boot_stopped;
|
|
boot_undeploy;
|
|
boot_suspended;
|
|
boot_unknown;
|
|
boot_poweroff;
|
|
boot_migrate;
|
|
boot_failure;
|
|
boot_migrate_failure;
|
|
boot_undeploy_failure, boot_stopped_failure;
|
|
color="white"
|
|
}
|
|
subgraph {
|
|
rank = same;
|
|
running;
|
|
unknown;
|
|
color="white"
|
|
}
|
|
subgraph {
|
|
rank = same;
|
|
pending;
|
|
hold;
|
|
color="white"
|
|
}
|
|
subgraph {
|
|
rank = same;
|
|
prolog;
|
|
prolog_failure;
|
|
prolog_resume;
|
|
prolog_resume_failure;
|
|
prolog_migrate;
|
|
prolog_migrate_failure;
|
|
prolog_migrate_poweroff;
|
|
prolog_migrate_poweroff_failure;
|
|
prolog_migrate_suspend;
|
|
prolog_migrate_suspend_failure;
|
|
prolog_undeploy;
|
|
prolog_undeploy_failure;
|
|
prolog_migrate_unknown;
|
|
prolog_migrate_unknown_failure;
|
|
color="white"
|
|
}
|
|
subgraph {
|
|
rank = same;
|
|
epilog_stop;
|
|
epilog_stop_failure;
|
|
epilog;
|
|
epilog_failure;
|
|
epilog_undeploy;
|
|
epilog_undeploy_failure;
|
|
color="white"
|
|
}
|
|
subgraph {
|
|
rank = same;
|
|
hotplug_prolog_poweroff;
|
|
hotplug_saveas_poweroff;
|
|
hotplug_saveas_suspended;
|
|
disk_snapshot_suspended;
|
|
disk_snapshot_revert_suspended;
|
|
disk_snapshot_delete_suspended;
|
|
hotplug_epilog_poweroff;
|
|
disk_snapshot_poweroff;
|
|
disk_snapshot_revert_poweroff;
|
|
disk_snapshot_delete_poweroff;
|
|
color="white"
|
|
}
|
|
subgraph {
|
|
rank = sink;
|
|
done;
|
|
ANY;
|
|
color="white"
|
|
}
|
|
|
|
# create
|
|
user -> pending [label="create"];
|
|
|
|
# deploy
|
|
pending -> prolog [label="deploy"];
|
|
prolog -> boot [style="dashed", color="blue"];
|
|
boot -> running [style="dashed", color="blue"];
|
|
|
|
pending -> prolog_resume [label="deploy\n(from stopped)"];
|
|
//hold -> prolog_resume [label="deploy\n(from stopped)"];
|
|
stopped -> prolog_resume [label="deploy"];
|
|
prolog_resume -> boot_stopped [style="dashed", color="blue"];
|
|
|
|
pending -> prolog_undeploy [label="deploy\n(from undeployed)"];
|
|
//hold -> prolog_undeploy [label="deploy\n(from undeployed)"];
|
|
undeployed -> prolog_undeploy [label="deploy"];
|
|
prolog_undeploy -> boot_undeploy [style="dashed", color="blue"];
|
|
|
|
//hold -> prolog [label="deploy"];
|
|
|
|
# terminate
|
|
running -> shutdown [label="terminate [--hard]"];
|
|
shutdown -> epilog [style="dashed", color="blue"];
|
|
epilog -> done [style="dashed", color="blue"];
|
|
|
|
shutdown -> running [style="dotted", color="red"];
|
|
|
|
suspended -> epilog [label="terminate [--hard]"];
|
|
poweroff -> epilog [label="terminate [--hard]"];
|
|
stopped -> epilog [label="terminate [--hard]"];
|
|
undeployed -> epilog [label="terminate [--hard]"];
|
|
|
|
# poweroff
|
|
running -> shutdown_poweroff [label="poweroff [--hard]"];
|
|
shutdown_poweroff -> poweroff [style="dashed", color="blue"];
|
|
|
|
shutdown_poweroff -> running [style="dotted", color="red"];
|
|
|
|
# livemigrate
|
|
running -> migrate [label="migrate --live"];
|
|
migrate -> running [style="dashed", color="blue"];
|
|
|
|
# migrate
|
|
running -> save_migrate [label="migrate"];
|
|
save_migrate -> prolog_migrate [style="dashed", color="blue"];
|
|
save_migrate -> running [style="dotted", color="red"];
|
|
prolog_migrate -> boot_migrate [style="dashed", color="blue"];
|
|
boot_migrate -> running [style="dashed", color="blue"];
|
|
|
|
unknown -> prolog_migrate_unknown [label="migrate"];
|
|
prolog_migrate_unknown -> boot [style="dashed", color="blue"];
|
|
|
|
poweroff -> prolog_migrate_poweroff [label="migrate"];
|
|
prolog_migrate_poweroff -> poweroff [style="dashed", color="blue"];
|
|
|
|
suspended -> prolog_migrate_suspend [label="migrate"];
|
|
prolog_migrate_suspend -> suspended [style="dashed", color="blue"];
|
|
|
|
# hold
|
|
pending -> hold [label="hold"];
|
|
|
|
# release
|
|
hold -> pending [label="release"];
|
|
|
|
# stop
|
|
running -> save_stop [label="stop"];
|
|
save_stop -> epilog_stop [style="dashed", color="blue"];
|
|
save_stop -> running [style="dotted", color="red"];
|
|
epilog_stop -> stopped [style="dashed", color="blue"];
|
|
|
|
suspended -> epilog_stop [label="stop"];
|
|
|
|
# undeploy
|
|
running -> shutdown_undeploy [label="undeploy [--hard]"];
|
|
shutdown_undeploy -> epilog_undeploy [style="dashed", color="blue"];
|
|
shutdown_undeploy -> running [style="dotted", color="red"];
|
|
epilog_undeploy -> undeployed [style="dashed", color="blue"];
|
|
|
|
poweroff -> epilog_undeploy [label="undeploy [--hard]"];
|
|
|
|
# suspend
|
|
running -> save_suspend [label="suspend"];
|
|
save_suspend -> suspended [style="dashed", color="blue"];
|
|
save_suspend -> running [style="dotted", color="red"];
|
|
|
|
# resume
|
|
stopped -> pending [label="resume"];
|
|
boot_stopped -> running [style="dashed", color="blue"];
|
|
|
|
undeployed -> pending [label="resume"];
|
|
boot_undeploy -> running [style="dashed", color="blue"];
|
|
|
|
suspended -> boot_suspended [label="resume"];
|
|
boot_suspended -> running [style="dashed", color="blue"];
|
|
|
|
poweroff -> boot_poweroff [label="resume"];
|
|
boot_poweroff -> running [style="dashed", color="blue"];
|
|
|
|
unknown -> boot_unknown [label="resume"];
|
|
boot_unknown -> running [style="dashed", color="blue"];
|
|
|
|
|
|
# recover delete
|
|
ANY -> done [label="recover --delete"];
|
|
|
|
# recover --recreate
|
|
"ANY \\ {stopped,undeployed,done}" -> pending [label="recover --recreate"];
|
|
|
|
# reboot
|
|
running -> running [label="reboot"];
|
|
|
|
# disk-attach
|
|
running -> hotplug [label="disk-attach /\n-detach"]
|
|
hotplug -> running [style="dashed", color="blue"];
|
|
|
|
poweroff -> hotplug_prolog_poweroff [label="disk-attach"]
|
|
hotplug_prolog_poweroff -> poweroff [style="dashed", color="blue"];
|
|
poweroff -> hotplug_epilog_poweroff [label="disk-detach"]
|
|
hotplug_epilog_poweroff -> poweroff [style="dashed", color="blue"];
|
|
|
|
# disk-snapshot-create
|
|
running -> disk_snapshot [label="disk-snapshot-create"];
|
|
disk_snapshot -> running [style="dashed", color="blue"];
|
|
|
|
poweroff -> disk_snapshot_poweroff [label="disk-snapshot-create"];
|
|
disk_snapshot_poweroff -> poweroff [style="dashed", color="blue"];
|
|
|
|
suspended -> disk_snapshot_suspended [label="disk-snapshot-create"];
|
|
disk_snapshot_suspended -> suspended [style="dashed", color="blue"];
|
|
|
|
# disk-snapshot-revert
|
|
running -> disk_snapshot_revert [label="disk-snapshot-revert"];
|
|
disk_snapshot_revert -> running [style="dashed", color="blue"];
|
|
|
|
poweroff -> disk_snapshot_revert_poweroff [label="disk-snapshot-revert"];
|
|
disk_snapshot_revert_poweroff -> poweroff [style="dashed", color="blue"];
|
|
|
|
suspended -> disk_snapshot_revert_suspended [label="disk-snapshot-revert"];
|
|
disk_snapshot_revert_suspended -> suspended [style="dashed", color="blue"];
|
|
|
|
# disk-snapshot-delete
|
|
running -> disk_snapshot_delete [label="disk-snapshot-delete"];
|
|
disk_snapshot_delete -> running [style="dashed", color="blue"];
|
|
|
|
poweroff -> disk_snapshot_delete_poweroff [label="disk-snapshot-delete"];
|
|
disk_snapshot_delete_poweroff -> poweroff [style="dashed", color="blue"];
|
|
|
|
suspended -> disk_snapshot_delete_suspended [label="disk-snapshot-delete"];
|
|
disk_snapshot_delete_suspended -> suspended [style="dashed", color="blue"];
|
|
|
|
# nic-attach
|
|
running -> hotplug_nic [label="nic-attach /\n-detach"]
|
|
hotplug_nic -> running [style="dashed", color="blue"];
|
|
|
|
poweroff -> poweroff [label="nic-attach /\n-detach"]
|
|
|
|
# snapshot
|
|
running -> hotplug_snapshot [label="snapshot-create /\n-revert /\n-delete"]
|
|
hotplug_snapshot -> running [style="dashed", color="blue"];
|
|
|
|
# disk-saveas
|
|
running -> hotplug_saveas [label="disk-saveas"]
|
|
hotplug_saveas -> running [style="dashed", color="blue"];
|
|
|
|
poweroff -> hotplug_saveas_poweroff [label="disk-saveas"]
|
|
hotplug_saveas_poweroff -> poweroff [style="dashed", color="blue"];
|
|
|
|
suspended -> hotplug_saveas_suspended [label="disk-saveas"]
|
|
hotplug_saveas_suspended -> suspended [style="dashed", color="blue"];
|
|
|
|
# failures and misc.
|
|
boot_failure -> boot [label="recover"];
|
|
boot_migrate_failure -> boot_migrate [label="recover"];
|
|
boot_undeploy_failure -> boot_undeploy [label="recover"];
|
|
boot_stopped_failure -> boot_stopped [label="recover"];
|
|
|
|
epilog_stop -> epilog_stop_failure [label=" ", style="dotted", color="red"];
|
|
epilog_stop_failure -> epilog_stop [label="recover"];
|
|
|
|
epilog -> epilog_failure [label=" ", style="dotted", color="red"];
|
|
epilog_failure -> epilog [label="recover"];
|
|
|
|
epilog_undeploy -> epilog_undeploy_failure [label=" ", style="dotted", color="red"];
|
|
epilog_undeploy_failure -> epilog_undeploy [label="recover"];
|
|
|
|
prolog -> prolog_failure [label=" ", style="dotted", color="red"];
|
|
prolog_failure -> prolog [label="recover"];
|
|
|
|
prolog_migrate -> prolog_migrate_failure [label=" ", style="dotted", color="red"];
|
|
prolog_migrate_failure -> prolog_migrate [label="recover"];
|
|
|
|
prolog_migrate_poweroff -> prolog_migrate_poweroff_failure [label=" ", style="dotted", color="red"];
|
|
prolog_migrate_poweroff_failure -> prolog_migrate_poweroff [label="migrate"];
|
|
|
|
prolog_migrate_suspend -> prolog_migrate_suspend_failure [label=" ", style="dotted", color="red"];
|
|
prolog_migrate_suspend_failure -> prolog_migrate_suspend [label="migrate"];
|
|
|
|
prolog_resume -> prolog_resume_failure [style="dotted", color="red"];
|
|
prolog_resume_failure -> prolog_resume [label="recover"];
|
|
|
|
prolog_undeploy -> prolog_undeploy_failure [style="dotted", color="red"];
|
|
prolog_undeploy_failure -> prolog_undeploy [label="recover"];
|
|
|
|
prolog_migrate_unknown -> prolog_migrate_unknown_failure [label=" ", style="dotted", color="red"];
|
|
prolog_migrate_unknown_failure -> prolog_migrate_unknown [label="migrate"];
|
|
|
|
boot -> boot_failure [label=" ", style="dotted", color="red"];
|
|
boot_migrate -> boot_migrate_failure [label=" ", style="dotted", color="red"];
|
|
boot_poweroff -> poweroff [style="dotted", color="red"];
|
|
boot_unknown -> unknown [label=" ", style="dotted", color="red"];
|
|
boot_suspended -> suspended [style="dotted", color="red"];
|
|
boot_stopped -> boot_stopped_failure [style="dotted", color="red"];
|
|
boot_undeploy -> boot_undeploy_failure [style="dotted", color="red"];
|
|
|
|
running -> save_suspend [style="dotted", color="red"];
|
|
unknown -> save_suspend [style="dotted", color="red"];
|
|
|
|
running -> unknown [style="dotted", color="red"];
|
|
unknown -> running [style="dashed", color="blue"];
|
|
}
|