Commit graph

241 commits

Author SHA1 Message Date
Hannes Mehnert e58ab236b7 vmmd: lock self_destruct with a mutex, respect result of killall (nothing killed, nothing to do) 2019-01-20 22:09:33 +01:00
Hannes Mehnert d84013103c vmmd: revise process, write_reply, and out signatures, move process to jump 2019-01-20 22:09:33 +01:00
Hannes Mehnert d4e31da27f vmmd: setup and teardown stat by create continuation, and vmm_vmmd.handle_shutdown 2019-01-20 22:09:33 +01:00
Hannes Mehnert fdcea94a0b vmmd: store waiter, not tasks in Vmm_vmmd.t -- create task and waiter on demand (destroy / create --force), instead of at each unikernel creation 2019-01-20 22:09:33 +01:00
Hannes Mehnert fc63a89429 Vmm_unix: use Sys.sigterm (and rely on caml_convert_signal_number to be cross-platform) 2019-01-20 20:37:30 +01:00
Hannes Mehnert dfd22be62b Vmm_unix: don't reset image of a config 2019-01-20 20:35:55 +01:00
Hannes Mehnert accb21b8b7 Vmm_unix.exec: rename vm to config 2019-01-20 20:35:26 +01:00
Hannes Mehnert 25ca62bf69 Vmmd_tls_inetd: remove unused open Vmm_cli 2019-01-20 20:32:16 +01:00
Hannes Mehnert d30e118c76 Vmm_core.Name: use 'vm:' instead of 'name' as literal string to print 2019-01-20 20:31:40 +01:00
Hannes Mehnert f64583c74c vmm_stats: don't attempt to open vmctx in add_pid, only in gather 2019-01-20 20:29:51 +01:00
Hannes Mehnert 15e1f5ecf6 vmm_unix: ensure lazy uname being called only once 2019-01-20 20:28:51 +01:00
Hannes Mehnert 7b8f8fafbd close fd early, no need to carry file descriptors around 2019-01-20 17:43:44 +01:00
Hannes Mehnert 094922f6b0 vmmd: teardown gracefully (kill all vms), install SIGTERM handler to teardown 2019-01-18 01:14:11 +01:00
Hannes Mehnert 2f1197aad1 vmm_stats: if sysctl rusage fails, remove vm from stats gathering 2019-01-15 00:39:59 +01:00
Hannes Mehnert 58bd77bc5f stats: pass bridge device through, vmm device name as well to allow arbitrary bhyve statistics, vmmc_local: add stats_add and stats_remove subcommands 2019-01-15 00:25:59 +01:00
Hannes Mehnert c0189178e5 fixes 2019-01-13 22:02:16 +01:00
Hannes Mehnert 623a449ea2 log at info if nobody is interested in stats 2019-01-06 03:52:37 +01:00
Hannes Mehnert cd01611efb vmmd_stat: use correct id to remove socket 2019-01-06 03:00:16 +01:00
Hannes Mehnert 21262dd891 require ipaddr with Ipaddr.V4.pp 2019-01-06 01:57:29 +01:00
Hannes Mehnert fd4a5a5e22 inspect kinfo_proc structure for information about:
- virtual size
- resident size (in pages)
- text size (in pages)
- data size (in pages)
- stack size (in pages)

develop independent vmmc_stat for testing (not installed)
2019-01-06 01:12:56 +01:00
Hannes Mehnert 030f5aa379 vmm_unix, create_block: first create file, and then truncate 2018-12-07 00:07:16 +01:00
Hannes Mehnert 325f6c3b22 vmmd_log: handle sighup properly (to support newsyslog / logrotate) 2018-12-06 22:56:19 +01:00
Hannes Mehnert bda342f136 re-support parsing of AV2 log entries, document path forward strategy 2018-12-06 22:55:13 +01:00
Hannes Mehnert e28ea84548 Log: new event `Hup 2018-12-06 22:53:15 +01:00
Hannes Mehnert 39bc40353c Vmmd_stats: use lwt_engine.on_timer for stats reporting instead of custom made let rec timer .. = sleep interval 2018-12-06 21:40:52 +01:00
Hannes Mehnert 6724c44700 [ci skip] update readme 2018-11-23 21:55:20 +01:00
Hannes Mehnert 0ced2ebad1 fix days in generate 2018-11-23 21:13:54 +01:00
Hannes Mehnert b5a068555c vmmd_tlS_inetd 2018-11-23 21:07:36 +01:00
Hannes Mehnert eee1a4cb91 use less bandwidth, and more compression 2018-11-14 20:09:43 +01:00
Hannes Mehnert f9cb93b1bc vmmd_log: output number of entries read from disk 2018-11-13 01:05:09 +01:00
Hannes Mehnert c8f1030403 rename Vm to Unikernel 2018-11-13 01:02:05 +01:00
Hannes Mehnert 85372b0c7e rework resources: now block, vms, and policies are in separate tries 2018-11-13 00:06:43 +01:00
Hannes Mehnert b5c9cdea6a cleanups 2018-11-12 22:19:39 +01:00
Hannes Mehnert dec32e6247 bump wire version 2018-11-12 22:11:06 +01:00
Hannes Mehnert 8ccda0e410 refactor bridge: use a string instead of a complicated thing 2018-11-12 22:07:45 +01:00
Hannes Mehnert 2e7f2730a2 move Vm to submodule 2018-11-11 03:24:50 +01:00
Hannes Mehnert 561ba5c5df put Policy in a submodule 2018-11-11 03:09:37 +01:00
Hannes Mehnert 89a1d30154 cleanups in respect to directories and scope 2018-11-11 02:33:00 +01:00
Hannes Mehnert 43379d6d9d rename Vmm_core.id to Vmm_core.Name.t and make it private - also check constructors to fit into 20 chars ldh (and in Vmm_tls max depth = 10) 2018-11-11 01:44:31 +01:00
Hannes Mehnert 6dcde8eb68 block device support 2018-11-11 00:01:56 +01:00
Hannes Mehnert 6945d21422 Vmm_core.drop_super / is_sub_id: fix function (used to assume reverse ordered labels) 2018-11-09 01:27:22 +01:00
Hannes Mehnert 007210168d
Merge pull request #18 from sg2342/freebsd-system-services
Freebsd system services
2018-11-08 10:08:26 +01:00
Stefan Grundmann 79f06d57e8 FreeBSD rc scripts: fix precmd in _tls and _influx 2018-11-08 08:55:56 +00:00
Stefan Grundmann cd911ae68d FreeBSD rc scripts: echo start/stop actions
behave like all the other rc scripts
2018-11-08 08:55:56 +00:00
Hannes Mehnert 0bc0f7be7f
Merge pull request #17 from sg2342/freebsd-system-services
Freebsd system services
2018-11-08 09:52:31 +01:00
Stefan Grundmann 438b9325db FreeBSD rc scripts: remove nojail keyword
since it can be deployed in jails
2018-11-08 08:42:48 +00:00
Stefan Grundmann 2e433be569 FreeBSD rc scripts: fix albatross_x stop, status 2018-11-08 07:59:10 +00:00
Stefan Grundmann fb149952de FreeBSD rc scripts: do not quote albatross_*_flags in daemon(8) call
the various /usr/local/libexec/albatross/vmmd* programs are not
happy when called with argv[1] set to an empty string ...
which is what happens if albatross_*_flags is the default value
2018-11-08 07:51:37 +00:00
Hannes Mehnert 75372a792f fix resource policies. it was checking too many vms:
vm foo.bar is active with 32mb
add_policy bar --mem 16 <- failed :/

what is checked on add_policy <id> <new-policy>?
- all policies above <id> that <new policy> is a sub-policy
- all policies below <id> that each is a sub-policy of <new-policy>
- resource usage of vms below <id> is within <new-policy> limits (number of vms, memory, network access, cpuids)
2018-11-03 00:05:10 +01:00
Hannes Mehnert 79068c8abf error logging on error in handle_command 2018-11-03 00:04:47 +01:00