Skip to content

Latest commit

 

History

History
79 lines (68 loc) · 3.02 KB

ROADMAP.md

File metadata and controls

79 lines (68 loc) · 3.02 KB

Planned Functionality

Alpine Configuration

  • Common setup tasks
  • Minimal VM creation
  • Basic awall firewall config
  • Generic configuration & setup for physical servers
  • All-in-one, router/DHCP/DNS pysical server configuration
  • All-in-one, router/DHCP/DNS VM configuration

KVM Virtual Machine Host

  • Minimal KVM Server Configuration
  • Open vSwitch configuration with multiple switches and vlans
  • Automated VM setup for an entire site
  • Configure apk_cache and pass it to install media & VMs
  • Support PCI passthrough of both disks & SR-IOV network interfaces
  • Let's Encrypt support for wildcard domains and distribution to VMs

Router

  • Basic interface configuration for each vswitch & vlan
  • Basic Shorewall configuration with routing
  • Ability to add custom firewall rules based on vlans, hosts, ipsets and ip addresses
  • nftables firewall configuration
  • SMCroute config for multicast routing
  • dhcrelay config for DHCP between vlans
  • dhcpcd config for IPv6 DHCP prefix requests to ISPs & distribution to vlans
  • Dynamic DNS updates for external addresses
  • WireGuard VPN support

DNS

  • PowerDNS configuration
  • YAML-based configuration for additional DNS entries
  • Add DHCP reservations & aliases to DNS
  • Configure blackhole hosts file like Pi-Hole
  • Add / update IPv6 SLAAC addresses
  • DNSSEC

DHCP

  • Kea configuration for IPv4 and IPv6 with host reservations
  • DDNS support to update DNS on DHCP changes
  • DHCP client support via dhcpcd for both IPv4 and IPv6 (autoconf & managed)
  • Track DHCP reservations and IPv6 SLAAC addresses over time

NTP

  • Configure chronyd server

Metrics

  • Configure Prometheus client on all systems
  • Configure Prometheus server
  • Configure Grafana
  • Create / generate dashboards for all servers in a site
  • Add libvirt metrics for vmhosts
  • Add nvme metrics for SSDs
  • Add IPMI metrics for physical servers
  • Add OneWire support for sensor metrics
  • Add SNMP support for network metrics

Storage

  • Configure Samba
  • Allow separate storage volume that can persist on VM rebuilds
  • Configure ZFS
  • Support for image, device and PCI passthrough disks on VMs
  • Add backup and / or shared mount support for durable VM configuration data
  • Add backup scripts for each server role & configure nightly backups

Build Server

  • Configure basic build tools
  • Create process for building executables and sharing with other VMs
  • Create durable build partition for builds without network access
  • Allow custom scripts to run as part of server builds

XWindows

  • Configure basic XFCE GUI
  • Setup simple desktop with standard plugins

Fake ISP

  • Basic configuration of an intermediate router / firewall for testing
  • Support for running a VM that can host another Yodler site for testing
  • Full IPv4 & IPv6 address support, including prefix delegation to mimic an upstream ISP