Openstack Nova Internals of instance launching
- Api Server : Handle request from user and relays them to cloud controller
- Cloud Controller : Handles the communication between the compute nodes,the networking controller , api sever and scheduler.
- Scheduler : Select a host to run a command
- Compute Worker : managing compute instances,launch or terminate instance, attach or detach volumes.
- Network Controller : manages networking resources,allocated fix IP addresses, configure VLANs.
Flow of launching an Instance
- Api Server receives a run_instance command from the user.
- The Api server relays the message to the cloud controller.
- Authentication is performed to make sure this user has required permissions.
- If user is authenticated, cloud controller sends the message to the scheduler.
- Scheduler cast the message to random host and ask him to run a new instance.
- The compute worker on the host grabs the message.
- The compute worker needs a fixed ip to launch a new instance so it sends the message to network controller i.e. (5,6,7,8) steps
Compute
- Compute worker receives the message and run_instance() method is called.
- run_instance() does the following things:
Check if instance is already running
allocate a fixed ip address
setup VLAN and bridge if not already setup
spawn the instance using virtualization driver.
deck
By magicharshit
deck
- 119
