gitee.com/leisunstar/runtime@v0.0.0-20200521203717-5cef3e7b53f9/cli/config/configuration-fc.toml.in (about)

     1  # Copyright (c) 2017-2019 Intel Corporation
     2  #
     3  # SPDX-License-Identifier: Apache-2.0
     4  #
     5  
     6  # XXX: WARNING: this file is auto-generated.
     7  # XXX:
     8  # XXX: Source file: "@CONFIG_FC_IN@"
     9  # XXX: Project:
    10  # XXX:   Name: @PROJECT_NAME@
    11  # XXX:   Type: @PROJECT_TYPE@
    12  
    13  [hypervisor.firecracker]
    14  path = "@FCPATH@"
    15  # Path for the jailer specific to firecracker
    16  # If the jailer path is not set kata will launch firecracker
    17  # without a jail. If the jailer is set firecracker will be
    18  # launched in a jailed enviornment created by the jailer
    19  # This is disabled by default as additional setup is required
    20  # for this feature today.
    21  #jailer_path = "@FCJAILERPATH@"
    22  kernel = "@KERNELPATH_FC@"
    23  image = "@IMAGEPATH@"
    24  
    25  # Optional space-separated list of options to pass to the guest kernel.
    26  # For example, use `kernel_params = "vsyscall=emulate"` if you are having
    27  # trouble running pre-2.15 glibc.
    28  #
    29  # WARNING: - any parameter specified here will take priority over the default
    30  # parameter value of the same name used to start the virtual machine.
    31  # Do not set values here unless you understand the impact of doing so as you
    32  # may stop the virtual machine from booting.
    33  # To see the list of default parameters, enable hypervisor debug, create a
    34  # container and look for 'default-kernel-parameters' log entries.
    35  kernel_params = "@KERNELPARAMS@"
    36  
    37  # Default number of vCPUs per SB/VM:
    38  # unspecified or 0                --> will be set to @DEFVCPUS@
    39  # < 0                             --> will be set to the actual number of physical cores
    40  # > 0 <= number of physical cores --> will be set to the specified number
    41  # > number of physical cores      --> will be set to the actual number of physical cores
    42  default_vcpus = 1
    43  
    44  # Default maximum number of vCPUs per SB/VM:
    45  # unspecified or == 0             --> will be set to the actual number of physical cores or to the maximum number
    46  #                                     of vCPUs supported by KVM if that number is exceeded
    47  # > 0 <= number of physical cores --> will be set to the specified number
    48  # > number of physical cores      --> will be set to the actual number of physical cores or to the maximum number
    49  #                                     of vCPUs supported by KVM if that number is exceeded
    50  # WARNING: Depending of the architecture, the maximum number of vCPUs supported by KVM is used when
    51  # the actual number of physical cores is greater than it.
    52  # WARNING: Be aware that this value impacts the virtual machine's memory footprint and CPU
    53  # the hotplug functionality. For example, `default_maxvcpus = 240` specifies that until 240 vCPUs
    54  # can be added to a SB/VM, but the memory footprint will be big. Another example, with
    55  # `default_maxvcpus = 8` the memory footprint will be small, but 8 will be the maximum number of
    56  # vCPUs supported by the SB/VM. In general, we recommend that you do not edit this variable,
    57  # unless you know what are you doing.
    58  # NOTICE: on arm platform with gicv2 interrupt controller, set it to 8.
    59  default_maxvcpus = @DEFMAXVCPUS@
    60  
    61  # Bridges can be used to hot plug devices.
    62  # Limitations:
    63  # * Currently only pci bridges are supported
    64  # * Until 30 devices per bridge can be hot plugged.
    65  # * Until 5 PCI bridges can be cold plugged per VM.
    66  #   This limitation could be a bug in the kernel
    67  # Default number of bridges per SB/VM:
    68  # unspecified or 0   --> will be set to @DEFBRIDGES@
    69  # > 1 <= 5           --> will be set to the specified number
    70  # > 5                --> will be set to 5
    71  default_bridges = @DEFBRIDGES@
    72  
    73  # Default memory size in MiB for SB/VM.
    74  # If unspecified then it will be set @DEFMEMSZ@ MiB.
    75  default_memory = @DEFMEMSZ@
    76  #
    77  # Default memory slots per SB/VM.
    78  # If unspecified then it will be set @DEFMEMSLOTS@.
    79  # This is will determine the times that memory will be hotadded to sandbox/VM.
    80  #memory_slots = @DEFMEMSLOTS@
    81  
    82  # The size in MiB will be plused to max memory of hypervisor.
    83  # It is the memory address space for the NVDIMM devie.
    84  # If set block storage driver (block_device_driver) to "nvdimm",
    85  # should set memory_offset to the size of block device.
    86  # Default 0
    87  #memory_offset = 0
    88  
    89  # Disable block device from being used for a container's rootfs.
    90  # In case of a storage driver like devicemapper where a container's 
    91  # root file system is backed by a block device, the block device is passed
    92  # directly to the hypervisor for performance reasons. 
    93  # This flag prevents the block device from being passed to the hypervisor, 
    94  # 9pfs is used instead to pass the rootfs.
    95  disable_block_device_use = @DEFDISABLEBLOCK@
    96  
    97  # Block storage driver to be used for the hypervisor in case the container
    98  # rootfs is backed by a block device. This is virtio-scsi, virtio-blk
    99  # or nvdimm.
   100  block_device_driver = "@DEFBLOCKSTORAGEDRIVER_FC@"
   101  
   102  # Specifies cache-related options will be set to block devices or not.
   103  # Default false
   104  #block_device_cache_set = true
   105  
   106  # Specifies cache-related options for block devices.
   107  # Denotes whether use of O_DIRECT (bypass the host page cache) is enabled.
   108  # Default false
   109  #block_device_cache_direct = true
   110  
   111  # Specifies cache-related options for block devices.
   112  # Denotes whether flush requests for the device are ignored.
   113  # Default false
   114  #block_device_cache_noflush = true
   115  
   116  # Enable pre allocation of VM RAM, default false
   117  # Enabling this will result in lower container density
   118  # as all of the memory will be allocated and locked
   119  # This is useful when you want to reserve all the memory
   120  # upfront or in the cases where you want memory latencies
   121  # to be very predictable
   122  # Default false
   123  #enable_mem_prealloc = true
   124  
   125  # Enable huge pages for VM RAM, default false
   126  # Enabling this will result in the VM memory
   127  # being allocated using huge pages.
   128  # This is useful when you want to use vhost-user network
   129  # stacks within the container. This will automatically 
   130  # result in memory pre allocation
   131  #enable_hugepages = true
   132  
   133  # Enable swap of vm memory. Default false.
   134  # The behaviour is undefined if mem_prealloc is also set to true
   135  #enable_swap = true
   136  
   137  # This option changes the default hypervisor and kernel parameters
   138  # to enable debug output where available. This extra output is added
   139  # to the proxy logs, but only when proxy debug is also enabled.
   140  # 
   141  # Default false
   142  #enable_debug = true
   143  
   144  # Disable the customizations done in the runtime when it detects
   145  # that it is running on top a VMM. This will result in the runtime
   146  # behaving as it would when running on bare metal.
   147  # 
   148  #disable_nesting_checks = true
   149  
   150  # This is the msize used for 9p shares. It is the number of bytes 
   151  # used for 9p packet payload.
   152  #msize_9p = @DEFMSIZE9P@
   153  
   154  # If true and vsocks are supported, use vsocks to communicate directly
   155  # with the agent (no proxy is started).
   156  # Default true
   157  use_vsock = true
   158  
   159  # VFIO devices are hotplugged on a bridge by default. 
   160  # Enable hotplugging on root bus. This may be required for devices with
   161  # a large PCI bar, as this is a current limitation with hotplugging on 
   162  # a bridge. This value is valid for "pc" machine type.
   163  # Default false
   164  #hotplug_vfio_on_root_bus = true
   165  
   166  #
   167  # Default entropy source.
   168  # The path to a host source of entropy (including a real hardware RNG)
   169  # /dev/urandom and /dev/random are two main options.
   170  # Be aware that /dev/random is a blocking source of entropy.  If the host
   171  # runs out of entropy, the VMs boot time will increase leading to get startup
   172  # timeouts.
   173  # The source of entropy /dev/urandom is non-blocking and provides a
   174  # generally acceptable source of entropy. It should work well for pretty much
   175  # all practical purposes.
   176  #entropy_source= "@DEFENTROPYSOURCE@"
   177  
   178  # Path to OCI hook binaries in the *guest rootfs*.
   179  # This does not affect host-side hooks which must instead be added to
   180  # the OCI spec passed to the runtime.
   181  #
   182  # You can create a rootfs with hooks by customizing the osbuilder scripts:
   183  # https://github.com/kata-containers/osbuilder
   184  #
   185  # Hooks must be stored in a subdirectory of guest_hook_path according to their
   186  # hook type, i.e. "guest_hook_path/{prestart,postart,poststop}".
   187  # The agent will scan these directories for executable files and add them, in
   188  # lexicographical order, to the lifecycle of the guest container.
   189  # Hooks are executed in the runtime namespace of the guest. See the official documentation:
   190  # https://github.com/opencontainers/runtime-spec/blob/v1.0.1/config.md#posix-platform-hooks
   191  # Warnings will be logged if any error is encountered will scanning for hooks,
   192  # but it will not abort container execution.
   193  #guest_hook_path = "/usr/share/oci/hooks"
   194  
   195  [factory]
   196  # VM templating support. Once enabled, new VMs are created from template
   197  # using vm cloning. They will share the same initial kernel, initramfs and
   198  # agent memory by mapping it readonly. It helps speeding up new container
   199  # creation and saves a lot of memory if there are many kata containers running
   200  # on the same host.
   201  #
   202  # When disabled, new VMs are created from scratch.
   203  #
   204  # Note: Requires "initrd=" to be set ("image=" is not supported).
   205  #
   206  # Default false
   207  #enable_template = true
   208  
   209  [shim.@PROJECT_TYPE@]
   210  path = "@SHIMPATH@"
   211  
   212  # If enabled, shim messages will be sent to the system log
   213  # (default: disabled)
   214  #enable_debug = true
   215  
   216  # If enabled, the shim will create opentracing.io traces and spans.
   217  # (See https://www.jaegertracing.io/docs/getting-started).
   218  #
   219  # Note: By default, the shim runs in a separate network namespace. Therefore,
   220  # to allow it to send trace details to the Jaeger agent running on the host,
   221  # it is necessary to set 'disable_new_netns=true' so that it runs in the host
   222  # network namespace.
   223  #
   224  # (default: disabled)
   225  #enable_tracing = true
   226  
   227  [agent.@PROJECT_TYPE@]
   228  # If enabled, make the agent display debug-level messages.
   229  # (default: disabled)
   230  #enable_debug = true
   231  
   232  # Enable agent tracing.
   233  #
   234  # If enabled, the default trace mode is "dynamic" and the
   235  # default trace type is "isolated". The trace mode and type are set
   236  # explicity with the `trace_type=` and `trace_mode=` options.
   237  #
   238  # Notes:
   239  #
   240  # - Tracing is ONLY enabled when `enable_tracing` is set: explicitly
   241  #   setting `trace_mode=` and/or `trace_type=` without setting `enable_tracing`
   242  #   will NOT activate agent tracing.
   243  #
   244  # - See https://github.com/kata-containers/agent/blob/master/TRACING.md for
   245  #   full details.
   246  #
   247  # (default: disabled)
   248  #enable_tracing = true
   249  #
   250  #trace_mode = "dynamic"
   251  #trace_type = "isolated"
   252  
   253  # Comma separated list of kernel modules and their parameters.
   254  # These modules will be loaded in the guest kernel using modprobe(8).
   255  # The following example can be used to load two kernel modules with parameters
   256  #  - kernel_modules=["e1000e InterruptThrottleRate=3000,3000,3000 EEE=1", "i915 enable_ppgtt=0"]
   257  # The first word is considered as the module name and the rest as its parameters.
   258  # Container will not be started when:
   259  #  * A kernel module is specified and the modprobe command is not installed in the guest
   260  #    or it fails loading the module.
   261  #  * The module is not available in the guest or it doesn't met the guest kernel
   262  #    requirements, like architecture and version.
   263  #
   264  kernel_modules=[]
   265  
   266  [netmon]
   267  # If enabled, the network monitoring process gets started when the
   268  # sandbox is created. This allows for the detection of some additional
   269  # network being added to the existing network namespace, after the
   270  # sandbox has been created.
   271  # (default: disabled)
   272  #enable_netmon = true
   273  
   274  # Specify the path to the netmon binary.
   275  path = "@NETMONPATH@"
   276  
   277  # If enabled, netmon messages will be sent to the system log
   278  # (default: disabled)
   279  #enable_debug = true
   280  
   281  [runtime]
   282  # If enabled, the runtime will log additional debug messages to the
   283  # system log
   284  # (default: disabled)
   285  #enable_debug = true
   286  #
   287  # Internetworking model
   288  # Determines how the VM should be connected to the
   289  # the container network interface
   290  # Options:
   291  #
   292  #   - macvtap
   293  #     Used when the Container network interface can be bridged using
   294  #     macvtap.
   295  #
   296  #   - none
   297  #     Used when customize network. Only creates a tap device. No veth pair.
   298  #
   299  #   - tcfilter
   300  #     Uses tc filter rules to redirect traffic from the network interface
   301  #     provided by plugin to a tap interface connected to the VM.
   302  #
   303  internetworking_model="@DEFNETWORKMODEL_FC@"
   304  
   305  # disable guest seccomp
   306  # Determines whether container seccomp profiles are passed to the virtual
   307  # machine and applied by the kata agent. If set to true, seccomp is not applied
   308  # within the guest
   309  # (default: true)
   310  disable_guest_seccomp=@DEFDISABLEGUESTSECCOMP@
   311  
   312  # If enabled, the runtime will create opentracing.io traces and spans.
   313  # (See https://www.jaegertracing.io/docs/getting-started).
   314  # (default: disabled)
   315  #enable_tracing = true
   316  
   317  # If enabled, the runtime will not create a network namespace for shim and hypervisor processes.
   318  # This option may have some potential impacts to your host. It should only be used when you know what you're doing.
   319  # `disable_new_netns` conflicts with `enable_netmon`
   320  # `disable_new_netns` conflicts with `internetworking_model=tcfilter` and `internetworking_model=macvtap`. It works only
   321  # with `internetworking_model=none`. The tap device will be in the host network namespace and can connect to a bridge
   322  # (like OVS) directly.
   323  # If you are using docker, `disable_new_netns` only works with `docker run --net=none`
   324  # (default: false)
   325  #disable_new_netns = true
   326  
   327  # if enable, the runtime will add all the kata processes inside one dedicated cgroup.
   328  # The container cgroups in the host are not created, just one single cgroup per sandbox.
   329  # The runtime caller is free to restrict or collect cgroup stats of the overall Kata sandbox.
   330  # The sandbox cgroup path is the parent cgroup of a container with the PodSandbox annotation.
   331  # The sandbox cgroup is constrained if there is no container type annotation.
   332  # See: https://godoc.org/github.com/kata-containers/runtime/virtcontainers#ContainerType
   333  sandbox_cgroup_only=@DEFSANDBOXCGROUPONLY@
   334  
   335  # Enabled experimental feature list, format: ["a", "b"].
   336  # Experimental features are features not stable enough for production,
   337  # they may break compatibility, and are prepared for a big version bump.
   338  # Supported experimental features:
   339  # (default: [])
   340  experimental=@DEFAULTEXPFEATURES@