From 1f0dc30730b051c40b706ed9cfccbaabfc3ddf17 Mon Sep 17 00:00:00 2001 From: Nico Schottelius Date: Sat, 7 Dec 2019 12:46:39 +0100 Subject: [PATCH] more doc cleanups --- .../usage-for-admins.rst => admin-guide} | 0 ucloud/docs/source/index.rst | 12 ++-- ucloud/docs/source/installation/archlinux.rst | 25 ------- ucloud/docs/source/introduction.rst | 70 +++++-------------- .../docs/source/introduction/howitworks.rst | 24 ------- ucloud/docs/source/introduction/whatis.rst | 34 --------- .../alpine.rst => setup-install.rst} | 57 +++++++++++---- ...roubleshooting.rst => troubleshooting.rst} | 0 ucloud/docs/source/user-guide.rst | 4 +- .../how-to-create-an-os-image-for-ucloud.rst | 0 10 files changed, 66 insertions(+), 160 deletions(-) rename ucloud/docs/source/{usage/usage-for-admins.rst => admin-guide} (100%) delete mode 100644 ucloud/docs/source/installation/archlinux.rst delete mode 100644 ucloud/docs/source/introduction/howitworks.rst delete mode 100644 ucloud/docs/source/introduction/whatis.rst rename ucloud/docs/source/{installation/alpine.rst => setup-install.rst} (88%) rename ucloud/docs/source/{troubleshooting/installation-troubleshooting.rst => troubleshooting.rst} (100%) rename ucloud/docs/source/{usage => user-guide}/how-to-create-an-os-image-for-ucloud.rst (100%) diff --git a/ucloud/docs/source/usage/usage-for-admins.rst b/ucloud/docs/source/admin-guide similarity index 100% rename from ucloud/docs/source/usage/usage-for-admins.rst rename to ucloud/docs/source/admin-guide diff --git a/ucloud/docs/source/index.rst b/ucloud/docs/source/index.rst index 74427b5..879ac32 100644 --- a/ucloud/docs/source/index.rst +++ b/ucloud/docs/source/index.rst @@ -11,13 +11,11 @@ Welcome to ucloud's documentation! :caption: Contents: introduction - users-guide - - installation/alpine - installation/archlinux - usage/usage-for-admins - - usage/how-to-create-an-os-image-for-ucloud + user-guide + setup-install + admin-guide + user-guide/how-to-create-an-os-image-for-ucloud + troubleshooting Indices and tables diff --git a/ucloud/docs/source/installation/archlinux.rst b/ucloud/docs/source/installation/archlinux.rst deleted file mode 100644 index b2a7f86..0000000 --- a/ucloud/docs/source/installation/archlinux.rst +++ /dev/null @@ -1,25 +0,0 @@ -Arch Linux ----------- - -Requirements from Arch Linux -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -.. code-block:: sh - :linenos: - - pacman -Syu qemu - - -Requirements from AUR -~~~~~~~~~~~~~~~~~~~~~ - -Use your favorite AUR manager to install the following packages: - -* etcd - - -Other -~~~~~ -Continue like Alpine for - -* uotp diff --git a/ucloud/docs/source/introduction.rst b/ucloud/docs/source/introduction.rst index eba2020..22a8ba5 100644 --- a/ucloud/docs/source/introduction.rst +++ b/ucloud/docs/source/introduction.rst @@ -23,45 +23,14 @@ different use cases: Architecture ------------ +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. +All interactions with the clients are done through an API. +ucloud consists of the following components: -suuuuuuubsub -^^^^^^^^^^^^ - -and following a - -para -"""" - -para2? - -para2! -"""""" -mo moo! - -Introduction - -What is ucloud? -~~~~~~~~~~~~~~~ - - - -Tech Stack ----------- -* Python 3 as main language. -* Flask for APIs. -* JSON for specifications. -* QEMU (+ kvm acceleration) as hypervisor. -* etcd for key/value storage (specifically all metadata e.g Virtual Machine Specifications, Networks Specifications, Images Specifications etc.). -* CEPH for image storage. -* uotp for user authentication. -* netbox for IPAM. -* radvd for Router Advertisement. - - -Components ----------- * API * Scheduler * Host @@ -69,26 +38,21 @@ Components * Image Scanner * Metadata Server * VM Init Scripts (dubbed as ucloud-init)How does ucloud work? -===================== - -ucloud is separeted into 3 systems: - -1. The client side for using ucloud -2. The server side -3. The supporting infrastructure (databases, virtualisation, etc.) -Depending on your use case, select one of the following guides to -continue: +Tech Stack +---------- +The following technologies are utilised: -* I want to use -* I want to operate/run ucloud as a service +* Python 3 +* Flask +* QEMU as hypervisor +* etcd (key/value store) +* radvd for Router Advertisement -Architecture ------------- -Description of the ucloud architecture +Optional components: - -Authentication -~~~~~~~~~~~~~~ +* CEPH for distributed image storage +* uotp for user authentication +* netbox for IPAM diff --git a/ucloud/docs/source/introduction/howitworks.rst b/ucloud/docs/source/introduction/howitworks.rst deleted file mode 100644 index e3278f9..0000000 --- a/ucloud/docs/source/introduction/howitworks.rst +++ /dev/null @@ -1,24 +0,0 @@ -How does ucloud work? -===================== - -ucloud is separeted into 3 systems: - -1. The client side for using ucloud -2. The server side -3. The supporting infrastructure (databases, virtualisation, etc.) - - -Depending on your use case, select one of the following guides to -continue: - -* I want to use -* I want to operate/run ucloud as a service - - -Architecture ------------- -Description of the ucloud architecture - - -Authentication -~~~~~~~~~~~~~~ diff --git a/ucloud/docs/source/introduction/whatis.rst b/ucloud/docs/source/introduction/whatis.rst deleted file mode 100644 index 8f47acc..0000000 --- a/ucloud/docs/source/introduction/whatis.rst +++ /dev/null @@ -1,34 +0,0 @@ -What is ucloud? -=============== - -**Open** + **Simple** + **Easy to hack** + **IPv6 First** - -ucloud is an easy to use cloud management system. - - -It is an alternative to OpenStack, OpenNebula or Cloudstack. - -ucloud is the first cloud management system that puts IPv6 first. ucloud also has an integral ordering process that we missed in existing solutions. - -Tech Stack ----------- -* Python 3 as main language. -* Flask for APIs. -* JSON for specifications. -* QEMU (+ kvm acceleration) as hypervisor. -* etcd for key/value storage (specifically all metadata e.g Virtual Machine Specifications, Networks Specifications, Images Specifications etc.). -* CEPH for image storage. -* uotp for user authentication. -* netbox for IPAM. -* radvd for Router Advertisement. - - -Components ----------- -* API -* Scheduler -* Host -* File Scanner -* Image Scanner -* Metadata Server -* VM Init Scripts (dubbed as ucloud-init) \ No newline at end of file diff --git a/ucloud/docs/source/installation/alpine.rst b/ucloud/docs/source/setup-install.rst similarity index 88% rename from ucloud/docs/source/installation/alpine.rst rename to ucloud/docs/source/setup-install.rst index 87e71ff..421e6c7 100644 --- a/ucloud/docs/source/installation/alpine.rst +++ b/ucloud/docs/source/setup-install.rst @@ -1,20 +1,48 @@ -Installation -============ -This guides includes two type of installation +.. _setup-install: -* File System as Image Storage + Level 2 Network without IPAM and Routing -* CEPH as Image Storage + Level 2 Network with automatic IPAM and Routing - (using Router Advertisement + Netbox) +Installation of ucloud +====================== +To install ucloud, you will first need to install the requirements and +then ucloud itself. -The guide will explicitly mention a section/subsection if it is exclusive to any -one of the above mentioned scenario. +We describe the installation in x sections: + +* Installation overview +* Requirements on Alpine +* Installation on Arch Linux -.. note:: - The instructions assumes the following things - - * User is **root**. - * Base Directory is :file:`/root/`. +Installation overview +--------------------- + +ucloud requires the following components to run: + +* python3 +* an etcd cluster + + +Installation on Arch Linux +-------------------------- + +In Arch Linux, some packages can be installed from the regular +repositories, some packages need to be installed from AUR. + + +System packages +~~~~~~~~~~~~~~~ + +.. code-block:: sh + :linenos: + + pacman -Syu qemu + + +AUR packages +~~~~~~~~~~~~ +Use your favorite AUR manager to install the following packages: + +* etcd + Alpine ------ @@ -150,7 +178,7 @@ Install and configure ucloud git clone https://code.ungleich.ch/ucloud/ucloud.git cd ucloud - + pipenv --three --site-packages pipenv install @@ -293,4 +321,3 @@ your shell profile e.g *~/.profile* alias uotp='cd /root/uotp/ && pipenv run python app.py' and run :code:`source ~/.profile` - diff --git a/ucloud/docs/source/troubleshooting/installation-troubleshooting.rst b/ucloud/docs/source/troubleshooting.rst similarity index 100% rename from ucloud/docs/source/troubleshooting/installation-troubleshooting.rst rename to ucloud/docs/source/troubleshooting.rst diff --git a/ucloud/docs/source/user-guide.rst b/ucloud/docs/source/user-guide.rst index f2ea9b2..f4ce935 100644 --- a/ucloud/docs/source/user-guide.rst +++ b/ucloud/docs/source/user-guide.rst @@ -1,7 +1,7 @@ .. _user-guide: -Usage Guide For End Users -========================= +User Guide +========== Create VM --------- diff --git a/ucloud/docs/source/usage/how-to-create-an-os-image-for-ucloud.rst b/ucloud/docs/source/user-guide/how-to-create-an-os-image-for-ucloud.rst similarity index 100% rename from ucloud/docs/source/usage/how-to-create-an-os-image-for-ucloud.rst rename to ucloud/docs/source/user-guide/how-to-create-an-os-image-for-ucloud.rst