前言
前天晚上没吃饭,所以昨晚睡得很早,导致今天4点就上去了
时间是人最宝贵的财富,于是我打消了钻在毯子里刷剧的念头,爬起来整理一下在Openstack中改建一个云主机的步骤。
Openstack可以使你在登陆dashboard以后只须要点一下”创建主机“的按键,选择相应配置,在几十秒内就可以争创好一台云主机供你使用云主机,这么牛逼的事情是如何做到的呢?
别着急,听我和你逐渐道来
新建一个云主机步骤总览图
原来我还一直以为这儿登陆的时侯也是一个简略的django框架使用pymysql直接查询数据库,而实际上这儿的表单信息是递交至了keystone,然后通过keystone查询数据库进行验证的
图中步骤-2
keystone接收至后端表单传进来的域、用户、密码信息之后,查询了数据库,确认身分后将一个token(就像是办了身份证~~~)返回给该用户,让这个用户之后再进行操作的时侯不需要再提供账户密码,而是掏出token来
图中步骤-3
horizon领到token以后,实际上这儿在web页面上的显示就是登陆成功了,接着找到争创云主机的按键并点击
填了如此一大堆配置信息,点击启动例子以后,horizon就带着三样东西去找nova-api了:
1.创建云主机的恳求
2.云主机相关配置信息
3.刚刚keystone返回给的token
图中步骤-4
你horizon来找我nova-api办事可我也不认识你啊,这样,你把身份证给我,我去找我哥哥keystone询问(这些组件都有一个共同的哥哥keystone,但它们自己之间竟不认识)。然后他就带着horizon的token去找keystone
图中步骤-5
keystone一看nova-api带给的token,这不就是自己刚发的那种么,但程序可没那么聪敏,它还得乖乖查一次数据库,然后告诉nova-pai,这兄弟信得过,你就照它说的做吧
图中步骤-6
nova-api从哥哥那回去,接收了horizon提供的两样东西,一是云主机配置信息,二是争创恳求,这nova-api手底下还有一帮小兄弟,这帮人之间勾通可不太便于都得通过一块小黑板(mq消息队列),把自己的需求写在小黑板上,能做的了这事的人自然就去做了。但配置信息今天还不能写在小黑板上,得找到确定去农活的人后来才行啊,所以nova-api就把配置信息放入数据库里
图中步骤-7
数据库把配置信息收好以后,对nova-api说了声,我放好了
图中步骤-8
放好配置信息后nova-api就在小黑板上写“现在要争创一台云主机,配置信息我早已放在数据库了,小s你给安排安排吧”
图中步骤-9
这个小s就是nova-schedular,他好像是nova-api的秘书,nova-api的有事都是通过它交待给其他人的,这一步就是他从小黑板上见到了nova-api的信息
图中步骤-10
小s目前晓得了要争创云主机,但它要看一看云主机都要哪些配置,才好决定该把这事还给谁去做(这里是指多个nova-compute的状况云主机,各个估算节点的资源使用状况都在小s这儿),所以他使数据库把云主机配置信息发给他瞧瞧
图中步骤-11
数据库收到恳求以后,把云主机配置信息发给小s
图中步骤-12
小s领到配置信息后,使用调度算法决定了要使nova-compute去干这个事,就在小黑板上写“nova-compute你给争创个云主机,配置都在数据库里了”