Show complete workflow when provisioning an instance
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
openstack-manuals |
Fix Released
|
Wishlist
|
Darren Chan |
Bug Description
I'd like to document an end-to-end flow of provisioning an instance on OpenStack Havana. I think this kind a sequence diagram helps to understand how OpenStack works and how many components has to co-operate to get a VM created.
Copy/paste the text below into https:/
title Provision Instance
Client->+Keystone: Authentication Request
Keystone->+LDAP: authn
LDAP-->-Keystone:
Keystone->+Token Store:Save token
Token Store-->-Keystone:
Keystone-->-Client: Auth token
Client->+Nova-api: launch instance
Nova-api->DB: Create initial entry for instance
Nova-api->MQ: [rpc.cast] to request new instance
Nova-api-
Nova-scheduler->MQ: Subcribe new instance request
Nova-scheduler->DB: read filtering and weighing info
Nova-scheduler->DB: Read cluster state
Nova-scheduler->DB: Save instance state
Nova-scheduler->MQ: rpc.cast to launch instance
Nova-compute->MQ: Subcribe new instance request
Nova-compute->MQ: rpc.call to Nova-conductor to fetch the instance info
Nova-conductor->MQ: Subcribe new instance request
Nova-conductor->DB: Read instance state
Nova-conductor->MQ: Publish new instance state
Nova-compute->MQ: Subcribe new instance request
Nova-compute-
Glance-
Nova-compute-
ceph_mon-
Nova-compute-
ceph_rgw->ceph_osd: [socket] get object
ceph_rgw-
Nova-compute-
Neutron-server->MQ: Request IP
Neutron-server->MQ: Request L2 config
Neutron-
Neutron-
dnsmasq-
Neutron-
Neutron-
Neutron-
Neutron-
Neutron-
Neutron-server->DB: save instance network state
Neutron-
Nova-compute-
Cinder-
Keystone-
Cinder-
Nova-compute-
Nova-compute-
Nova-compute->MQ: rpc.call to Nova-conductor to fetch the instance info
Nova-conductor->MQ: Subcribe new instance request
Nova-conductor->MQ: Publish new instance state
Nova-compute-
libvirt->+ceph_mon: get cluster map
ceph_mon->-libvirt: return map
libvirt->ceph_osd: mount volume
VM-instance-
neutron_
nova-api-
neutron_
Client->+Nova-api: Poll instance state
Nova-api->+DB: Read instance state
DB->-Nova-api: Return state
Nova-api->-Client: Return instance state
Changed in openstack-manuals: | |
assignee: | nobody → Priti Desai (priti-desai) |
Changed in openstack-manuals: | |
status: | Confirmed → Triaged |
Changed in openstack-manuals: | |
assignee: | Priti Desai (priti-desai) → nobody |
Changed in openstack-manuals: | |
assignee: | nobody → Darren Chan (dazzachan) |
Changed in openstack-manuals: | |
assignee: | Darren Chan (dazzachan) → Alexandra Settle (alexandra-settle) |
Changed in openstack-manuals: | |
assignee: | Alexandra Settle (alexandra-settle) → Darren Chan (dazzachan) |
Changed in openstack-manuals: | |
assignee: | Darren Chan (dazzachan) → ologvinova (ologvinova) |
Changed in openstack-manuals: | |
assignee: | ologvinova (ologvinova) → Darren Chan (dazzachan) |
I think this diagram makes sense in the Ops Guide perhaps or the User Guide to assist with troubleshooting.