Joshua Boniface
ad5f232c03
Update header names
2019-10-13 12:11:23 -04:00
Joshua Boniface
03447d3374
Update copyright string year to include 2019
2019-10-13 12:09:51 -04:00
Joshua Boniface
a9e9198970
Rename API library file
2019-10-13 12:07:57 -04:00
Joshua Boniface
116013695f
Fix bugs with bad strings
2019-10-12 18:43:29 -04:00
Joshua Boniface
01c8986381
Update help messages in meta command
2019-10-12 02:08:52 -04:00
Joshua Boniface
75d95bbef7
Fix minor bugs
2019-10-12 02:03:23 -04:00
Joshua Boniface
18fc49fc6c
Use node instead of hypervisor consistently
2019-10-12 01:59:08 -04:00
Joshua Boniface
0763bd2d51
Fix minor bugs
2019-10-12 01:55:37 -04:00
Joshua Boniface
e5393082b6
Use build-in selector and respect limits in client
...
Use the new built-in selector option, as well as respecting node limits,
when performing migrate or move actions on a VM via the clients.
2019-10-12 01:45:44 -04:00
Joshua Boniface
8dc0c8f0ac
Fix minor bugs
2019-10-12 01:36:50 -04:00
Joshua Boniface
5995353597
Implement VM metadata and use it
...
Implements the storing of three VM metadata attributes:
1. Node limits - allows specifying a list of hosts on which the VM must
run. This limit influences the migration behaviour of VMs.
2. Per-VM node selectors - allows each VM to have its migration
autoselection method specified, to automatically allow different methods
per VM based on the administrator's preferences.
3. VM autorestart - allows a VM to be automatically restarted from a
stopped state, presumably due to a failure to find a target node (either
due to limits or otherwise) during a flush/fence recovery, on the next
node unflush/ready state of its home hypervisor. Useful mostly in
conjunction with limits to ensure that VMs which were shut down due to
there being no valid migration targets are started back up when their
node becomes ready again.
Includes the full client interaction with these metadata options,
including printing, as well as defining a new function to modify this
metadata. For the CLI it is set/modified either on `vm define` or via the
`vm meta` command. For the API it is set/modified either on a POST to
the `/vm` endpoint (during VM definition) or on POST to the `/vm/<vm>`
endpoint. For the API this replaces the previous reserved word for VM
creation from scratch as this will no longer be implemented in-daemon
(see #22 ).
Closes #52
2019-10-12 01:17:39 -04:00
Joshua Boniface
94501f400f
Remove vm add command
...
This is likely not going to be used with the planned implementation of
the automatic provisioning daemon, which will be either an API client or
direct Python binding client.
2019-10-11 23:52:20 -04:00
Joshua Boniface
aaf9f5e43b
Add clone volume to API
2019-10-10 14:37:35 -04:00
Joshua Boniface
6c9b49d7cd
Add clone volume command to CLI
2019-10-10 14:11:13 -04:00
Joshua Boniface
f6b40911f8
Revert "Add base CLI for deploy section"
...
This reverts commit ed43c70f61
.
2019-10-10 14:09:40 -04:00
Joshua Boniface
1c44a1a26e
Revert "Add base CLI for deploy image section"
...
This reverts commit f918058e6e
.
2019-10-10 14:09:33 -04:00
Joshua Boniface
76e6b42389
Add clone_volume backend command
2019-10-10 14:09:07 -04:00
Joshua Boniface
b0175eafcb
Fix bug in output
2019-09-27 11:25:36 -04:00
Joshua Boniface
63cf90b23d
Add Python header to ceph.py
2019-09-26 14:07:52 -04:00
Joshua Boniface
f918058e6e
Add base CLI for deploy image section
2019-09-09 10:57:36 -04:00
Joshua Boniface
3942f21f11
Build with sudo too, if needed
2019-09-07 12:32:21 -04:00
Joshua Boniface
0c9d6db14f
Gracefully handle log following output
...
If the Zookeeper node goes away (e.g. VM is deleted), return a
reasonable error message instead of a stack trace.
2019-09-07 12:30:31 -04:00
Joshua Boniface
983daceaed
Fix shutdown abort during restart
...
Restart state, being different from shutdown, would trigger an abort of
the shutdown. Fix this by including restart in the valid states to
continue.
2019-09-07 12:08:31 -04:00
Joshua Boniface
ed43c70f61
Add base CLI for deploy section
2019-08-25 21:18:33 -04:00
Joshua Boniface
5158cec0ec
Implement configurable replcfg (documentation)
...
Implements administrator-selectable replication configurations for new
pools in PVC clusters, overriding the default of copies=3,mincopies=2.
2019-08-23 22:14:28 -04:00
Joshua Boniface
7c4d18691a
Implement configurable replcfg (node-side)
...
Implements administrator-selectable replication configurations for new
pools in PVC clusters, overriding the default of copies=3,mincopies=2.
2019-08-23 21:58:54 -04:00
Joshua Boniface
3b7c1adf71
Implement configurable replcfg (client-side)
...
Implements administrator-selectable replication configurations for new
pools in PVC clusters, overriding the default of copies=3,mincopies=2.
2019-08-23 14:12:15 -04:00
Joshua Boniface
0bacae21d7
Correct artifact location
2019-08-20 09:40:18 -04:00
Joshua Boniface
9bee1ac94c
Correct typo
2019-08-20 09:37:36 -04:00
Joshua Boniface
268fbd10e7
Fix call to build-deb.sh
2019-08-20 09:36:38 -04:00
Joshua Boniface
d938bcd44c
Use in-repo build-deb script in CI
2019-08-20 09:24:47 -04:00
Joshua Boniface
5876f4589b
Add little easter egg to the init command
...
Because who doesn't like David Wilcox?
2019-08-20 09:19:56 -04:00
Joshua Boniface
53ab6969a4
Update CI to 0.5
2019-08-13 11:31:15 -04:00
Joshua Boniface
267a3d16e5
Bump version to 0.5
2019-08-08 20:56:27 -04:00
Joshua Boniface
795ca0777c
Update README badges
2019-08-08 20:48:28 -04:00
Joshua Boniface
48764f2e70
Correct spelling in all documentation
2019-08-08 20:36:25 -04:00
Joshua Boniface
427ef9454a
Use dash in flush-locks command
2019-08-07 17:50:25 -04:00
Joshua Boniface
2880a761c0
Move Ceph command pipe to new location
...
Matching the new /cmd/domain pipe, move Ceph pipe to /cmd/ceph.
2019-08-07 14:47:27 -04:00
Joshua Boniface
ea2426fa73
Implement additional functions
...
1. VM state
2. VM node
3. Lock flush
2019-08-07 14:46:20 -04:00
Joshua Boniface
b7546e3711
Fix bugs in command pipeline for VMs
2019-08-07 14:13:01 -04:00
Joshua Boniface
0ff2d7d537
Use shlex for command splitting
...
This will preserve quoted strings, required for the rbd lock commands.
2019-08-07 14:02:57 -04:00
Joshua Boniface
a2a630f6a0
Add pipeline for VM lock flush cmd
2019-08-07 13:49:33 -04:00
Joshua Boniface
d63d9637a5
Add flush_locks command to CLI client
2019-08-07 13:42:01 -04:00
Joshua Boniface
43756fc62b
Implement lock flush function for clients
...
Uses a similar command pathway as the Ceph commands do, but in a
different location (pending move of the Ceph commands to a similar
location).
2019-08-07 13:38:49 -04:00
Joshua Boniface
496216321e
Move lock flushing to VMInstance
...
Prepares for reuse of this function via client commands.
2019-08-07 13:36:56 -04:00
Joshua Boniface
fac02f8520
Add hosts element to Ansible doc
2019-08-07 12:50:03 -04:00
Joshua Boniface
0446b2db02
Catch exceptions if Patroni is not up
2019-08-07 11:46:58 -04:00
Joshua Boniface
7e77752ce5
Add limit to Patroni switchover attempts
2019-08-07 11:46:42 -04:00
Joshua Boniface
33a963c2af
Improve fence output on failure and increase delay
2019-08-07 11:35:49 -04:00
Joshua Boniface
e92a57606d
Use better forceful arping command
...
Send ARP responses with the source IP in it to force update even if the
old primary did not cleanly terminate (during fencing for instance).
2019-08-07 11:29:38 -04:00