Skip to content

Instantly share code, notes, and snippets.

@yosshy
Created December 4, 2014 16:37
Show Gist options
  • Save yosshy/11691edcaabcd727b9a6 to your computer and use it in GitHub Desktop.
Save yosshy/11691edcaabcd727b9a6 to your computer and use it in GitHub Desktop.
seqdiag source for creating instance on OpenStack Juno
seqdiag {
client; nova-api; glance-api; nova-conductor; nova-scheduler; nova-compute; nova-compute_2; nova-compute_3; neutron-server;
client => nova-api [label ="3-40;イメージ情報取得"]{
nova-api => glance-api [label ="19-34;glance.api.v1.images.Controller.meta"];
}
client => nova-api [label ="43-46;フレーバ情報取得"];
client -> nova-api [label ="57-254;VM作成"];
nova-api => glance-api [label ="89-104;glance.api.v1.images.Controller.meta"];
nova-api => neutron-server [label ="113-120;neutron.api.v2.base.Controller.index"];
nova-api => neutron-server [label ="121-122;neutron.api.v2.base.Controller.index"];
nova-api => neutron-server [label ="125-130;neutron.api.v2.base.Controller.index"];
nova-api => glance-api [label ="148-163;glance.api.v1.images.Controller.meta"];
nova-api => glance-api [label ="184-199;glance.api.v1.images.Controller.meta"];
nova-api ->> nova-conductor [label ="248-539;ComputeTaskManager.build_instances"];
client <-- nova-api;
client => nova-api [label ="255-262;セキュリティグループ作成"];
client => nova-api [label ="263-459;VM情報取得"];
nova-conductor => nova-scheduler [label ="270-449;SchedulerManager.select_destinations"];
nova-conductor => neutron-server [label ="466;neutron.api.v2.base.Controller.index"];
client => nova-api [label ="460-469;セキュリティグループ情報取得"];
client => nova-api [label ="470-471;キーペア情報取得"];
client => nova-api [label ="512-563;イメージ情報取得"]{
nova-api => glance-api [label ="531-557;glance.api.v1.images.Controller.meta"];
}
nova-conductor -> nova-compute [label ="535-3743;ComputeManager.build_and_run_instance"];
nova-api <<-- nova-conductor;
nova-compute => nova-compute [label ="576-585;nova.compute.utils.notify_about_instance_usage"];
nova-compute => nova-compute [label ="588-665;nova.compute.resource_tracker.ResourceTracker.instance_claim"];
nova-compute => nova-compute [label ="670-673;nova.virt.libvirt.driver.LibvirtDriver.macs_for_instance"];
nova-compute => nova-compute [label ="674-677;nova.virt.libvirt.driver.LibvirtDriver.dhcp_options_for_instance"];
nova-compute => nova-compute [label ="678-725;nova.compute.manager.ComputeManager._allocate_network"];
nova-compute -> nova-compute [label ="726-831;nova.compute.manager.ComputeManager._default_block_device_names"];
nova-compute -> nova-compute_2 [label ="745;nova.compute.manager.ComputeManager._allocate_network_async"];
nova-compute_2 -> nova-compute_2 [label ="746-1726;nova.network.neutronv2.api.API.allocate_for_instance"];
nova-compute_2 => neutron-server [label ="749-756;neutron.api.v2.base.Controller.index"];
nova-compute_2 => neutron-server [label ="757-758;neutron.api.v2.base.Controller.index"];
nova-compute_2 => neutron-server [label ="763-772;neutron.api.v2.base.Controller.index"];
nova-compute_2 => neutron-server [label ="810-818;neutron.api.v2.base.Controller.index"];
nova-compute <-- nova-compute;
nova-compute_2 -> neutron-server [label ="838-1261;neutron.api.v2.base.Controller.create"];
nova-compute => nova-compute [label ="847-890;nova.compute.manager.ComputeManager._prep_block_device"];
neutron-server => neutron-server [label ="909-914;neutron.plugins.ml2.managers.MechanismManager.create_port_precommit"];
neutron-server -> neutron-server [label ="915-1070;neutron.services.l3_router.l3_router_plugin.L3RouterPlugin.dvr_update_router_addvm"];
nova-compute -> nova-compute [label ="925-3461;nova.virt.libvirt.driver.LibvirtDriver.spawn"];
nova-compute => nova-compute [label ="926-965;nova.virt.libvirt.blockinfo.get_disk_info"];
nova-compute -> nova-compute [label ="966-1960;nova.virt.libvirt.driver.LibvirtDriver._create_image"];
neutron-server <-- neutron-server;
neutron-server => neutron-server [label ="1071-1076;neutron.plugins.ml2.managers.MechanismManager.create_port_postcommit"];
neutron-server => neutron-server [label ="1094-1108;neutron.plugins.ml2.managers.MechanismManager.bind_port"];
neutron-server => neutron-server [label ="1126-1131;neutron.plugins.ml2.managers.MechanismManager.update_port_precommit"];
neutron-server => neutron-server [label ="1135-1140;neutron.plugins.ml2.managers.MechanismManager.update_port_postcommit"];
neutron-server => neutron-server [label ="1141-1144;neutron.api.v2.base.Controller._send_nova_notification"];
neutron-server => neutron-server [label ="1145-1146;neutron.api.v2.base.Controller._view"];
neutron-server => neutron-server [label ="1147-1260;neutron.api.rpc.agentnotifiers.dhcp_rpc_agent_api.DhcpAgentNotifyAPI.notify"];
nova-compute_2 <-- neutron-server;
nova-compute_2 => neutron-server [label ="1425-1466;neutron.api.v2.base.Controller.index"];
nova-compute_2 => neutron-server [label ="1569-1576;neutron.api.v2.base.Controller.index"];
nova-compute_2 => neutron-server [label ="1579-1586;neutron.api.v2.base.Controller.index"];
nova-compute_2 <-- nova-compute_2;
nova-compute_2 => nova-compute_2 [label ="1737-1868;nova.compute.manager.ComputeManager._instance_update"];
nova-compute <-- nova-compute;
nova-compute <<-- nova-compute_2;
nova-compute => nova-compute [label ="1961-2495;nova.virt.libvirt.driver.LibvirtDriver._get_guest_xml"];
nova-compute -> nova-compute [label ="2496-3458;nova.virt.libvirt.driver.LibvirtDriver._create_domain_and_network"]{
nova-compute => nova-compute [label ="2497;nova.virt.driver.block_device_info_get_mapping"];
nova-compute => nova-compute [label ="2499;nova.virt.libvirt.driver.LibvirtDriver._get_neutron_events"];
nova-compute => nova-compute [label ="2503;nova.compute.manager.ComputeVirtAPI.wait_for_instance_event"];
nova-compute => nova-compute [label ="2505;nova.compute.manager.InstanceEvents.prepare_for_instance_event"];
nova-compute => nova-compute [label ="2507-2781;nova.virt.libvirt.driver.LibvirtDriver.plug_vifs"];
}
nova-compute_3 => nova-compute_3 [label ="2802-2996;nova.virt.driver.ComputeDriver.emit_event"];
nova-compute_3 => nova-compute_3 [label ="2997-3188;nova.virt.libvirt.driver.LibvirtDriver.emit_event"];
nova-compute_3 -> nova-compute_3 [label ="3451-3733;nova.virt.driver.ComputeDriver.emit_event"];
nova-compute => nova-compute [label ="3464-3467;nova.compute.manager.ComputeManager._get_power_state"];
nova-compute_3 <-- nova-compute_3;
nova-compute => nova-compute [label ="3593-3634;nova.compute.manager.ComputeManager._notify_about_instance_usage"];
nova-compute_3 => nova-compute_3 [label ="3735-3926;nova.virt.driver.ComputeDriver.emit_event"];
neutron-server => nova-api [label ="3396-3418;外部イベント反映"];
nova-conductor <<-- nova-compute;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment