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

Putting it all together

Now that you have understood the architecture and terminologies, we will take a look at the general steps that are followed:

  1. Horizon/Trove CLI requests a new database instance and passes the datastore name and version, along with the flavor ID and volume size as mandatory parameters. Optional parameters such as the configuration group, AZ, replica-of, and so on can also be passed.
  2. The Trove API requests Nova for an instance with the particular image and a Cinder volume of a specific size to be added to the instance.
  3. The Nova instance boots and follows these steps:

    1. The cloud-init scripts are run (like all other Nova instances).
    2. The configuration files (for example, trove-guestagent.conf) are copied down to the instance.
    3. The guest agent is installed.
  4. The Trove API will also have sent the request to the task manager, which will then send the prepare call to the message bus topic.
  5. After booting, the guest agent listens to the message bus for any activities for it to do, and once it finds a message for itself, it processes the prepare command and performs the following functions:
    • Installing the database distribution (if not already installed on the image)
    • Creating the configuration file with the default configuration for the database engine (and any configuration from the configuration groups associated overriding the defaults)
    • Starting the database engine and enabling auto-start
    • Polling the database engine for availability (until the database engine is available or the timeout is reached)
    • Reporting the status back to the Trove backend using the Trove conductor
  6. The Trove manager reports back to the API and the status of the machine is changed.
主站蜘蛛池模板: 莲花县| 石柱| 麦盖提县| 蕲春县| 卢氏县| 景德镇市| 曲沃县| 弥勒县| 苍梧县| 芮城县| 宜君县| 青岛市| 麻栗坡县| 瑞金市| 门源| 汉中市| 德安县| 玉溪市| 五常市| 武鸣县| 襄汾县| 通河县| 大宁县| 莱西市| 桦甸市| 宁远县| 剑河县| 成都市| 沙田区| 美姑县| 罗源县| 修武县| 维西| 阜新市| 扎囊县| 稷山县| 开封市| 侯马市| 青州市| 荆州市| 大荔县|