diff --git a/docs/assets/images/rackspace_logo-white.svg b/docs/assets/images/rackspace_logo-white.svg
new file mode 100644
index 00000000..ac56c8a4
--- /dev/null
+++ b/docs/assets/images/rackspace_logo-white.svg
@@ -0,0 +1 @@
+
diff --git a/docs/index.md b/docs/index.md
index 28e1f31b..60cff529 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -1,23 +1,45 @@
+---
+hide:
+ - navigation
+ - toc
+---
+
# Welcome to the Genestack Documentation
-![Genestack Logo Mono](assets/images/genestack-logo.png#only-dark){ align=left }
-![Genestack Logo Mono](assets/images/genestack-logo-mono.png#only-light){ align=left }
+
+- :material-abacus:{ .lg .middle } __Genestack__
+
+ ---
+
+ Where Kubernetes and OpenStack tango in the cloud. Imagine a waltz between systems that deploy
+ what you need. Operators play the score, managing the complexity with a flick of their digital batons. They
+ unify the chaos, making scaling and management a piece of cake. Think of it like a conductor effortlessly
+ guiding a cacophony into a symphony.
-!!! info "The etymology of our Stack"
+- :material-alpha:{ .lg .middle } __dʒen.ə.stæk__
- Genestack - dʒen.ə.stæk
+ ---
- 1. The genesis of cloud
- 2. Open-Infrastructure Simplified
- 3. Your new favorite OpenStack ecosystem
+ 1. The genesis of Open-Infrastructure
+ 2. Cloud Simplified
+ 3. Your new favorite ecosystem
+
-Genestack — where Kubernetes and OpenStack tango in the cloud. Imagine a waltz between systems that deploy
-what you need. Operators play the score, managing the complexity with a flick of their digital batons. They
-unify the chaos, making scaling and management a piece of cake. Think of it like a conductor effortlessly
-guiding a cacophony into a symphony.
+---
+
+![Genestack Logo](assets/images/genestack-logo.png){ align=left }
## What is Genestack?
Genestack is a complete operations and deployment ecosystem for Kubernetes and OpenStack. The purpose is of
this project is to allow hobbyists, operators, and cloud service providers the ability to build, scale, and
leverage Open-Infrastructure in new and exciting ways.
+
+Genestack’s inner workings are a blend dark magic — crafted with [Kustomize](https://kustomize.io) and
+[Helm](https://helm.sh). It’s like cooking with cloud. Want to spice things up? Tweak the
+`kustomization.yaml` files or add those extra 'toppings' using Helm's style overrides. However, the
+platform is ready to go with batteries included.
+
+Genestack is making use of some homegrown solutions, community operators, and OpenStack-Helm. Everything
+in Genestack comes together to form cloud in a new and exciting way; all built with opensource solutions
+to manage cloud infrastructure in the way you need it.
diff --git a/docs/openstack-overview.md b/docs/openstack-overview.md
index cd593494..1b8237a0 100644
--- a/docs/openstack-overview.md
+++ b/docs/openstack-overview.md
@@ -1,23 +1,12 @@
# Building the cloud
-From this point forward we're building our OpenStack cloud. The following commands will leverage `helm` as the package manager and `kustomize` as our configuration management backend.
-
-## Deployment choices
-
-When you're building the cloud, you have a couple of deployment choices, the most fundamental of which is `base` or `aio`.
-
-* `base` creates a production-ready environment that ensures an HA system is deployed across the hardware available in your cloud.
-* `aio` creates a minimal cloud environment which is suitable for test, which may have low resources.
-
-The following examples all assume the use of a production environment, however, if you change `base` to `aio`, the deployment footprint will be changed for a given service.
+![Genestack Logo](assets/images/genestack-logo.png){ align=right }
## The DNA of our services
-![Genestack Logo Mono](assets/images/genestack-logo.png#only-dark){ align=left }
-![Genestack Logo Mono](assets/images/genestack-logo-mono.png#only-light){ align=left }
The DNA of the OpenStack services has been built to scale, and be managed in a pseudo light-outs environment. We're aiming to empower operators to do more, simply and easily. The high level tenets we started our project from are simple and were written with intention. We're building Genestack not to show off how complex our platform is or how smart our engineers are, we're building systems to show how simple cloud deployment, operations, and maintenance can be.
-### Core Tenets
+## Core Tenets
* All services make use of our core infrastructure which is all managed by operators.
* Rollback and versioning is present and a normal feature of our operations.
* Backups, rollbacks, and package management all built into our applications delivery.
@@ -25,3 +14,16 @@ The DNA of the OpenStack services has been built to scale, and be managed in a p
* The primary node is part of application service discovery and will be automatically promoted / demoted within the cluster as needed.
* Queues, permissions, vhosts, and users are all backed by a cluster with automatic failover. All of the queues deployed in the environment are done with Quorum queues, giving us a best of bread queing platform which gracefully recovers from faults while maintaining performance.
* Horizontal scaling groups have been applied to all of our services. This means we'll be able to auto scale API applications up and down based on the needs of the environment.
+
+## Deployment choices
+
+When you're building the cloud, you have a couple of deployment choices, the most fundamental of which is `base` or `aio`.
+
+* `base` creates a production-ready environment that ensures an HA system is deployed across the hardware available in your cloud.
+* `aio` creates a minimal cloud environment which is suitable for test, which may have low resources.
+
+The following examples all assume the use of a production environment, however, if you change `base` to `aio`, the deployment footprint will be changed for a given service.
+
+!!! info
+
+ From this point forward we're building our OpenStack cloud. The following commands will leverage `helm` as the package manager and `kustomize` as our configuration management backend.
diff --git a/docs/overrides/stylesheets/adr.css b/docs/overrides/stylesheets/adr.css
index 5bbb36fc..7bf9d4b6 100644
--- a/docs/overrides/stylesheets/adr.css
+++ b/docs/overrides/stylesheets/adr.css
@@ -96,3 +96,15 @@
.md-grid {
max-width: 95%;
}
+
+.md-nav__item--active>.md-nav__link {
+ color: #c90000;
+ font-weight: bold;
+}
+
+[data-md-color-accent=red] {
+ --md-accent-fg-color: #eb0000;
+ --md-accent-fg-color--transparent: #ff19471a;
+ --md-accent-bg-color: #fff;
+ --md-accent-bg-color--light: #ffffffb3
+}
diff --git a/mkdocs.yml b/mkdocs.yml
index 3bc55e0d..d6234a39 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -1,77 +1,100 @@
---
site_name: Genestack
site_description: >-
- Genestack — by Rackspace, where Kubernetes and OpenStack tango in the cloud. Imagine a waltz between systems that deploy what you need.
+ Genestack — by Rackspace, where Kubernetes and OpenStack tango in the cloud. Imagine a waltz between systems that deploy what you need.
+
+site_url: https://rackerlabs.github.io/genestack
theme:
- name: material
- logo: assets/images/genestack-logo.png
- favicon: assets/images/pngegg.png
- palette:
- - media: "(prefers-color-scheme: light)"
- scheme: default
- toggle:
- icon: material/brightness-7
- name: Switch to dark mode
- - media: "(prefers-color-scheme: dark)"
- scheme: slate
- toggle:
- icon: material/brightness-4
- name: Switch to light mode
+ name: material
+ logo: assets/images/rackspace_logo-white.svg
+ favicon: assets/images/pngegg.png
+ icon:
+ logo: logo
+ palette:
+ - media: "(prefers-color-scheme)"
+ toggle:
+ icon: material/link
+ name: Switch to light mode
+ - media: "(prefers-color-scheme: light)"
+ scheme: default
+ primary: black
+ accent: red
+ toggle:
+ icon: material/toggle-switch
+ name: Switch to dark mode
+ - media: "(prefers-color-scheme: dark)"
+ scheme: slate
+ primary: black
+ accent: red
+ toggle:
+ icon: material/toggle-switch-off
+ name: Switch to system preference
+
+ font:
+ text: Roboto
+ code: Roboto Mono
+
+ features:
+ - announce.dismiss
+ - header.autohide
+ - content.action.edit
+ - content.action.view
+ - content.code.annotate
+ - content.code.copy
+ - content.tooltips
+ - navigation.footer
+ - navigation.indexes
+ - navigation.instant
+ - navigation.instant.progress
+ - navigation.instant.preview
+ - navigation.prune
+ - navigation.path
+ - navigation.sections
+ - navigation.tabs
+ - navigation.top
+ - navigation.tracking
+ - search.highlight
+ - search.share
+ - search.suggest
+ - toc.follow
- features:
- - announce.dismiss
- - content.action.edit
- - content.code.annotate
- - content.code.copy
- - content.tooltips
- - navigation.footer
- - navigation.indexes
- - navigation.instant
- - navigation.prune
- - navigation.path
- - navigation.sections
- - navigation.tabs
- - navigation.tabs.sticky
- - navigation.top
- - navigation.tracking
- - search.highlight
- - search.share
- - search.suggest
- - toc.follow
+copyright: Copyright © 2024 RACKSPACE TECHNOLOGY
extra_css:
- - stylesheets/adr.css
+ - overrides/stylesheets/adr.css
plugins:
- - search
- - swagger-ui-tag
- - mkdocs-material-adr/adr
- - glightbox
+ - search
+ - swagger-ui-tag
+ - mkdocs-material-adr/adr
+ - glightbox
markdown_extensions:
- - admonition
- - attr_list
- - md_in_html
- - def_list
- - pymdownx.tasklist:
- custom_checkbox: true
- - pymdownx.superfences:
- custom_fences:
- - name: python
- class: python
- validator: !!python/name:markdown_exec.validator
- format: !!python/name:markdown_exec.formatter
- - name: mermaid
- class: mermaid
- format: !!python/name:pymdownx.superfences.fence_code_format
- - pymdownx.emoji:
- emoji_index: !!python/name:material.extensions.emoji.twemoji
- emoji_generator: !!python/name:material.extensions.emoji.to_svg
- - pymdownx.highlight:
- anchor_linenums: true
- line_spans: __span
- pygments_lang_class: true
+ - admonition
+ - attr_list
+ - md_in_html
+ - def_list
+ - pymdownx.tasklist:
+ custom_checkbox: true
+ - pymdownx.superfences:
+ custom_fences:
+ - name: python
+ class: python
+ validator: !!python/name:markdown_exec.validator
+ format: !!python/name:markdown_exec.formatter
+ - name: mermaid
+ class: mermaid
+ format: !!python/name:pymdownx.superfences.fence_code_format
+ - pymdownx.emoji:
+ emoji_index: !!python/name:material.extensions.emoji.twemoji
+ emoji_generator: !!python/name:material.extensions.emoji.to_svg
+ - pymdownx.highlight:
+ anchor_linenums: true
+ line_spans: __span
+ pygments_lang_class: true
+ - pymdownx.inlinehilite
+ - pymdownx.snippets
repo_name: rackerlabs/genestack
repo_url: https://github.com/rackerlabs/genestack
@@ -79,80 +102,80 @@ dev_addr: "127.0.0.1:8001"
edit_uri: "edit/main/docs"
nav:
- - Welcome: index.md
- - Overview:
- - Architecture: genestack-architecture.md
- - Components: genestack-components.md
- - Quickstart:
- - Building Virtual Environments: build-test-envs.md
- - Simple Setup: quickstart.md
- - Deployment Guide:
- - genestack-getting-started.md
- - Building the Cloud:
- - Kubernetes:
- - k8s-overview.md
- - Providers:
- - Kubespray: k8s-kubespray.md
- - Post Deployment:
- - Kubernetes Labels: k8s-labels.md
- - Kubernetes Dashboard: k8s-dashboard.md
- - Kubernetes Taint: k8s-taint.md
- - Retrieve kube config: k8s-config.md
- - Storage:
- - storage-overview.md
- - Ceph Internal: storage-ceph-rook-internal.md
- - Ceph External: storage-ceph-rook-external.md
- - NFS External: storage-nfs-external.md
- - TopoLVM: storage-topolvm.md
- - Monitoring:
- - Monitoring Overview: prometheus.md
- - Secrets:
- - vault.md
- - Vault Operator: vault-secrets-operator.md
- - Infrastructure:
- - infrastructure-overview.md
- - Namespace: infrastructure-namespace.md
- - Ingress: infrastructure-ingress.md
- - MariaDB:
- - infrastructure-mariadb.md
- - MySQL Exporter: prometheus-mysql-exporter.md
- - PostgreSQL: infrastructure-postgresql.md
- - RabbitMQ:
- - infrastructure-rabbitmq.md
- - RabbitMQ Exporter: prometheus-rabbitmq-exporter.md
- - Memcached: infrastructure-memcached.md
- - Libvirt: infrastructure-libvirt.md
- - OVN:
- - infrastructure-ovn.md
- - OVN Setup: infrastructure-ovn-setup.md
- - MetalLB: infrastructure-metallb.md
- - OpenStack:
- - openstack-overview.md
- - OpenStack Preparations: openstack-helm-make.md
- - OpenStack Services:
- - Keystone: openstack-keystone.md
- - Glance: openstack-glance.md
- - Heat: openstack-heat.md
- - Cinder: openstack-cinder.md
- - Compute Kit: openstack-compute-kit.md
- - Dashboards:
- - Horizon: openstack-horizon.md
- - skyline: openstack-skyline.md
- - Octavia: openstack-octavia.md
- - Gnocchi: openstack-gnocchi.md
- - Openstack Exporter: prometheus-openstack-metrics-exporter.md
- - Operational Guide:
- - Running Genestack Upgrade: genestack-upgrade.md
- - Running Kubespray Upgrade: k8s-kubespray-upgrade.md
- - Infrastructure:
- - OVN Database Backup: infrastructure-ovn-db-backup.md
- - Connecting to MySQL: infrastructure-mariadb-connect.md
- - OpenStack:
- - Generating Clouds YAML: openstack-clouds.md
- - Keystone Federation to Rackspace: openstack-keystone-federation.md
- - Nova Flavor Creation: openstack-flavors.md
- - Creating Networks: openstack-neutron-networks.md
- - Glance Images Creation: openstack-glance-images.md
- - Building Local Images: build-local-images.md
- - Third Party Tools:
- - OSIE: extra-osie.md
+ - Welcome: index.md
+ - Overview:
+ - Architecture: genestack-architecture.md
+ - Components: genestack-components.md
+ - Quickstart:
+ - Building Virtual Environments: build-test-envs.md
+ - Simple Setup: quickstart.md
+ - Deployment Guide:
+ - genestack-getting-started.md
+ - Open Infrastructure:
+ - Kubernetes:
+ - k8s-overview.md
+ - Providers:
+ - Kubespray: k8s-kubespray.md
+ - Post Deployment:
+ - Kubernetes Labels: k8s-labels.md
+ - Kubernetes Dashboard: k8s-dashboard.md
+ - Kubernetes Taint: k8s-taint.md
+ - Retrieve kube config: k8s-config.md
+ - Storage:
+ - storage-overview.md
+ - Ceph Internal: storage-ceph-rook-internal.md
+ - Ceph External: storage-ceph-rook-external.md
+ - NFS External: storage-nfs-external.md
+ - TopoLVM: storage-topolvm.md
+ - Monitoring:
+ - Monitoring Overview: prometheus.md
+ - Secrets:
+ - vault.md
+ - Vault Operator: vault-secrets-operator.md
+ - Infrastructure:
+ - infrastructure-overview.md
+ - Namespace: infrastructure-namespace.md
+ - Ingress: infrastructure-ingress.md
+ - MariaDB:
+ - infrastructure-mariadb.md
+ - MySQL Exporter: prometheus-mysql-exporter.md
+ - PostgreSQL: infrastructure-postgresql.md
+ - RabbitMQ:
+ - infrastructure-rabbitmq.md
+ - RabbitMQ Exporter: prometheus-rabbitmq-exporter.md
+ - Memcached: infrastructure-memcached.md
+ - Libvirt: infrastructure-libvirt.md
+ - OVN:
+ - infrastructure-ovn.md
+ - OVN Setup: infrastructure-ovn-setup.md
+ - MetalLB: infrastructure-metallb.md
+ - OpenStack:
+ - openstack-overview.md
+ - OpenStack Preparations: openstack-helm-make.md
+ - OpenStack Services:
+ - Keystone: openstack-keystone.md
+ - Glance: openstack-glance.md
+ - Heat: openstack-heat.md
+ - Cinder: openstack-cinder.md
+ - Compute Kit: openstack-compute-kit.md
+ - Dashboards:
+ - Horizon: openstack-horizon.md
+ - skyline: openstack-skyline.md
+ - Octavia: openstack-octavia.md
+ - Gnocchi: openstack-gnocchi.md
+ - Openstack Exporter: prometheus-openstack-metrics-exporter.md
+ - Operational Guide:
+ - Running Genestack Upgrade: genestack-upgrade.md
+ - Running Kubespray Upgrade: k8s-kubespray-upgrade.md
+ - Infrastructure:
+ - OVN Database Backup: infrastructure-ovn-db-backup.md
+ - Connecting to MySQL: infrastructure-mariadb-connect.md
+ - OpenStack:
+ - Generating Clouds YAML: openstack-clouds.md
+ - Keystone Federation to Rackspace: openstack-keystone-federation.md
+ - Nova Flavor Creation: openstack-flavors.md
+ - Creating Networks: openstack-neutron-networks.md
+ - Glance Images Creation: openstack-glance-images.md
+ - Building Local Images: build-local-images.md
+ - Third Party Tools:
+ - OSIE: extra-osie.md