Font Size: a A A

The Design And Implementation Of A Cloud Database Service System Based On Docker

Posted on:2016-05-25Degree:MasterType:Thesis
Country:ChinaCandidate:B L DuFull Text:PDF
GTID:2348330488473843Subject:Engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of computer technology, the application of database has been infiltrated in every fileds and maintained the life of the whole system. Once occurring data loss or service termination due to database collapse, it will bring heavy costs. Traditional self-built database hasn't met the demand of explosive growth of data any more, it has started turning to the cloud database service. In order to guarantee the service will not stop because of a server outage, it should use the high availability cluster to provide uninterrupted service. Traditional high availability scheme based on cloud database service, can perform the service switch and ensure the database instance running consistently. But there are still some problems, including the crash of the application due to environment difference, long time of the instance creation, can't set dynamically resources, Drbd fissure, etc. In the context of rapid development of cloud computing, this paper mainly studies the cloud database service deployment and implementation. Based on these research, it carried on the detailed design of the My SQL cloud services system and the implementation of the system.Firstly, based on the analysis of existing high availability cluster, this paper proposed high availability design scheme based on Docker containers and determined the high availability, high reliability design of the implementation of My SQL cloud. Secondly, it makes a deep research about basic technology including Docker lightweight virtualization, Saltstack deployment automation tools, the Rabbit MQ message queues and Percona database backup recovery. Thirdly, in this paper, the user requirements of the system are analyzed in detail. It abstracts the main function of the system as following: physical server pool management function, basic instance operating function, instance resources upgrading function, instance parameter modification, resource instance performance monitoring function and alarm function. At the same time it abstracts the performance demand of the system and the system database model base on the system demand. Then, according to the characteristics of its system, system architecture is divided into front part and the background part(which I was responsible in the system implementation). System background part using four layers architecture model: communication layer adopts the Rabbit MQ message queue technology; business logic layer adopts Python thread pool, Salt Stack technology etc; data layer adopts Python pymql module, the underlying interaction layer uses the Docker lightweight virtualization technology. According to function, system is divided into function modules and complete each function module. Finally, this paper describes the test in detail and design test environment for this program. It performs system function test and non-function test through test cases. The test results and data carried on the detailed statistics and analysis. After several rounds, system pass the final test and the function and non-function of the system achieved anticipated goals.This system provides the automatic and high availability solutions of the My SQL service. It speeds up the overall system development cycle and improves the utilization rate of the virtual resources. At the same time, the service deployment scheme based on Docker not only applies to other database, but also can deploy web and many other applications. There is a certain commercial value in it. At present, the background project system mentioned in this paper has released several versions, and has been used in private cloud platform.
Keywords/Search Tags:Cloud Database, High Availability, Automation Deployment, Docker
PDF Full Text Request
Related items