概述:
启动一个实例包含以下步骤:
API server:处理用户请求并转发至cloud controller
cloud controller:处理计算节点、网络控制、api server 以及scheduler的通信
scheduler:选择节点启动实例
Compute worker:管理实例,启动/关闭实例,挂载/卸载卷
Network controller:管理网络资源,分配浮动ip、配置vlan
启动实例的流程类似于这样: API服务从用户收到一个run_instances的命令,API服务转发这个命令给云控制器(1),在这里执行认证以确保该用户有相应的权限.去控制器把这条信息发给调度(2). 调度将这条信息扔给一个随机的主机(计算节点)让他启动一个新的实例(3).这台主机上的计算服务抓到这条信息(4).计算服务需要一个fixed IP来启动一个新实例,所以她发了一条信息给网络控制器(5,6,7,8).计算服务继续创建这个实例.下面我们将深入这些步骤的细节中去