官术网_书友最值得收藏!

OpenStack daemon communication

Now that we've discussed the various ways in which an OpenStack operator interacts with OpenStack via the API, let's discuss internal communication among the core OpenStack services. In Figure 1.7, you can see the color code in the top left that shows the service and daemon. The service is simply the name of the OpenStack service, while the daemon represents the program that is actually running to bring the service to life.

To avoid tight coupling, communication amongst the daemons within a specific service is achieved via an Advanced Message Queueing Protocol (AMQP). In a typical OpenStack environment, this can be software such as RabbitMQ or Qpid.

Recall the cloudy development methodology that we discussed in the history portion of this chapter. While OpenStack encourages its software developers to follow this methodology when deploying applications on it, the actual OpenStack infrastructure follows the exact same principles: highly available, scalable, and loosely coupled.

For example, when a user sends a request to nova-api to boot a server, nova-api will publish this message on the AMQP bus. This message will then be read by nova-scheduler. Now let's visualize an OpenStack cloud that often receives hundreds of requests to boot instances. To solve this problem you would deploy more servers in the infrastructure, install more nova-scheduler daemons, and simply point them to the OpenStack environment's AMQP server. That's Horizontal scaling in action!

Figure 1.7: OpenStack daemons within a specific service use the AMQP bus to communicate among themselves
主站蜘蛛池模板: 精河县| 新源县| 克什克腾旗| 什邡市| 桃江县| 诸暨市| 丰台区| 南丹县| 如皋市| 商洛市| 昌江| 合水县| 德令哈市| 洛隆县| 中山市| 华池县| 崇礼县| 峨眉山市| 定陶县| 广昌县| 土默特右旗| 西畴县| 南充市| 郑州市| 东丽区| 泾源县| 台湾省| 灵武市| 马龙县| 西畴县| 新乡县| 右玉县| 承德县| 天柱县| 连州市| 托克托县| 伊金霍洛旗| 安义县| 鄂尔多斯市| 大宁县| 岫岩|