Commit graph

702 commits

Author SHA1 Message Date
Nico Schottelius
a4bedb01f6 [api] begin to move to configparser 2019-12-08 13:00:42 +01:00
Nico Schottelius
6d0ce65f5c begin to switch to configparser
To not have unwanted environment influence
2019-12-08 12:59:18 +01:00
Nico Schottelius
e459434b91 add sample ucloud.conf 2019-12-08 12:58:26 +01:00
Nico Schottelius
cfb09c29de simplify main script 2019-12-08 12:28:25 +01:00
Nico Schottelius
9517e73233 Migrate sanity_check.py into the respective daemons 2019-12-07 14:25:21 +01:00
Nico Schottelius
f9dbdc730a Remove logging configuration
Leave it to the OS/env to set this up.

Fixes #6
2019-12-07 14:15:48 +01:00
Nico Schottelius
2244b94fd8 Fix another UndefinedValueError: VM_DIR
decouple.UndefinedValueError: VM_DIR not found. Declare it as envvar or define a default value.
2019-12-07 14:10:16 +01:00
Nico Schottelius
9ae75f20e8 Generate version from git
Fixes #3
2019-12-07 14:01:44 +01:00
Nico Schottelius
6d715e8348 [config] setup default values to remove startup failures 2019-12-07 13:51:50 +01:00
Nico Schottelius
40176d2eaf Allow non existing configuration file
Fixes #1.
2019-12-07 13:45:01 +01:00
Nico Schottelius
34d9dc1f73 [install] use scripts/ 2019-12-07 13:23:48 +01:00
Nico Schottelius
57eaddb03f fix checkout support 2019-12-07 13:09:12 +01:00
Nico Schottelius
6596e482ca ignore version.py (generated dynamically) 2019-12-07 13:08:55 +01:00
Nico Schottelius
ba9ac4c754 add shell wrapper for running ucloud from checkout 2019-12-07 12:58:51 +01:00
Nico Schottelius
424c0d27b2 update readme 2019-12-07 12:54:52 +01:00
Nico Schottelius
a31dd38343 [docs] add "clean" target 2019-12-07 12:53:41 +01:00
Nico Schottelius
1f0dc30730 more doc cleanups 2019-12-07 12:46:39 +01:00
Nico Schottelius
a8c20e5a30 ++doc cleanup 2019-12-07 12:01:59 +01:00
Nico Schottelius
4a6f119a93 cleanup docs #1 2019-12-07 11:24:04 +01:00
Nico Schottelius
95361c1759 Ignore local etcd config directory 2019-12-07 10:50:52 +01:00
Nico Schottelius
9f03f58d62 ++net notes
Signed-off-by: Nico Schottelius <nico@nico-notebook.schottelius.org>
2019-12-07 00:49:57 +01:00
ad87982cf0 ucloud now logs to /etc/ucloud/log.txt, delete network interfaces on stopping of VMs 2019-12-05 18:30:41 +05:00
abc2c6fe51 LICENSE added + fixed some imports 2019-12-03 16:49:10 +05:00
1e7300b56e Efforts to make ucloud a python package 2019-12-03 15:40:41 +05:00
bbe09667a6 fixed tap id for each NIC, add more logging when VM is declared killed 2019-11-28 13:04:53 +05:00
66b7cf525f alternative radvd restart command added 2019-11-27 23:48:38 +05:00
46c14306ec otp verification endpoint corrected 2019-11-27 22:20:33 +05:00
db7fcdd66f add rc-scripts and confs. Make log message clear when host is not found 2019-11-27 19:19:57 +05:00
Nico Schottelius
789e37df6b Merge branch 'master' of code.ungleich.ch:ucloud/ucloud 2019-11-27 11:54:13 +01:00
Nico Schottelius
5be0e26669 ++ hacking in ucloud 2019-11-27 11:54:06 +01:00
fd042eb85d default.etcd removed from .gitignore as it is alpine only issue that forces us to use start-stop-daemon to start etcd cluster which uses the cur dir for storing data 2019-11-27 15:38:26 +05:00
b9faddd3a2 Merge branch 'master' of code.ungleich.ch:ucloud/ucloud 2019-11-27 15:36:05 +05:00
597dedb1ff better etcd inits 2019-11-27 15:35:51 +05:00
Nico Schottelius
e890c45dbf Ignore etcd leftovers 2019-11-27 11:05:01 +01:00
f3f2f6127a Effort is made to ensure a VM always have a status and Unused VM statuses are removed 2019-11-27 12:12:29 +05:00
befb22b9cb TODO.md removed from root 2019-11-25 11:57:16 +05:00
cc0ca68498 * Refactoring
* Fix issue that causes a new image store to be created at every start of ucloud-api.
* VM Migration API call now takes hostname instead of host key.
* StorageHandler Classes are introduced. They transparently handles things related to importing of image, make vm out of image, resize vm image, delete vm image etc.
* Loggers added to __init__.py of every ucloud component's subpackage.
* Non-Trivial Timeout Events are no longer logged.
* Fix issue that prevents removal of stopped VMs (i.e VMs that are successfully migrated).
* Improved unit handling added. e.g MB, Mb, mB, mb are all Mega Bytes.
* VM migration is now possible on IPv6 host.
* Destination VM (receiving side of migration of a vm) now correctly expects incoming data on free ephemeral port.
* Traceback is no longer output to screen, instead it goes to log file.
* All sanity checks are put into a single file. These checks are run by ucloud.py before running any of ucloud component.
2019-11-25 11:52:36 +05:00
6fa77bce4d Remove ucloud_common and put its files under ucloud.common subpackage.
Remove individual config.py used by every component and put them into single config.py ucloud/config.py
Use /etc/ucloud/ucloud.conf for Environment Variables
Refactoring and a lot of it
Make ucloud repo a package and different components of ucloud a subpackage for avoiding code duplication.
Improved logging.
2019-11-18 22:39:57 +05:00
Nico Schottelius
1d2b980c74 [doc] fix permissions before publishing 2019-11-17 18:51:39 +01:00
Nico Schottelius
21df2367bb [doc] Add guide on how to create VMs for ucloud 2019-11-17 18:49:40 +01:00
fefbe2e1c7 More Networking Implementation 2019-11-15 21:11:45 +05:00
f6eb2ec01f Remove warning of vxlan not working | Docs Updated 2019-11-12 16:33:20 +05:00
5d613df33d Image Creation Message Corrected + ucloud-host read Physical Device for VXLAN from .env 2019-11-12 15:26:10 +05:00
e37222c1c7 ucloud-host can not be started by using hostname 2019-11-12 11:50:41 +05:00
da5a600ccb single node,w/o ceph networking implemented 2019-11-11 23:42:57 +05:00
2a66be07a6 Merge branch 'master' of code.ungleich.ch:ucloud/ucloud 2019-11-02 20:51:14 +05:00
93dee1c9fc New Features + Refactoring
1. User can now use image name instead of image uuid when creation vm.
   For Example, now user can create an alpine vm using the following
   command
   ```shell
   ucloud-cli vm create --vm-name myvm --cpu 2 --ram '2GB' \
       --os-ssd '10GB' --image images:alpine
   ```
2. Instead of directly running code, code is now placed under a function
   main and is called using the following code
   ```python
   if __name__ == "__main__":
       main()
   ```
3. Multiprocess (Process) is used instead of threading (Thread) to update
   heart beat of host.
4. IP Address of vm is included in vm's status which is retrieved by the
   following command
   ```shell
   ucloud-cli vm status --vm-name myvm
   ```
2019-11-02 20:42:24 +05:00
Nico Schottelius
583bbe34bc ++ network ideas 2019-11-01 23:13:40 +01:00
Nico Schottelius
1a76150d4d ++ network readme update 2019-11-01 21:51:28 +01:00
Nico Schottelius
b27f1b62f3 network: up the dev
some kernels do that automatically, some don't
2019-11-01 17:54:02 +01:00