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

OpenStack创建虚拟机流程

2020-02-02 00:29 1521 查看
  1. 登录界面或命令行通过restful API 想keystone 获取认证信息
  2. keystone通过用户请求认证信息,并生成auth-token返回给对应的认证请求
  3. 界面或命令行通过restful API向nova-api发送一个boot instance的请求(携带auth-token)
  4. Nova-api接受请求后向keystone发送认证请求,查看token是否为有效用户和有效token
  5. keystone验证token是否有效,如有效则返回有效的认证和对应的角色(有些操作需要有角色权限才能操作)
  6. 通过认证后nova-api和数据库通讯
  7. 初始化新建虚拟机的数据库记录
  8. Nova-api通过rpc.call向nova-scheduler请求是否有创建虚拟机的资源(Host ID)
  9. Nova-scheduler进程侦听消息队列,获取nova-api的请求
  10. Nova-scheduler通过查询nova数据库中计算资源的情况,并通过调度算法计算符合虚拟机创建需要的主机
  11. 对于有符合虚拟机创建的主机,nova-sheduler更新数据库中虚拟机对应的物理主机信息
  12. Nova-shceduler通过rpc.cast想nova-compute发送对应的创建虚拟机请求的信息
  13. Nova-compute会从对应的消息队列中获取创建虚拟机请求的消息
  14. Nova-compute通过rpc.call想nova-conductor请求获取虚拟机消息(Flavor)
  15. Nova-conductor从消息队列中拿到nova-compute请求消息
  16. Nova-conductor根据消息查询虚拟机对应的信息
  17. Nova-conductor从数据库中获得虚拟机对应的消息
  18. Nova-conductor吧虚拟机信息通过消息的方式发送到消息队列中
  19. Nova-compute从对应的消息队列中获取虚拟机消息
  20. Nova-compute通过keystone的RESTfull API 拿到认证的token,并通过http请求glance-api获取创建虚拟机所需的镜像
  21. Glance-api向keystone认证token是否有效,并返回验证结果
  22. token验证通过,nova-compute获得虚拟机镜像信息(url)
  23. Nova-compute通过keystone的RESTfull API 拿到认证的token,并通过http请求neutron-server获取创建虚拟机所需的网络信息
  24. Neutron-server向ketstone认证tonken是否有效,并返回验证结果
  25. token验证通过,nova-compute获得虚拟机网络信息
  26. Nova-compute通过keystone的RESTfull API 拿到认证的token ,并通过HTTP请求cinder-api获取创建虚拟机所需的持久化存储信息
  27. Cinder-api向keystone认证token是否有效,并返回验证结果
  28. token验证通过,nova-compute获得虚拟机持久化存储信息
  29. Nova-compute根据instance的信息调用配置的虚拟化驱动来创建虚拟机

理解
客户从界面下创建vm
1. horizon去keystone认证
2. horizzon将请求发送给api(带认证)
3. Nova-api再去认证
4. Nova-api修改数据库虚拟机信息
5. Nova-api让nova-scheduler确认在哪一台主机
6. Nova-scheduler确认主机信息后修改数据库
7. Nova-scheduler向compute发送创建虚拟机请求信息
8. Nova-compute(请求,包括创建虚拟机请求)让nova-conductor去数据库查询具体信息
9. Nova-compute从nova-conductor获取了vm的具体信息后,请求glance调用镜像(glance去keystone认证)
10. Nova-compute从conductor获取了vm的具体信息后,请求neutron调用网络(neutron去keystone认证)
11. compute从conductor获取了vm的具体信息后,请求cinder调用磁盘(cinder去keystone认证)
12. Nova-compute根据具体vm信息调用虚拟化驱动来创建主机

此文根据链接: openstack 创建虚拟机过程.更改
如侵删改

  • 点赞
  • 收藏
  • 分享
  • 文章举报
我就躲在这把 发布了4 篇原创文章 · 获赞 0 · 访问量 145 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: