openstack ocata 的cell 和 placement api
The Ocata openstack just released recently. The official docs is not very stable yet. Some key steps are missing and some content are not correct. Like cell and placement api.
cell introduce
There is a video you can watch here. It is the introduction on Openstack summit.https://www.openstack.org/videos/video/nova-cells-v2-whats-going-on
OK, then why we need CELL? Before CELL nova only have one database and one message queue. This is not HA or easy to scale.
To resolve this issue, the concept of cell are promoted. Normally when we controller one vm, the procedure is
1. query database to get compute node hostname and vm information
2. get message queue name by hostname and send message to queue
Only one DB and one message queue service which will be the bottle neck.
After cell, the procedure is
find cell database, cell queue and compute hostname from top level DB
find vm information from cell database
send message to queue
So now we have multiple database and message queue service. This can isolate the error of other cell and improve performance
placement api
placement api is a new service stack of nova. it was imported since newton. This service will manage resource provider so that resorce will register themselves and the resource inventory the provided