Skip to content

Yet another virtualization runtime, make Virtual Machine greate again!

License

Notifications You must be signed in to change notification settings

projecteru2/yavirt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Nov 18, 2024
a33da9a · Nov 18, 2024

History

75 Commits
Jul 2, 2024
Jul 3, 2024
Jul 9, 2024
Nov 18, 2024
Jul 3, 2024
Jul 2, 2024
Jul 2, 2024
Jul 3, 2024
Jul 2, 2024
Jul 2, 2024
Mar 14, 2022
Jul 3, 2024
May 1, 2023
Jul 2, 2024
Aug 15, 2024
Aug 15, 2024
May 1, 2023
Jul 9, 2024

Repository files navigation

Building a local dev. environment (Ubuntu)

Dependencies

  • build-essential
  • qemu
  • qemu-kvm
  • libvirt-dev
  • make

Installing libext2fs

cd /tmp
curl -LOv http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.46.4.tar.gz
tar -xzf e2fsprogs-1.46.4.tar.gz
cd e2fsprogs-1.46.4
./configure
make && make install && make install-libs

Installing libguestfs (v1.46)

apt install -y gperf genisoimage flex bison libncurses-dev libpcre2-dev libaugeas-dev libmagic-dev libjansson-dev libhivex-dev libyara-dev supermin ocaml ocaml-findlib libhivex-ocaml-dev
./init-libguestfs.sh
apt install -y libguestfs-dev

Running as a systemd service

Runtime dependencies

  • qemu
  • qemu-kvm
  • libvirt
  • libguestfs

Config file (.toml)

log_level = "info"
virt_dir = "/opt/yavirtd"
calico_pools = ["pool"]
etcd_prefix = "/yavirt/v1"
etcd_endpoints = ["http://127.0.0.1:2379"]

Systemd unit file

[Unit]
Description=yavirtd
After=network.target
Wants=network-online.target

[Service]
User=root
PermissionsStartOnly=true
ExecStart=/usr/local/bin/yavirtd /etc/yavirt/yavirtd.toml
Restart=always
RestartSec=8s

[Install]
WantedBy=multi-user.target