| 
									
										
										
										
											2019-12-07 12:01:59 +01:00
										 |  |  | Introduction
 | 
					
						
							|  |  |  | ============
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ucloud is a modern, IPv6 first virtual machine management system.
 | 
					
						
							|  |  |  | It is an alternative to `OpenNebula <https://opennebula.org/>`_,
 | 
					
						
							|  |  |  | `OpenStack <https://www.openstack.org/>`_ or
 | 
					
						
							|  |  |  | `Cloudstack <https://cloudstack.apache.org/>`_.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ucloud is the first cloud management system that puts IPv6
 | 
					
						
							|  |  |  | first. ucloud also has an integral ordering process that we missed in
 | 
					
						
							|  |  |  | existing solutions.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The ucloud documentation is separated into various sections for the
 | 
					
						
							|  |  |  | different use cases:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | * :ref:`The user guide <user-guide>` describes how to use an existing
 | 
					
						
							|  |  |  |   ucloud installation
 | 
					
						
							|  |  |  | * There are :ref:`setup instructions <setup-install>` which describe on how to setup a new
 | 
					
						
							|  |  |  |   ucloud instance
 | 
					
						
							|  |  |  | * :ref:`The admin guide <admin-guide>` describe on how to
 | 
					
						
							|  |  |  |   administrate ucloud
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Architecture
 | 
					
						
							|  |  |  | ------------
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:46:39 +01:00
										 |  |  | We try to reuse existing components for ucloud. Generally speaking,
 | 
					
						
							|  |  |  | ucloud consist of a variety of daemons who handle specific tasks and
 | 
					
						
							|  |  |  | connect to a shared database.
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:01:59 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:46:39 +01:00
										 |  |  | All interactions with the clients are done through an API.
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:01:59 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:46:39 +01:00
										 |  |  | ucloud consists of the following components:
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:01:59 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | * API
 | 
					
						
							|  |  |  | * Scheduler
 | 
					
						
							|  |  |  | * Host
 | 
					
						
							|  |  |  | * File Scanner
 | 
					
						
							|  |  |  | * Image Scanner
 | 
					
						
							|  |  |  | * Metadata Server
 | 
					
						
							|  |  |  | * VM Init Scripts (dubbed as ucloud-init)How does ucloud work?
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:46:39 +01:00
										 |  |  | Tech Stack
 | 
					
						
							|  |  |  | ----------
 | 
					
						
							|  |  |  | The following technologies are utilised:
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:01:59 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:46:39 +01:00
										 |  |  | * Python 3
 | 
					
						
							|  |  |  | * Flask
 | 
					
						
							|  |  |  | * QEMU as hypervisor
 | 
					
						
							|  |  |  | * etcd (key/value store)
 | 
					
						
							|  |  |  | * radvd for Router Advertisement
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:01:59 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:46:39 +01:00
										 |  |  | Optional components:
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:01:59 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-07 12:46:39 +01:00
										 |  |  | * CEPH for distributed image storage
 | 
					
						
							|  |  |  | * uotp for user authentication
 | 
					
						
							|  |  |  | * netbox for IPAM
 |