xref: /cloud-hypervisor/README.md (revision 073374e2b06f8a0130d3997cb140e0577ed059ad)
15d535853SRob Bradford- [1. What is Cloud Hypervisor?](#1-what-is-cloud-hypervisor)
25d535853SRob Bradford  - [Objectives](#objectives)
35d535853SRob Bradford    - [High Level](#high-level)
45d535853SRob Bradford    - [Architectures](#architectures)
55d535853SRob Bradford    - [Guest OS](#guest-os)
65d535853SRob Bradford- [2. Getting Started](#2-getting-started)
762681a77SRob Bradford  - [Host OS](#host-os)
8ffc222b2SRob Bradford  - [Use Pre-built Binaries](#use-pre-built-binaries)
9ffc222b2SRob Bradford  - [Packages](#packages)
10ffc222b2SRob Bradford  - [Building from Source](#building-from-source)
11ffc222b2SRob Bradford  - [Booting Linux](#booting-linux)
12ffc222b2SRob Bradford    - [Firmware Booting](#firmware-booting)
13ffc222b2SRob Bradford    - [Custom Kernel and Disk Image](#custom-kernel-and-disk-image)
14ffc222b2SRob Bradford      - [Building your Kernel](#building-your-kernel)
15919226f3SSamuel Ortiz      - [Disk image](#disk-image)
16919226f3SSamuel Ortiz      - [Booting the guest VM](#booting-the-guest-vm)
175d535853SRob Bradford- [3. Status](#3-status)
185d535853SRob Bradford  - [Hot Plug](#hot-plug)
195d535853SRob Bradford  - [Device Model](#device-model)
20cf31a303SRob Bradford  - [Roadmap](#roadmap)
21ffc222b2SRob Bradford- [4. Relationship with _Rust VMM_ Project](#4-relationship-with-rust-vmm-project)
22ffc222b2SRob Bradford  - [Differences with Firecracker and crosvm](#differences-with-firecracker-and-crosvm)
235d535853SRob Bradford- [5. Community](#5-community)
245d535853SRob Bradford  - [Contribute](#contribute)
25362f95c8SRob Bradford  - [Slack](#slack)
26362f95c8SRob Bradford  - [Mailing list](#mailing-list)
2702f2eceeSRob Bradford  - [Security issues](#security-issues)
28919226f3SSamuel Ortiz
29919226f3SSamuel Ortiz# 1. What is Cloud Hypervisor?
30919226f3SSamuel Ortiz
31424efe6cSSebastien BoeufCloud Hypervisor is an open source Virtual Machine Monitor (VMM) that runs on
32ffc222b2SRob Bradfordtop of the [KVM](https://www.kernel.org/doc/Documentation/virtual/kvm/api.txt)
33ffc222b2SRob Bradfordhypervisor and the Microsoft Hypervisor (MSHV).
34328e950aSRob Bradford
35ffc222b2SRob BradfordThe project focuses on running modern, _Cloud Workloads_, on specific, common,
36ffc222b2SRob Bradfordhardware architectures. In this case _Cloud Workloads_ refers to those that are
37ffc222b2SRob Bradfordrun by customers inside a Cloud Service Provider. This means modern operating
38ffc222b2SRob Bradfordsystems with most I/O handled by
39ffc222b2SRob Bradfordparavirtualised devices (e.g. _virtio_), no requirement for legacy devices, and
40424efe6cSSebastien Boeuf64-bit CPUs.
41919226f3SSamuel Ortiz
42424efe6cSSebastien BoeufCloud Hypervisor is implemented in [Rust](https://www.rust-lang.org/) and is
43ffc222b2SRob Bradfordbased on the [Rust VMM](https://github.com/rust-vmm) crates.
44919226f3SSamuel Ortiz
45919226f3SSamuel Ortiz## Objectives
46919226f3SSamuel Ortiz
47919226f3SSamuel Ortiz### High Level
48919226f3SSamuel Ortiz
49328e950aSRob Bradford- Runs on KVM or MSHV
500f48b612SMuminul Islam- Minimal emulation
510f48b612SMuminul Islam- Low latency
520f48b612SMuminul Islam- Low memory footprint
530f48b612SMuminul Islam- Low complexity
540f48b612SMuminul Islam- High performance
550f48b612SMuminul Islam- Small attack surface
560f48b612SMuminul Islam- 64-bit support only
570f48b612SMuminul Islam- CPU, memory, PCI hotplug
580f48b612SMuminul Islam- Machine to machine migration
59919226f3SSamuel Ortiz
60919226f3SSamuel Ortiz### Architectures
61919226f3SSamuel Ortiz
62424efe6cSSebastien BoeufCloud Hypervisor supports the `x86-64` and `AArch64` architectures. There are
63ffc222b2SRob Bradfordminor differences in functionality between the two architectures
64424efe6cSSebastien Boeuf(see [#1125](https://github.com/cloud-hypervisor/cloud-hypervisor/issues/1125)).
65919226f3SSamuel Ortiz
66919226f3SSamuel Ortiz### Guest OS
67919226f3SSamuel Ortiz
68328e950aSRob BradfordCloud Hypervisor supports `64-bit Linux` and Windows 10/Windows Server 2019.
69919226f3SSamuel Ortiz
70919226f3SSamuel Ortiz# 2. Getting Started
71919226f3SSamuel Ortiz
72ffc222b2SRob BradfordThe following sections describe how to build and run Cloud Hypervisor on the
73ffc222b2SRob Bradford`x86-64` platform. For getting started on the `AArch64` platform, please refer
74ffc222b2SRob Bradfordto the
75ffc222b2SRob Bradford[AArch64 documentation](docs/arm64.md).
768f4de459SHenry Wang
7762681a77SRob Bradford## Host OS
7862681a77SRob Bradford
79ffc222b2SRob BradfordFor required KVM functionality the minimum host kernel version is 4.11.  For
80ffc222b2SRob Bradfordadequate performance the minimum recommended host kernel version is 5.6. The
8162681a77SRob Bradfordmajority of the CI currently tests with kernel version 5.15.
8262681a77SRob Bradford
83ffc222b2SRob Bradford## Use Pre-built Binaries
848f4de459SHenry Wang
85ffc222b2SRob BradfordThe recommended approach to getting started with Cloud Hypervisor is by using a
86ffc222b2SRob Bradfordpre-built binary. Binaries are available for the [latest
87ffc222b2SRob Bradfordrelease](https://github.com/cloud-hypervisor/cloud-hypervisor/releases/latest).
88ffc222b2SRob BradfordUse `cloud-hypervisor-static` for `x86-64` or `cloud-hypervisor-static-aarch64`
89ffc222b2SRob Bradfordfor `AArch64` platform.
90919226f3SSamuel Ortiz
91ffc222b2SRob Bradford## Packages
92919226f3SSamuel Ortiz
93ffc222b2SRob BradfordFor convenience, packages are also available targeting some popular Linux
94ffc222b2SRob Bradforddistributions. This is thanks to the [Open Build
95ffc222b2SRob BradfordService](https://build.opensuse.org). The [OBS
96ffc222b2SRob BradfordREADME](https://github.com/cloud-hypervisor/obs-packaging) explains how to
9743c42702SAnatol Belskienable the repository in a supported Linux distribution and install Cloud Hypervisor
9843c42702SAnatol Belskiand accompanying packages. Please report any packaging issues in the
9943c42702SAnatol Belski[obs-packaging](https://github.com/cloud-hypervisor/obs-packaging) repository.
10043c42702SAnatol Belski
101ffc222b2SRob Bradford## Building from Source
102919226f3SSamuel Ortiz
103ffc222b2SRob BradfordPlease see the [instructions for building from source](docs/building.md) if you
104ffc222b2SRob Bradforddo not wish to use the pre-built binaries.
105919226f3SSamuel Ortiz
106ffc222b2SRob Bradford## Booting Linux
107919226f3SSamuel Ortiz
108ffc222b2SRob BradfordThe instructions below are for the `x86-64` platform. For `AArch64` please see
109ffc222b2SRob Bradfordthe [AArch64 specific documentation](docs/arm64.md).
110919226f3SSamuel Ortiz
111ffc222b2SRob BradfordCloud Hypervisor supports direct kernel boot (if the kernel is built with PVH
112ffc222b2SRob Bradfordsupport) or booting via a firmware (either [Rust Hypervisor
113ffc222b2SRob BradfordFirmware](https://github.com/cloud-hypervisor/rust-hypervisor-firmware) or an
114ffc222b2SRob Bradfordedk2 UEFI firmware called `CLOUDHV`.)
115ffc222b2SRob Bradford
116ffc222b2SRob BradfordBinary builds of the firmware files are available for the latest release of
117ffc222b2SRob Bradford[Rust Hyperivor
118ffc222b2SRob BradfordFirmware](https://github.com/cloud-hypervisor/rust-hypervisor-firmware/releases/latest)
119ffc222b2SRob Bradfordand [our edk2
120ffc222b2SRob Bradfordrepository](https://github.com/cloud-hypervisor/edk2/releases/latest)
121ffc222b2SRob Bradford
122ffc222b2SRob BradfordThe choice of firmware depends on your guest OS choice; some experimentation
123ffc222b2SRob Bradfordmay be required.
124ffc222b2SRob Bradford
125ffc222b2SRob Bradford### Firmware Booting
126ffc222b2SRob Bradford
127ffc222b2SRob BradfordCloud Hypervisor supports booting disk images containing all needed components
128ffc222b2SRob Bradfordto run cloud workloads, a.k.a. cloud images.
129ffc222b2SRob Bradford
130ffc222b2SRob BradfordThe following sample commands will download an Ubuntu Cloud image, converting
131ffc222b2SRob Bradfordit into a format that Cloud Hypervisor can use and a firmware to boot the image
132ffc222b2SRob Bradfordwith.
133919226f3SSamuel Ortiz
134919226f3SSamuel Ortiz```shell
135a3342bdbSSebastien Boeuf$ wget https://cloud-images.ubuntu.com/focal/current/focal-server-cloudimg-amd64.img
136a3342bdbSSebastien Boeuf$ qemu-img convert -p -f qcow2 -O raw focal-server-cloudimg-amd64.img focal-server-cloudimg-amd64.raw
137b4ed9f86SRob Bradford$ wget https://github.com/cloud-hypervisor/rust-hypervisor-firmware/releases/download/0.4.1/hypervisor-fw
138919226f3SSamuel Ortiz```
139919226f3SSamuel Ortiz
140ffc222b2SRob BradfordThe Ubuntu cloud images do not ship with a default password so it necessary to
141ffc222b2SRob Bradforduse a `cloud-init` disk image to customise the image on the first boot. A basic
142ffc222b2SRob Bradford`cloud-init` image is generated by this [script](scripts/create-cloud-init.sh).
143ffc222b2SRob BradfordThis seeds the image with a default username/password of `cloud/cloud123`. It
144ffc222b2SRob Bradfordis only necessary to add this disk image on the first boot.
145ffc222b2SRob Bradford
146919226f3SSamuel Ortiz```shell
147ffc222b2SRob Bradford$ sudo setcap cap_net_admin+ep ./cloud-hypervisor
148ffc222b2SRob Bradford$ ./create-cloud-init.sh
149*073374e2SRob Bradford$ ./cloud-hypervisor \
150919226f3SSamuel Ortiz	--kernel ./hypervisor-fw \
151ffc222b2SRob Bradford	--disk path=focal-server-cloudimg-amd64.raw path=/tmp/ubuntu-cloudinit.img
152e8e21aebSSamuel Ortiz	--cpus boot=4 \
15300df79a5SSamuel Ortiz	--memory size=1024M \
154617b568fSMuminul Islam	--net "tap=,mac=,ip=,mask="
155919226f3SSamuel Ortiz```
156919226f3SSamuel Ortiz
157ffc222b2SRob BradfordIf access to the firmware messages or interaction with the boot loader (e.g.
158ffc222b2SRob BradfordGRUB) is required then it necessary to switch to the serial console instead of
159ffc222b2SRob Bradford`virtio-console`.
1609900daacSRob Bradford
161ffc222b2SRob Bradford```shell
162*073374e2SRob Bradford$ ./cloud-hypervisor \
163ffc222b2SRob Bradford	--kernel ./hypervisor-fw \
164ffc222b2SRob Bradford	--disk path=focal-server-cloudimg-amd64.raw path=/tmp/ubuntu-cloudinit.img
165ffc222b2SRob Bradford	--cpus boot=4 \
166ffc222b2SRob Bradford	--memory size=1024M \
167ffc222b2SRob Bradford	--net "tap=,mac=,ip=,mask=" \
168ffc222b2SRob Bradford	--serial tty \
169ffc222b2SRob Bradford	--console off
170ffc222b2SRob Bradford```
171919226f3SSamuel Ortiz
172ffc222b2SRob Bradford### Custom Kernel and Disk Image
173919226f3SSamuel Ortiz
174ffc222b2SRob Bradford#### Building your Kernel
175ffc222b2SRob Bradford
176ffc222b2SRob BradfordCloud Hypervisor also supports direct kernel boot into a `vmlinux` ELF kernel (compiled with PVH support). In order to support development there is a custom branch; however provided the required options are enabled any recent kernel will suffice.
177d5d40537SRob Bradford
178d5d40537SRob BradfordTo build the kernel:
179919226f3SSamuel Ortiz
180919226f3SSamuel Ortiz```shell
181d5d40537SRob Bradford# Clone the Cloud Hypervisor Linux branch
1826c365617SRob Bradford$ git clone --depth 1 https://github.com/cloud-hypervisor/linux.git -b ch-5.15.12 linux-cloud-hypervisor
183d5d40537SRob Bradford$ pushd linux-cloud-hypervisor
184919226f3SSamuel Ortiz# Use the cloud-hypervisor kernel config to build your kernel
185ffc222b2SRob Bradford$ wget https://raw.githubusercontent.com/cloud-hypervisor/cloud-hypervisor/main/resources/linux-config-x86_64
186ffc222b2SRob Bradford$ cp linux-config-x86_64 .config
1878b8daf57SRob Bradford$ KCFLAGS="-Wa,-mx86-used-note=no" make bzImage -j `nproc`
188919226f3SSamuel Ortiz$ popd
189919226f3SSamuel Ortiz```
190919226f3SSamuel Ortiz
191424efe6cSSebastien BoeufThe `vmlinux` kernel image will then be located at
192424efe6cSSebastien Boeuf`linux-cloud-hypervisor/arch/x86/boot/compressed/vmlinux.bin`.
193919226f3SSamuel Ortiz
194919226f3SSamuel Ortiz#### Disk image
195919226f3SSamuel Ortiz
196ffc222b2SRob BradfordFor the disk image the same Ubuntu image as before can be used. This contains
197ffc222b2SRob Bradfordan `ext4` root filesystem.
198919226f3SSamuel Ortiz
199919226f3SSamuel Ortiz```shell
200a3342bdbSSebastien Boeuf$ wget https://cloud-images.ubuntu.com/focal/current/focal-server-cloudimg-amd64.img
201a3342bdbSSebastien Boeuf$ qemu-img convert -p -f qcow2 -O raw focal-server-cloudimg-amd64.img focal-server-cloudimg-amd64.raw
202919226f3SSamuel Ortiz```
203919226f3SSamuel Ortiz
204919226f3SSamuel Ortiz#### Booting the guest VM
205919226f3SSamuel Ortiz
206ffc222b2SRob BradfordThese sample commands boot the disk image using the custom kernel whilst also
207ffc222b2SRob Bradfordsupplying the desired kernel command line.
208919226f3SSamuel Ortiz
209919226f3SSamuel Ortiz```shell
210ffc222b2SRob Bradford$ sudo setcap cap_net_admin+ep ./cloud-hypervisor
211ffc222b2SRob Bradford$ ./create-cloud-init.sh
212ffc222b2SRob Bradford$ ./cloud-hypervisor \
213919226f3SSamuel Ortiz	--kernel ./linux-cloud-hypervisor/arch/x86/boot/compressed/vmlinux.bin \
214ffc222b2SRob Bradford	--disk path=focal-server-cloudimg-amd64.raw path=/tmp/ubuntu-cloudinit.img\
215a3342bdbSSebastien Boeuf	--cmdline "console=hvc0 root=/dev/vda1 rw" \
216e8e21aebSSamuel Ortiz	--cpus boot=4 \
21746eaea16SSamuel Ortiz	--memory size=1024M \
218617b568fSMuminul Islam	--net "tap=,mac=,ip=,mask="
21946eaea16SSamuel Ortiz```
22046eaea16SSamuel Ortiz
221ffc222b2SRob BradfordIf earlier kernel messages are required the serial console should be used instead of `virtio-console`.
22246eaea16SSamuel Ortiz
223ffc222b2SRob Bradford```cloud-hypervisor \
22446eaea16SSamuel Ortiz	--kernel ./linux-cloud-hypervisor/arch/x86/boot/compressed/vmlinux.bin \
22546eaea16SSamuel Ortiz	--console off \
22646eaea16SSamuel Ortiz	--serial tty \
227a3342bdbSSebastien Boeuf	--disk path=focal-server-cloudimg-amd64.raw \
228a3342bdbSSebastien Boeuf	--cmdline "console=ttyS0 root=/dev/vda1 rw" \
229e8e21aebSSamuel Ortiz	--cpus boot=4 \
23000df79a5SSamuel Ortiz	--memory size=1024M \
231617b568fSMuminul Islam	--net "tap=,mac=,ip=,mask="
232919226f3SSamuel Ortiz```
233919226f3SSamuel Ortiz
234919226f3SSamuel Ortiz# 3. Status
235919226f3SSamuel Ortiz
236ffc222b2SRob BradfordCloud Hypervisor is under active development. The following stability
237ffc222b2SRob Bradfordguarantees are currently made:
238919226f3SSamuel Ortiz
239328e950aSRob Bradford* The API (including command line options) will not be removed or changed in a
24076b1a009SRob Bradford  breaking way without a minimum of 2 major releases notice. Where possible
24176b1a009SRob Bradford  warnings will be given about the use of deprecated functionality and the
24276b1a009SRob Bradford  deprecations will be documented in the release notes.
24376b1a009SRob Bradford
244328e950aSRob Bradford* Point releases will be made between individual releases where there are
24576b1a009SRob Bradford  substantial bug fixes or security issues that need to be fixed. These point
24676b1a009SRob Bradford  releases will only include bug fixes.
247328e950aSRob Bradford
248328e950aSRob BradfordCurrently the following items are **not** guaranteed across updates:
249328e950aSRob Bradford
250328e950aSRob Bradford* Snapshot/restore is not supported across different versions
251328e950aSRob Bradford* Live migration is not supported across different versions
252328e950aSRob Bradford* The following features are considered experimental and may change
25376b1a009SRob Bradford  substantially between releases: TDX, vfio-user, vDPA.
254328e950aSRob Bradford
255ffc222b2SRob BradfordFurther details can be found in the [release documentation](docs/releases.md).
2560f48b612SMuminul Islam
257ffc222b2SRob BradfordAs of 2022-10-13, the following cloud images are supported:
258ffc222b2SRob Bradford
259ffc222b2SRob Bradford- [Ubuntu Bionic](https://cloud-images.ubuntu.com/bionic/current/) (bionic-server-cloudimg-amd64.img)
260ffc222b2SRob Bradford- [Ubuntu Focal](https://cloud-images.ubuntu.com/focal/current/) (focal-server-cloudimg-amd64.img)
261ffc222b2SRob Bradford- [Ubuntu Jammy](https://cloud-images.ubuntu.com/jammy/current/) (jammy-server-cloudimg-amd64.img )
262ffc222b2SRob Bradford- [Fedora 36](https://fedora.mirrorservice.org/fedora/linux/releases/36/Cloud/x86_64/images/) (Fedora-Cloud-Base-36-1.5.x86_64.raw.xz)
2631e97d141SRob Bradford
264424efe6cSSebastien BoeufDirect kernel boot to userspace should work with a rootfs from most
265ffc222b2SRob Bradforddistributions although you may need to enable exotic filesystem types in the
266ffc222b2SRob Bradfordreference kernel configuration (e.g. XFS or btrfs.)
267f77ea5a2SAnatol Belski
2686444e29bSRob Bradford## Hot Plug
2696444e29bSRob Bradford
270424efe6cSSebastien BoeufCloud Hypervisor supports hotplug of CPUs, passthrough devices (VFIO),
271424efe6cSSebastien Boeuf`virtio-{net,block,pmem,fs,vsock}` and memory resizing. This
272424efe6cSSebastien Boeuf[document](docs/hotplug.md) details how to add devices to a running VM.
2736444e29bSRob Bradford
274b55d75eaSSebastien Boeuf## Device Model
275b55d75eaSSebastien Boeuf
276424efe6cSSebastien BoeufDetails of the device model can be found in this
277424efe6cSSebastien Boeuf[documentation](docs/device_model.md).
278b55d75eaSSebastien Boeuf
279cf31a303SRob Bradford## Roadmap
280cf31a303SRob Bradford
281ffc222b2SRob BradfordThe project roadmap is tracked through a [GitHub
282ffc222b2SRob Bradfordproject](https://github.com/orgs/cloud-hypervisor/projects/6).
283cf31a303SRob Bradford
284ffc222b2SRob Bradford# 4. Relationship with _Rust VMM_ Project
285919226f3SSamuel Ortiz
286424efe6cSSebastien BoeufIn order to satisfy the design goal of having a high-performance,
287424efe6cSSebastien Boeufsecurity-focused hypervisor the decision was made to use the
288424efe6cSSebastien Boeuf[Rust](https://www.rust-lang.org/) programming language. The language's strong
289424efe6cSSebastien Boeuffocus on memory and thread safety makes it an ideal candidate for implementing
290424efe6cSSebastien BoeufVMMs.
291919226f3SSamuel Ortiz
292424efe6cSSebastien BoeufInstead of implementing the VMM components from scratch, Cloud Hypervisor is
293ffc222b2SRob Bradfordimporting the [Rust VMM](https://github.com/rust-vmm) crates, and sharing code
294424efe6cSSebastien Boeufand architecture together with other VMMs like e.g. Amazon's
295424efe6cSSebastien Boeuf[Firecracker](https://firecracker-microvm.github.io/) and Google's
296424efe6cSSebastien Boeuf[crosvm](https://chromium.googlesource.com/chromiumos/platform/crosvm/).
297919226f3SSamuel Ortiz
298ffc222b2SRob BradfordCloud Hypervisor embraces the _Rust VMM_ project's goals, which is to be able
299ffc222b2SRob Bradfordto share and re-use as many virtualization crates as possible.
300919226f3SSamuel Ortiz
301ffc222b2SRob Bradford## Differences with Firecracker and crosvm
302919226f3SSamuel Ortiz
303424efe6cSSebastien BoeufA large part of the Cloud Hypervisor code is based on either the Firecracker or
304ffc222b2SRob Bradfordthe crosvm project's implementations. Both of these are VMMs written in Rust
305ffc222b2SRob Bradfordwith a focus on safety and security, like Cloud Hypervisor.
306919226f3SSamuel Ortiz
307ffc222b2SRob BradfordThe goal of the Cloud Hypervisor project differs from the aforementioned
308ffc222b2SRob Bradfordprojects in that it aims to be a general purpose VMM for _Cloud Workloads_ and
309ffc222b2SRob Bradfordnot limited to container/serverless or client workloads.
310919226f3SSamuel Ortiz
311ffc222b2SRob BradfordThe Cloud Hypervisor community thanks the communities of both the Firecracker
312ffc222b2SRob Bradfordand crosvm projects for their excellent work.
313919226f3SSamuel Ortiz
314919226f3SSamuel Ortiz# 5. Community
315919226f3SSamuel Ortiz
316424efe6cSSebastien BoeufThe Cloud Hypervisor project follows the governance, and community guidelines
317424efe6cSSebastien Boeufdescribed in the [Community](https://github.com/cloud-hypervisor/community)
318424efe6cSSebastien Boeufrepository.
3197bfe87b7SSamuel Ortiz
3207bfe87b7SSamuel Ortiz## Contribute
3217bfe87b7SSamuel Ortiz
322ffc222b2SRob BradfordThe project strongly believes in building a global, diverse and collaborative
323ffc222b2SRob Bradfordcommunity around the Cloud Hypervisor project. Anyone who is interested in
324424efe6cSSebastien Boeuf[contributing](CONTRIBUTING.md) to the project is welcome to participate.
325919226f3SSamuel Ortiz
326ffc222b2SRob BradfordContributing to a open source project like Cloud Hypervisor covers a lot more
327ffc222b2SRob Bradfordthan just sending code. Testing, documentation, pull request
328424efe6cSSebastien Boeufreviews, bug reports, feature requests, project improvement suggestions, etc,
329424efe6cSSebastien Boeufare all equal and welcome means of contribution. See the
330424efe6cSSebastien Boeuf[CONTRIBUTING](CONTRIBUTING.md) document for more details.
331919226f3SSamuel Ortiz
332362f95c8SRob Bradford## Slack
333919226f3SSamuel Ortiz
3342e0f1c2aSSamuel OrtizGet an [invite to our Slack channel](https://join.slack.com/t/cloud-hypervisor/shared_invite/enQtNjY3MTE3MDkwNDQ4LWQ1MTA1ZDVmODkwMWQ1MTRhYzk4ZGNlN2UwNTI3ZmFlODU0OTcwOWZjMTkwZDExYWE3YjFmNzgzY2FmNDAyMjI)
335919226f3SSamuel Ortizand [join us on Slack](https://cloud-hypervisor.slack.com/).
33637e27842SRob Bradford
337362f95c8SRob Bradford## Mailing list
338362f95c8SRob Bradford
339362f95c8SRob BradfordPlease report bugs using the [GitHub issue
340362f95c8SRob Bradfordtracker](https://github.com/cloud-hypervisor/cloud-hypervisor/issues) but for
341362f95c8SRob Bradfordbroader community discussions you may use our [mailing
342362f95c8SRob Bradfordlist](https://lists.cloudhypervisor.org/g/dev/).
343362f95c8SRob Bradford
34437e27842SRob Bradford## Security issues
34537e27842SRob Bradford
346ddef99a0SRob BradfordPlease contact the maintainers listed in the MAINTAINERS.md file with security issues.
347