Added Readme
All checks were successful
Build and upload a binary on tag push / build-release (push) Successful in 7m21s
All checks were successful
Build and upload a binary on tag push / build-release (push) Successful in 7m21s
This commit is contained in:
parent
b5579cce84
commit
e4d27e27f5
1 changed files with 28 additions and 0 deletions
28
README.md
Normal file
28
README.md
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
# Welcome to the id assigner
|
||||||
|
|
||||||
|
- [What it does](#description)
|
||||||
|
- [How to use it](#usage)
|
||||||
|
- [Whats left to do](#todo)
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
ID assigner is a daemon that runs on the head node of a slurm cluster.
|
||||||
|
Every node upon waking up, systemd service calls to the API, and gets a id for it's hostname.
|
||||||
|
Upon shutdown, another service calls to the API to remove id from "used" list, so it can be reassigned.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
For now, `sudo` permissions are required only for the first run to place slqlite db into `/var/service/assigner` folder.
|
||||||
|
|
||||||
|
Ignoring test endpoints, requesting
|
||||||
|
- `/api/ip/get` will return an node struct in json form (id:i32, ip:String, created_at:DateTime).
|
||||||
|
- `/api/ip/del` requires Json with field "ip" with the ip of the node that requests it's node id to be removed from usage. It will return Json with the node point that was removed.
|
||||||
|
|
||||||
|
For now API checks that node that is being removed is indeed the one who is asking to be removed (it's an open api for now, no authentication, dont want someone to accidentaly or intentionally to remove the whole cluster from usage).
|
||||||
|
|
||||||
|
|
||||||
|
## Todo
|
||||||
|
|
||||||
|
- [ ] Add systemd services to the repo
|
||||||
|
- [ ] Build as debian package
|
||||||
|
- [ ] Add some authentication (maybe the MUNGE key?)
|
Loading…
Reference in a new issue