121 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			121 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
.. _user-guide:
 | 
						|
 | 
						|
User Guide
 | 
						|
==========
 | 
						|
 | 
						|
Create VM
 | 
						|
---------
 | 
						|
 | 
						|
The following command would create a Virtual Machine (name: meow)
 | 
						|
with following specs
 | 
						|
 | 
						|
* CPU: 1
 | 
						|
* RAM: 1GB
 | 
						|
* OS-SSD: 4GB
 | 
						|
* OS: Alpine Linux
 | 
						|
 | 
						|
.. code-block:: sh
 | 
						|
 | 
						|
    ucloud-cli vm create --vm-name meow --cpu 1 --ram '1gb' --os-ssd '4gb' --image images:alpine
 | 
						|
 | 
						|
 | 
						|
.. _how-to-check-vm-status:
 | 
						|
 | 
						|
Check VM Status
 | 
						|
---------------
 | 
						|
 | 
						|
.. code-block:: sh
 | 
						|
 | 
						|
    ucloud-cli vm status --vm-name meow
 | 
						|
 | 
						|
.. code-block:: json
 | 
						|
 | 
						|
    {
 | 
						|
        "hostname": "/v1/host/74c21c332f664972bf5078e8de080eea",
 | 
						|
        "image_uuid": "3f75bd20-45d6-4013-89c4-7fceaedc8dda",
 | 
						|
        "in_migration": null,
 | 
						|
        "log": [
 | 
						|
            "2019-11-12T09:11:09.800798 - Started successfully"
 | 
						|
        ],
 | 
						|
        "metadata": {
 | 
						|
            "ssh-keys": []
 | 
						|
        },
 | 
						|
        "name": "meow",
 | 
						|
        "network": [],
 | 
						|
        "owner": "admin",
 | 
						|
        "owner_realm": "ungleich-admin",
 | 
						|
        "specs": {
 | 
						|
            "cpu": 1,
 | 
						|
            "hdd": [],
 | 
						|
            "os-ssd": "4.0 GB",
 | 
						|
            "ram": "1.0 GB"
 | 
						|
        },
 | 
						|
        "status": "RUNNING",
 | 
						|
        "vnc_socket": "/tmp/tmpj1k6sdo_"
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
Connect to VM using VNC
 | 
						|
-----------------------
 | 
						|
 | 
						|
We would need **socat** utility and a remote desktop client
 | 
						|
e.g Remmina, KRDC etc. We can get the vnc socket path by getting
 | 
						|
its status, see :ref:`how-to-check-vm-status`.
 | 
						|
 | 
						|
 | 
						|
.. code-block:: sh
 | 
						|
 | 
						|
    socat TCP-LISTEN:1234,reuseaddr,fork UNIX-CLIENT:/tmp/tmpj1k6sdo_
 | 
						|
 | 
						|
 | 
						|
Then, launch your remote desktop client and connect to vnc://localhost:1234.
 | 
						|
 | 
						|
Create Network
 | 
						|
--------------
 | 
						|
 | 
						|
Layer 2 Network with sample IPv6 range fd00::/64 (without IPAM and routing)
 | 
						|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
						|
.. code-block:: sh
 | 
						|
 | 
						|
    ucloud-cli network create --network-name mynet --network-type vxlan
 | 
						|
 | 
						|
 | 
						|
Layer 2 Network with /64 network with automatic IPAM
 | 
						|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
						|
.. code-block:: sh
 | 
						|
 | 
						|
    ucloud-cli network create --network-name mynet --network-type vxlan --user True
 | 
						|
 | 
						|
Attach Network to VM
 | 
						|
--------------------
 | 
						|
 | 
						|
Currently, user can only attach network to his/her VM at
 | 
						|
the time of creation. A sample command to create VM with
 | 
						|
a network is as follow
 | 
						|
 | 
						|
.. code-block:: sh
 | 
						|
 | 
						|
    ucloud-cli vm create --vm-name meow2 --cpu 1 --ram '1gb' --os-ssd '4gb' --image images:alpine --network mynet
 | 
						|
 | 
						|
.. _get-list-of-hosts:
 | 
						|
 | 
						|
Get List of Hosts
 | 
						|
-----------------
 | 
						|
 | 
						|
.. code-block:: sh
 | 
						|
 | 
						|
    ucloud-cli host list
 | 
						|
 | 
						|
 | 
						|
Migrate VM
 | 
						|
----------
 | 
						|
 | 
						|
.. code-block:: sh
 | 
						|
 | 
						|
    ucloud-cli vm migrate --vm-name meow --destination server1.place10
 | 
						|
 | 
						|
 | 
						|
.. option:: --destination
 | 
						|
 | 
						|
   The name of destination host. You can find a list of host
 | 
						|
   using :ref:`get-list-of-hosts`
 |