Skip to content

Commit e352dce

Browse files
committed
docs: updated kaktus description
1 parent bbd916e commit e352dce

9 files changed

Lines changed: 20 additions & 5 deletions

File tree

content/en/docs/concepts/kaktus.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn about Kaktus HCI node.
44
weight: 6
55
---
66

7-
**Kaktus** stands for **K**owabunga **A**ffordable **K**vm and **TU**rnkey **S**torage (!!), basically, our Hyper-Converged Infrastructure (HCI) node.
7+
**Kaktus** stands for **K**owabunga **A**mazing **K**VM and **TU**rnkey **S**torage (!!), basically, our Hyper-Converged Infrastructure (HCI) node.
88

99
While large virtualization systems such as VMware usually requires you to dedicate servers as computing hypervisors (with plenty of CPU and memory) and associate them with remote, extensive NAS or vSAN, providing storage, Kowabunga follows the opposite approach. Modern hardware is powerful enough to handle both computing and storage.
1010

@@ -21,7 +21,16 @@ If you're already ordering a heavy computing rackable server, extending it with
2121
- several local disks, to be part of a region-global [Ceph](https://ceph.io/en/) distributed storage cluster.
2222
- the **Kowabunga Kaktus agent**, connected to **Kahuna**
2323

24-
**Kaktus agent** controls the local **KVM** hypervisor through **libvirt** backend and the local-network distributed **Ceph** storage, allowing management of virtual machines and disks.
24+
From a pure low-level software perspective, our virtualization stack relies on 3 stacks:
25+
26+
- **Linux Network Bridging driver**, for virtual interfaces access to host raw network interfaces and physical network.
27+
- **Linux KVM driver**, for CPU VT-X extension support and improved virtualization performances.
28+
- **RBD (Rados Block Device) driver**, for storing virtual block devices under distributed Ceph storage engine.
29+
QEMU drives these different backends to virtualize resources on to.
30+
31+
![Kaktus Topology](/images/kaktus.png#center)
32+
33+
Now **QEMU** being a local host process to be spawned, we need some kind of orchestration layer on top of that. Here comes **libvirt**. libvirt provides an API over TCP/TLS/SSH that wraps virtual machines definition over an XML representation that can be fully created/updated/destroyed remotely, controlling **QEMU** underneath. **Kaktus agent** controls the local **KVM** hypervisor through **libvirt** backend and the local-network distributed **Ceph** storage, allowing management of virtual machines and disks.
2534

2635
{{< alert color="success" title="Note" >}}
2736
When configured for production-systems, Ceph storage cluster will be backed by cross-zones N-times (usually 3) replicated high-performance block devices, providing virtually infinitely scalable and resizeable disk volumes with byte-precision.

content/en/docs/concepts/koala.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ weight: 4
66

77
**Koala** is Kowabunga's WebUI. It allows for day-to-day supervision and operation of the various projects and services.
88

9-
![](/docs/concepts/koala.png)
9+
![Koala](/images/koala.png#center)
1010

1111
But should you ask a senior DevOps / SRE / IT admin, fully automation-driven, he'd damn anyone who'd have used the Web client to manually create/edit resources and messes around his perfecly maintained CasC.
1212

content/en/docs/getting-started/topology.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ weight: 3
66

77
Let's use this sample network topology for the rest of this tutorial:
88

9-
![](/docs/getting-started/network-topology.png)
9+
![Network Topology](/images/network-topology.png#center)
1010

1111
We'll start with a single **Kahuna** instance, with public Internet exposure. The instance's hostname will be **kowabunga-kahuna-1** and it has 2 network adapters and associated IP addresses:
1212

go.mod

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,7 @@ module github.com/google/docsy-example
22

33
go 1.12
44

5-
require github.com/google/docsy v0.12.0
5+
require (
6+
github.com/google/docsy v0.12.0
7+
github.com/hugomods/images v0.12.3 // indirect
8+
)

go.sum

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ github.com/google/docsy v0.11.0 h1:QnV40cc28QwS++kP9qINtrIv4hlASruhC/K3FqkHAmM=
55
github.com/google/docsy v0.11.0/go.mod h1:hGGW0OjNuG5ZbH5JRtALY3yvN8ybbEP/v2iaK4bwOUI=
66
github.com/google/docsy v0.12.0 h1:CddZKL39YyJzawr8GTVaakvcUTCJRAAYdz7W0qfZ2P4=
77
github.com/google/docsy v0.12.0/go.mod h1:1bioDqA493neyFesaTvQ9reV0V2vYy+xUAnlnz7+miM=
8+
github.com/hugomods/images v0.12.3 h1:FiHZnFgbxn4SpxdY8harOxhYKA8WhAgibJoHhIe9sdU=
9+
github.com/hugomods/images v0.12.3/go.mod h1:U6Gwj16LKvk66rOMyGFrnF6f0aV8lT89lqOsckOAjYY=
810
github.com/twbs/bootstrap v5.3.3+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0=
911
github.com/twbs/bootstrap v5.3.5+incompatible h1:6XrrFNMsiTTFcVTBf2886FO2XUNtwSE+QPv1os0uAA4=
1012
github.com/twbs/bootstrap v5.3.5+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0=

hugo.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -217,3 +217,4 @@ module:
217217
imports:
218218
- path: github.com/google/docsy
219219
disable: false
220+
- path: github.com/hugomods/images

static/images/kaktus.png

36.1 KB
Loading
File renamed without changes.

0 commit comments

Comments
 (0)