[docs] move one level higher
This commit is contained in:
		
					parent
					
						
							
								26d5c91625
							
						
					
				
			
			
				commit
				
					
						bd03f95e99
					
				
			
		
					 17 changed files with 1 additions and 1 deletions
				
			
		
							
								
								
									
										158
									
								
								docs/source/admin-guide
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										158
									
								
								docs/source/admin-guide
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,158 @@ | |||
| .. _admin-guide: | ||||
| 
 | ||||
| 
 | ||||
| Usage Guide For Administrators | ||||
| ============================== | ||||
| 
 | ||||
| Start API | ||||
| ---------- | ||||
| 
 | ||||
| .. code-block:: sh | ||||
| 
 | ||||
|     ucloud api | ||||
| 
 | ||||
| Host Creation | ||||
| ------------- | ||||
| 
 | ||||
| Currently, we don't have any host (that runs virtual machines). | ||||
| So, we need to create it by executing the following command | ||||
| 
 | ||||
| .. code-block:: sh | ||||
| 
 | ||||
|     ucloud-cli host create --hostname ungleich.ch --cpu 32 --ram '32GB' --os-ssd '32GB' | ||||
| 
 | ||||
| You should see something like the following | ||||
| 
 | ||||
| .. code-block:: json | ||||
| 
 | ||||
|     { | ||||
|         "message": "Host Created" | ||||
|     } | ||||
| 
 | ||||
| Start Scheduler | ||||
| --------------- | ||||
| Scheduler is responsible for scheduling VMs on appropriate host. | ||||
| 
 | ||||
| .. code-block:: sh | ||||
| 
 | ||||
|     ucloud scheduler | ||||
| 
 | ||||
| Start Host | ||||
| ---------- | ||||
| Host is responsible for handling the following actions | ||||
| 
 | ||||
| * Start VM. | ||||
| * Stop VM. | ||||
| * Create VM. | ||||
| * Delete VM. | ||||
| * Migrate VM. | ||||
| * Manage Network Resources needed by VMs. | ||||
| 
 | ||||
| It uses a hypervisor such as QEMU to perform these actions. | ||||
| 
 | ||||
| To start host we created earlier, execute the following command | ||||
| 
 | ||||
| .. code-block:: sh | ||||
| 
 | ||||
|     ucloud host ungleich.ch | ||||
| 
 | ||||
| Create OS Image | ||||
| --------------- | ||||
| 
 | ||||
| Create ucloud-init ready OS image (Optional) | ||||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||||
| This step is optional if you just want to test ucloud. However, sooner or later | ||||
| you want to create OS images with ucloud-init to properly | ||||
| contexualize VMs. | ||||
| 
 | ||||
| 1. Start a VM with OS image on which you want to install ucloud-init | ||||
| 2. Execute the following command on the started VM | ||||
| 
 | ||||
|    .. code-block:: sh | ||||
| 
 | ||||
|     apk add git | ||||
|     git clone https://code.ungleich.ch/ucloud/ucloud-init.git | ||||
|     cd ucloud-init | ||||
|     sh ./install.sh | ||||
| 3. Congratulations. Your image is now ucloud-init ready. | ||||
| 
 | ||||
| 
 | ||||
| Upload Sample OS Image | ||||
| ~~~~~~~~~~~~~~~~~~~~~~ | ||||
| Execute the following to get the sample OS image file. | ||||
| 
 | ||||
| .. code-block:: sh | ||||
| 
 | ||||
|     mkdir /var/www/admin | ||||
|     (cd /var/www/admin && wget https://cloud.ungleich.ch/s/qTb5dFYW5ii8KsD/download) | ||||
| 
 | ||||
| Run File Scanner and Image Scanner | ||||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||||
| Currently, our uploaded file *alpine-untouched.qcow2* is not tracked by ucloud. We can only make | ||||
| images from tracked files. So, we need to track the file by running File Scanner | ||||
| 
 | ||||
| .. code-block:: sh | ||||
| 
 | ||||
|     ucloud filescanner | ||||
| 
 | ||||
| File Scanner would run, scan your uploaded image and track it. You can check whether your image | ||||
| is successfully tracked by executing the :code:`ucloud-cli user files`, It will return something like the following | ||||
| 
 | ||||
| .. _list-user-files: | ||||
| 
 | ||||
| .. code-block:: json | ||||
| 
 | ||||
|     { | ||||
|         "message": [ | ||||
|             { | ||||
|                 "filename": "alpine-untouched.qcow2", | ||||
|                 "uuid": "3f75bd20-45d6-4013-89c4-7fceaedc8dda" | ||||
|             } | ||||
|         ] | ||||
|     } | ||||
| 
 | ||||
| Our file is now being tracked by ucloud. Lets create an OS image using the uploaded file. | ||||
| 
 | ||||
| An image belongs to an image store. There are two types of store | ||||
| 
 | ||||
| * Public Image Store | ||||
| * Private Image Store (Not Implemented Yet) | ||||
| 
 | ||||
| .. note:: | ||||
|     **Quick Quiz** Have we created an image store yet? | ||||
| 
 | ||||
| The answer is **No, we haven't**. Creating a sample image store is very easy. | ||||
| Just execute the following command | ||||
| 
 | ||||
| .. code-block:: sh | ||||
| 
 | ||||
|     (cd ~/ucloud && pipenv run python api/create_image_store.py) | ||||
| 
 | ||||
| An image store (with name = "images") would be created. Now, we are fully ready for creating our | ||||
| very own image. Executing the following command to create image using the file uploaded earlier | ||||
| 
 | ||||
| .. code-block:: sh | ||||
| 
 | ||||
|     ucloud-cli image create-from-file --name alpine --uuid 3f75bd20-45d6-4013-89c4-7fceaedc8dda --image-store-name images | ||||
| 
 | ||||
| Please note that your **uuid** would be different. See :ref:`List of user files <list-user-files>`. | ||||
| 
 | ||||
| Now, ucloud have received our request to create an image from file. We have to run Image Scanner to make the image. | ||||
| 
 | ||||
| .. code-block:: sh | ||||
| 
 | ||||
|     ucloud imagescanner | ||||
| 
 | ||||
| To make sure, that our image is create run :code:`ucloud-cli image list --public`. You would get | ||||
| output something like the following | ||||
| 
 | ||||
| .. code-block:: json | ||||
| 
 | ||||
|     { | ||||
|         "images": [ | ||||
|             { | ||||
|                 "name": "images:alpine", | ||||
|                 "status": "CREATED" | ||||
|             } | ||||
|         ] | ||||
|     } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue