Francesco Romani has uploaded a new change for review. Change subject: doc: add basic quickstart for containers ......................................................................
doc: add basic quickstart for containers Change-Id: I0fb768ea97dd719cde9bd5e57e1b7cabe4b0f0ae Signed-off-by: Francesco Romani <[email protected]> --- M README 1 file changed, 57 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/24/59824/1 diff --git a/README b/README index 955dfa9..370028e 100644 --- a/README +++ b/README @@ -32,6 +32,63 @@ The 'vdsm.spec' file demonstrates how to distribute Vdsm as an RPM package. +Containers support +================== + +While Vdsm focus is on managing KVM virtual machines, it could also run +containers alongside virtual machines using popular formats and runtimes, +such as rkt and appc images. + +Containers are reported as special-purpose VMs to the clients, and responds +to the Vdsm API invoked on them. +If a particular container runtime doesn't support an operation, this will +fail with a standard Vdsm error. + +To try this out, you just need to install the 'vdsm-containers subpackage'. +Make sure to restart *both* supervdsmd and vdsmd once that package is installed. +You'll also need to have the container runtime you wish to use installed on +the same host which runs Vdsm. The supported runtimes are: + +- rkt (main supported runtime) +- runc (work in progress) +- docker (very experimental) + +The supported image container formats depend on the container runtime. +For example, modern rkt could run docker images transparently. + +To check if the Vdsm is properly configured to run containers, just do: + +# vdsClient -s 0 getVdsCaps | grep containers + + containers = ['rkt'] + +This means that this Vdsm could also run containers using `rkt`. + +Any Engine >= 3.6 could handle containers - they are just VMs from its perspective. +You just need to set few custom properties. Run this command +on your Engine host: + +# engine-config -s UserDefinedVMProperties='volumeMap=^[a-zA-Z_-]+:[a-zA-Z_-]+$;containerImage=^[a-zA-Z]+(://|)[a-zA-Z]+$;containerType=^(rkt|docker)$' --cver=3.6 + +replace --cver=3.6 with the version of the Engine you are using. +Now restart Ovirt Engine, and log in. + +You can now run any container. The user defined VM properties define +the key settings which are not (yet) exposed in the engine UI. + +- volumeMap allows you to mount any disk inside the container, should you + need any persistence. It is a mapping between disks (e.g. vda) + and mountpoint (e.g. data). The mountpoints are just container-dependent labels. + +- containerImage is the URL or path of any container image supported by your + runtime. E.g. 'docker://redis' + +- containerType allows to select the runtime you want to use (e.g. rkt) + +Please be aware that many settings are ignored by containers, like all +the device configurations. Only memory and CPU settings are honoured. + + Getting Help ============ -- To view, visit https://gerrit.ovirt.org/59824 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0fb768ea97dd719cde9bd5e57e1b7cabe4b0f0ae Gerrit-PatchSet: 1 Gerrit-Project: vdsm Gerrit-Branch: master Gerrit-Owner: Francesco Romani <[email protected]> _______________________________________________ vdsm-patches mailing list [email protected] https://lists.fedorahosted.org/admin/lists/[email protected]
