您的位置:首页 > 运维架构

openstack启动云主机的流程

2015-09-22 14:01 351 查看


1. 用户使用Dashboard或者CLI 把认证信息通过REST请求发送给keystone进行认证。

2. Keystone校验用户发送的认证信息,并且生成/存储/返回认证后的令牌(token),这个令牌被用来向其他组件发送REST请求。

3. Dashboard 和 CLI把“启动云主机”和 “nova-boot”请求转换成REST API请求,并且发送到nova-api。

4. Nova-api收到请求,然后向keystone发送验证令牌和访问权限的请求。

5. Keystone验证令牌并且返回添加了角色和权限的验证信息。

6. Nova-api和数据库交互。

7. 在数据库中创建新云主机的信息。

8. nova-api发送包含云主机ID的rpc.call请求到消息队列,让nova-scheduler从数据库中取得云主机信息。

9. nova-scheduler 从队列中取得请求。

10. nova-scheduler与数据库交互,通过过滤和权重策略,查询合适的主机。

11. 数据库返回合适的宿主机ID(计算节点)

12. nova-scheduler向符合条件的云主机发送“启动云主机”的rpc.cast请求。

13. 对应的nova-compute从队列中取得请求。

14. nova-compute向nova-conductor发送rpc.call请求,需要获得云主机的信息,比如云主机ID和flavor(内存,CPU,硬盘),系统镜像等。

15. nova-conductor 从队列中取得请求。

16. nova-conductor和数据库交互。

17. 数据库返回云主机信息。

18. nova-conductor通过队列向nova-compute返回云主机的信息(内存,CPU,硬盘,系统镜像)。

19. nova-compute发起REST请求,通过发送令牌和镜像ID到glance-api,取得镜像URI。

20. glance-api通过keystone验证令牌。

21. nova-compute获得镜像资源。

22. nova-compute发起REST请求,通过发送令牌和网络信息到Network API,配置云主机网络和IP。(openvswitch-agent)

23. quantum-server(neutron-server)通过keystone验证令牌。

24. nova-compute获得了网络信息。

25. nova-compute发起REST请求,通过发送令牌和卷信息到Volume API,挂载云硬盘。

26. cinder-api通过keystone验证令牌。

27. nova-compute获得了块设备信息。

28. nova-compute生成hypervisor驱动需要的数据,并且向hypervisor(libvirt)发送请求,启动虚拟机。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息