How does KaOS work?
KaOS is a next-generation virtualization platform based on Linux KVM.
App Modules can be used to automatically generate Virtual Guests...
The entire KaOS hypervisor is embedded inside a Linux kernel. During the boot process the hypervisor
platform is uncompressed into memory and control is passed to kattach.
The boot process is managed by kattach, an Open Source software project developed by Carbon Mountain.
Although it might at first appear as a simple init replacement, the kattach process performs several functions.
It manages the configuration through a local SQLite database, initializes networking, firewall, storage and virtual
guest components based on that configuration. A secure shared memory interface is established to enable the AppQueue
CLI to communicate with the kattach process.
AppQueue CLI
The AppQueue CLI provides a menu driven management system for the hypervisor that can be accessed via SSH or
via the console. By default the CLI runs on port 1289 and is accessible via the
aqcli user. The default
password for this user varies from release to release. Further information is available in the release notes.
Everything related to the Hypervisor is handled through the CLI.
vKaOS
The vKaOS platform provides a universal virtual guest operating system. The vKaOS platform is usually the first
module to be installed on the system and must be installed before App Modules can be deployed or imported. The vKaOS
module is a special Linux kernel with vKaOS embedded, virtual drivers compiled in and other optimizations for running as a virtual server under KaOS.
App Modules
App Modules provide software solutions that can be combined with vKaOS to create a Virtual Appliance or Virtual Server.
App Modules are delivered via AppQueues. Carbon Mountain provides three AppQueues to end-users. The community AppQueue
is available to everyone and provides access to popular Open Source solutions. The community AppQueue typically contains the
latest stable release. The development AppQueue is also available to everyone. The development AppQueue typically contains alpha and
beta quality App Modules, often based off the latest unstable or development releases of Open Source projects. The supported AppQueue
is available to customers with an active KaOS subscription for their hypervisor. The supported AppQueue provides long term support and
a wider selection of stable versions. The supported AppQueue also contains enhanced configuration and stats CLIs.
App Modules are made up of three components. The App Module image itself, which resides within a .aqi file. A climod.aq file which extends
the AppQueue CLI for the module and an appmgr.aq file which provides management services for the module.
Configuration Groups
App Modules can have many different configurations. For example, a web server app module may have dozens of different configurations depending on what web
sites it is serving. In KaOS, a configuration group is a single configuration instance for an App Module. Each configuration group must have a
unique name.
VM Image
Once App Modules are installed and have at least one configuration group associated with them. A VM image can be created. The VM image is used
to tell KaOS what App Modules and Configuration Groups will be used to build the Virtual Machine (virtual server). Creating a VM image is simple,
the user gives the CLI a name for the VM image, what App Modules to include and what Configuration Groups to include. With the VM image created,
the user can use the CLI to deploy as many instances of that Virtual Machine as they need.
Virtual Networking
KaOS will automatically handle the IP address management and Virtual MAC address management for all the Virtual Servers it is running. Virtual
Networking works by creating individual virtual switches for each VLAN on the Hypervisor. Virtual servers assigned to those VLANs are assigned
IP addresses from the per VLAN IP pools. The KaOS platform will automatically manage the firewall based on the configuration.
Click
here to find out how KaOS compares to other Virtualization solutions.