From d9ca9f3eeab0381b28248f3a823eb8e46056f520 Mon Sep 17 00:00:00 2001 From: zhouli57 Date: Tue, 15 Feb 2022 17:12:35 +0800 Subject: [PATCH 1/5] docs: update the document, remove the other features title. Signed-off-by: zhouli57 --- docs/config_guidebook.md | 110 +++++++++++++-------------- docs/interconnect_with_libvirt.ch.md | 2 +- docs/interconnect_with_libvirt.md | 2 +- docs/qmp.md | 16 ++-- docs/quickstart.ch.md | 2 +- docs/quickstart.md | 2 +- docs/snapshot.md | 2 +- 7 files changed, 68 insertions(+), 68 deletions(-) diff --git a/docs/config_guidebook.md b/docs/config_guidebook.md index e0b8bdc..7594dfe 100644 --- a/docs/config_guidebook.md +++ b/docs/config_guidebook.md @@ -131,6 +131,52 @@ If you want to use initrd as rootfs, `root=/dev/ram` and `rdinit=/bin/sh` must b -initrd /path/to/initrd ``` +### 1.7 Global config + +Users can set the global configuration using the -global parameter. + +One property can be set: + +* pcie-root-port.fast-unplug: the fast unplug feature switch, only Kata is supported. + +```shell +-global pcie-root-port.fast-unplug=1 +``` + +### 1.8 Logging + +StratoVirt supports to output log to stderr and log file. + +You can enable StratoVirt's logging by: + +```shell +# Output log to stderr +-D +# Output log to log file +-D /path/to/log/file +``` + +StratoVirt's log-level depends on env `STRATOVIRT_LOG_LEVEL`. +StratoVirt supports five log-levels: `trace`, `debug`, `info`, `warn`, `error`. The default level is `error`. + +### 1.9 Daemonize + +StratoVirt supports to run as a daemon. + +```shell +# cmdline +-daemonize +``` + +**When run StratoVirt as a daemon, you are not allowed to bind serial with stdio or output log to stdio.** + +And you can also restore StratoVirt's **pid number** to a file by: + +```shell +# cmdline +-pidfile /path/to/pidfile +``` + ## 2. Device Configuration For machine type "microvm", only virtio-mmio and legacy devices are supported. @@ -492,7 +538,8 @@ Five properties can be set for chardev. -chardev file,id=chardev_id,path=file_path ``` -### 2.13 Trace +## 3. Trace + Users can specify the configuration file which lists events to trace. One property can be set: @@ -503,38 +550,7 @@ One property can be set: -trace events= ``` -### 2.14 Global config -Users can set the global configuration using the -global parameter. - -One property can be set: - -* pcie-root-port.fast-unplug: the fast unplug feature switch, only Kata is supported. - -```shell --global pcie-root-port.fast-unplug=1 -``` - -## 3. Other Features - -### 3.1 Daemonize - -StratoVirt supports to run as a daemon. - -```shell -# cmdline --daemonize -``` - -**When run StratoVirt as a daemon, you are not allowed to bind serial with stdio or output log to stdio.** - -And you can also restore StratoVirt's **pid number** to a file by: - -```shell -# cmdline --pidfile /path/to/pidfile -``` - -### 3.2 Seccomp +## 4. Seccomp StratoVirt use [seccomp(2)](https://man7.org/linux/man-pages/man2/seccomp.2.html) to limit the syscalls in StratoVirt process by default. It will make a slight influence on performance to StratoVirt. @@ -558,27 +574,11 @@ If you want to disable seccomp, you can run StratoVirt with `-disable-seccomp`. -disable-seccomp ``` -### 3.3 Logging - -StratoVirt supports to output log to stderr and log file. - -You can enable StratoVirt's logging by: - -```shell -# Output log to stderr --D -# Output log to log file --D /path/to/log/file -``` - -StratoVirt's log-level depends on env `STRATOVIRT_LOG_LEVEL`. -StratoVirt supports five log-levels: `trace`, `debug`, `info`, `warn`, `error`. The default level is `error`. - -### 3.4 Snapshot and Restore +## 5. Snapshot and Restore StratoVirt supports to take a snapshot of a paused VM as VM template. This template can be used to warm start a new VM. Warm start skips the kernel boot stage and userspace initialization stage to boot VM in a very short time. -#### 3.4.1 Restore from VM template +### 5.1 Restore from VM template Restore from VM template with below command: ```shell @@ -597,11 +597,11 @@ $ ./stratovirt \ See [Snapshot and Restore](./snapshot.md) for details. -## 4. Ozone +## 6. Ozone Ozone is a lightweight secure sandbox for StratoVirt, it provides secure environment for StratoVirt by limiting resources of StratoVirt using 'namespace'. Please run ozone with root permission. -### 4.1 Usage +### 6.1 Usage Ozone can be launched by the following commands: ```shell $ ./ozone \ @@ -632,7 +632,7 @@ About the arguments: * `cgroup` : set cgroup controller value. supported controller: `cpuset.cpus` and `memory.limit_in_bytes`. * `--` : these two dashes are used to splite args, the args followed are used to launched StratoVirt. -### 4.2 Example +### 6.2 Example As ozone uses a directory to mount as a root directory, after ozone is launched, the directory "/srv/zozne/{exec_file}/{name}" will be created. (Where, `exec_file` is the executable binary file, usually it is `stratovirt`, while `name` is the name of ozone, it is given by users, but the length of it should be no more than 255 bytes.) In order to run ozone normally, please make sure that the directory "/srv/zozne/{exec_file}/{name}" does not exists before launching ozone. On top of that, the path-related arguments are different. They are all in the current(`./`) directory. @@ -677,7 +677,7 @@ $ ./ozone \ -clean-resource ``` -## 5. Libvirt +## 7. Libvirt Libvirt launches StratoVirt by creating cmdlines. But some of these commands such as: cpu, overcommit, uuid, no-user-config, nodefaults, sandbox, msg, rtc, no-shutdown, nographic, realtime, display, usb, mem-prealloc and boot, are not supported by StratoVirt. diff --git a/docs/interconnect_with_libvirt.ch.md b/docs/interconnect_with_libvirt.ch.md index be5313c..d0323e2 100644 --- a/docs/interconnect_with_libvirt.ch.md +++ b/docs/interconnect_with_libvirt.ch.md @@ -1,5 +1,5 @@ # libvirt -Libvirt是StratoVirt的管理软件,它是通过创建命令行来运行StratoVirt和发送qmp命令来管理StratoVirt。目前,支持五个virsh命令来管理StratoVirt: +Libvirt是StratoVirt的管理软件,它是通过创建命令行来运行StratoVirt和发送QMP命令来管理StratoVirt。目前,支持五个virsh命令来管理StratoVirt: `virsh create`, `virsh destroy`, `virsh suspend`, `virsh resume` 和 `virsh console`. diff --git a/docs/interconnect_with_libvirt.md b/docs/interconnect_with_libvirt.md index 787afae..88ec77f 100644 --- a/docs/interconnect_with_libvirt.md +++ b/docs/interconnect_with_libvirt.md @@ -1,6 +1,6 @@ # libvirt Libvirt is one of manager for StratoVirt, it manages StratoVirt by creating cmdlines to launch StratoVirt -and giving commands via qmp. Currently, five virsh commands are supported to manage StratoVirt: +and giving commands via QMP. Currently, five virsh commands are supported to manage StratoVirt: `virsh create`, `virsh destroy`, `virsh suspend`, `virsh resume` and `virsh console`. diff --git a/docs/qmp.md b/docs/qmp.md index 215cb57..be933fa 100644 --- a/docs/qmp.md +++ b/docs/qmp.md @@ -3,13 +3,13 @@ ## Introduction StratoVirt controls VM's lifecycle and external api interface with [QMP](https://wiki.qemu.org/Documentation/QMP) - in current version. + in the current version. -## qmp Creation +## QMP Creation -When running StratoVirt, you must create qmp in cmdline arguments as a management interface. +When running StratoVirt, you must create QMP in cmdline arguments as a management interface. -StratoVirt supports UnixSocket-type qmp, you can set it by: +StratoVirt supports UnixSocket-type QMP, you can set it by: ```shell # cmdline @@ -17,7 +17,7 @@ StratoVirt supports UnixSocket-type qmp, you can set it by: ``` Where, the information about 'server' and 'nowait' can be found in [section 2.12 Chardev](#212-chardev) -On top of that, monitor can be used to create qmp connection as well. +On top of that, monitor can be used to create QMP connection as well. The following commands can be used to create a monitor. Three properties can be set for monitor. @@ -33,11 +33,11 @@ Three properties can be set for monitor. -mon chardev=chardev_id,id=monitor_id,mode=control ``` -## qmp Connection +## QMP Connection -After StratoVirt started, you can connect to StratoVirt's qmp and manage it by QMP. +After StratoVirt started, you can connect to StratoVirt's QMP and manage it by QMP. -Several steps to connect qmp are showed as following: +Several steps to connect QMP are showed as following: ```shell # Start with UnixSocket diff --git a/docs/quickstart.ch.md b/docs/quickstart.ch.md index 02a3ea5..29e1496 100644 --- a/docs/quickstart.ch.md +++ b/docs/quickstart.ch.md @@ -72,7 +72,7 @@ socket_path=`pwd`"/stratovirt.sock" kernel_path=`pwd`"/vmlinux.bin" rootfs_path=`pwd`"/rootfs.ext4" -# 保证qmp通信socket文件路径可以被创建。 +# 保证QMP通信socket文件路径可以被创建。 rm -f ${socket_path} # 通过StratoVirt启动轻量化机型的Linux客户机。 diff --git a/docs/quickstart.md b/docs/quickstart.md index ce9af50..add534c 100644 --- a/docs/quickstart.md +++ b/docs/quickstart.md @@ -75,7 +75,7 @@ socket_path=`pwd`"/stratovirt.sock" kernel_path=`pwd`"/vmlinux.bin" rootfs_path=`pwd`"/rootfs.ext4" -# Make sure qmp can be created. +# Make sure QMP can be created. rm -f ${socket_path} # Start linux VM with machine type "microvm" by StratoVirt. diff --git a/docs/snapshot.md b/docs/snapshot.md index dbecc7f..a8ebffd 100644 --- a/docs/snapshot.md +++ b/docs/snapshot.md @@ -59,7 +59,7 @@ The device configuration must be the same with template VM. Its cpu number, gues ## Snapshot state check -Use qmp command `query-migrate` to check snapshot state: +Use QMP command `query-migrate` to check snapshot state: ```shell $ ncat -U path/to/socket {"QMP":{"version":{"StratoVirt":{"micro":1,"minor":0,"major":0},"package":""},"capabilities":[]}} -- 2.25.1