Skip to content

Commit

Permalink
Documentation: new homepage
Browse files Browse the repository at this point in the history
  • Loading branch information
giorio94 authored and adamjensenbot committed Jun 17, 2022
1 parent 2327b1b commit e1408b2
Show file tree
Hide file tree
Showing 8 changed files with 257 additions and 71 deletions.
11 changes: 11 additions & 0 deletions docs/_static/css/custom.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/* Increase the marging around the homepage Liqo logo */
.custom-logo-image {
margin-top: 2ex !important;
margin-bottom: 5ex !important;
}

/* Smaller font size compared to the alternatives provided by sphinx-design */
.custom-fs-7, .custom-fs-7 > p {
font-size: 0.85rem !important;
line-height: unset !important;
}
45 changes: 45 additions & 0 deletions docs/_toc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
root: index
subtrees:

- caption: Features
entries:
- file: features/peering.md
- file: features/offloading.md
- file: features/network-fabric.md
- file: features/storage-fabric.md

- caption: Installation
entries:
- file: installation/requirements.md
- file: installation/liqoctl.md
- file: installation/install.md
- file: installation/uninstall.md

- caption: Examples
entries:
- file: examples/requirements.md
- file: examples/quick-start.md
- file: examples/offloading-with-policies.md
- file: examples/service-offloading.md
- file: examples/stateful-applications.md
- file: examples/global-ingress.md

- caption: Usage
entries:
- file: usage/peer.md
- file: usage/namespace-offloading.md
- file: usage/reflection.md
- file: usage/stateful-applications.md

- caption: Contributing
entries:
- file: contributing/contributing.md

- caption: More
entries:
- url: https://github.com/liqotech/liqo
title: GitHub Repository
- url: https://medium.com/the-liqo-blog
title: The Liqo Blog
- url: https://www.youtube.com/channel/UCYbWJMfwy3P6xT4JI_K84xw
title: Liqo on YouTube
20 changes: 17 additions & 3 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,13 @@
# ones.
extensions = [
'myst_parser',
'sphinx_tabs.tabs',
'sphinx_copybutton',
'sphinx_design',
'sphinx_external_toc',
]

myst_enable_extensions = [
"substitution",
]

# Add any paths that contain templates here, relative to this directory.
Expand All @@ -42,8 +47,8 @@
exclude_patterns = ['_build', '_legacy', 'Thumbs.db', '.DS_Store', 'README.md', 'requirements.txt']

linkcheck_ignore = [
r'http://localhost:\d+/?', # Localhost links
'https://github.com/virtual-kubelet/virtual-kubelet#liqo-provider' # This anchor is not found by the linter, but it works
r'http://localhost:\d+/?', # Localhost links
'https://github.com/virtual-kubelet/virtual-kubelet#liqo-provider' # This anchor is not found by the linter, but it works
]


Expand All @@ -59,6 +64,11 @@
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']

# These paths are either relative to html_static_path or fully qualified paths (eg. https://...)
html_css_files = ['css/custom.css']

html_title = 'Liqo'

# Configure the logo shown above the search bar.
html_logo = "_static/images/common/liqo-logo.svg"

Expand All @@ -81,3 +91,7 @@
'includehidden': True,
'titles_only': False
}

# External TOC options
external_toc_path = "_toc.yml"
external_toc_exclude_missing = True
163 changes: 163 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
---
myst:
substitutions:
github_badge: "[![GitHub stars](https://img.shields.io/github/stars/liqotech/liqo.svg?logo=github)](https://GitHub.com/liqotech/liqo/stargazers/)"
license_badge: "[![GitHub license](https://img.shields.io/github/license/liqotech/liqo.svg)](https://github.com/liqotech/liqo/blob/master/LICENSE)"
slack_badge: "[![Join slack](https://img.shields.io/badge/slack-liqo.io-blueviolet?logo=slack)](https://join.slack.com/t/liqo-io/shared_invite/zt-h20212gg-g24YvN6MKiD9bacFeqZttQ)"
twitter_badge: "[![Twitter follow](https://img.shields.io/twitter/follow/liqo_io?style=flat&color=ff69b4&logo=twitter)](https://twitter.com/liqo_io)"
documentation_badge: "[![Documentation status](https://readthedocs.org/projects/liqo/badge)](https://doc.liqo.io)"

---

<!-- markdownlint-disable first-line-h1 -->
<!-- Badges above the Liqo logo -->
```{centered} {{ github_badge }} {{ license_badge }} {{ slack_badge }} {{ twitter_badge }} {{ documentation_badge }}
```

<!-- Liqo logo image -->
````{cssclass} custom-logo-image
```{figure} _static/images/common/liqo-logo-blue.svg
:width: 400px
:align: center
:alt: Liqo
```
````

# What is Liqo?

Liqo is an open-source project which enables **dynamic and seamless Kubernetes multi-cluster topologies**, encompassing heterogeneous on-premise, cloud-provided, and edge infrastructures.

## What does Liqo provide?

````{grid} 1 1 1 2
:padding: 0
:gutter: 2
```{grid-item-card}
:class-header: sd-fs-5 sd-pt-3
:link: features/peering
:link-type: doc
{fa}`link;1.5rem` Peering
^^^
Automatic peer-to-peer establishment of **resource and service consumption relationships** between independent and heterogeneous clusters.
Do not worry about complex VPN configurations and certification authorities: everything is transparently **self-negotiated** for you.
```
```{grid-item-card}
:class-header: sd-fs-5 sd-pt-3
:link: features/offloading
:link-type: doc
{fa}`paper-plane;1.5rem` Offloading
^^^
Seamless **workloads offloading** to remote clusters, without requiring any modification to Kubernetes or the applications themselves.
**Multi-cluster is made native and transparent**: collapse an entire remote cluster to a **virtual node** compliant with the standard Kubernetes approaches and tools.
```
```{grid-item-card}
:class-header: sd-fs-5 sd-pt-3
:link: features/network-fabric
:link-type: doc
{fa}`globe;1.5rem` Network Fabric
^^^
A transparent **network fabric**, enabling multi-cluster **pod-to-pod** and **pod-to-service** connectivity, regardless of the underlying configurations and CNI plugins.
Natively **access the services** exported by remote clusters, and spread interconnected application components across multiple infrastructures, with all cross-cluster traffic flowing through **secured network tunnels**.
```
```{grid-item-card}
:class-header: sd-fs-5 sd-pt-3
:link: features/storage-fabric
:link-type: doc
{fa}`archive;1.5rem` Storage Fabric
^^^
A native **storage fabric**, supporting the remote execution of **stateful workloads** according to the **data gravity** approach.
Seamlessly extend standard (e.g., database) **high availability deployment techniques** to the multi-cluster scenarios, for **increased guarantees**.
All without the complexity of managing multiple independent cluster and application replicas.
```
````

## What to explore next?

````{grid} 1 1 1 2
:padding: 0
:gutter: 2
```{grid-item-card}
:class-header: sd-fs-5 sd-pt-3
:class-footer: sd-text-center sd-font-italic custom-fs-7
{fa}`bolt;1.5rem` Features
^^^
New to Liqo? Would you like to know more?
Here you can find an in-depth overview of what a **peering** is, how the *virtual node* abstraction enables **workload offloading**, as well as discover about the **network and storage fabric** subsystems, ensuring the seamless functioning of unmodified multi-cluster applications.
+++
[](features/peering) ·
[](features/offloading) ·
[](features/network-fabric) ·
[](features/storage-fabric)
```
```{grid-item-card}
:class-header: sd-fs-5 sd-pt-3
:class-footer: sd-text-center sd-font-italic custom-fs-7
{fa}`cloud-download;1.5rem` Installation
^^^
Ready to give Liqo a try?
Learn about installation and connectivity **requirements**, discover how to download and install **liqoctl**, the CLI tool to streamline the installation and management Liqo, as well as explore the **customization options**, based on the target environment characteristics.
+++
[](installation/requirements.md) ·
[](installation/liqoctl.md) ·
[](installation/install.md) ·
[](installation/uninstall.md)
```
```{grid-item-card}
:class-header: sd-fs-5 sd-pt-3
:class-footer: sd-text-center sd-font-italic custom-fs-7
{fa}`search;1.5rem` Examples
^^^
Would you like to quickly join the fray and experiment with Liqo?
Set up your playground and check out the **getting started examples**, that will guide you through a scenario-driven tour of the most notable features of Liqo.
Discover how to **offload** (a subset) of your workloads, **access services** provided by remote clusters, **expose** multi-cluster application, and more.
+++
[](examples/quick-start.md) ·
[](examples/offloading-with-policies.md) ·
[](examples/service-offloading.md) ·
[](examples/stateful-applications.md) ·
[](examples/global-ingress.md)
```
```{grid-item-card}
:class-header: sd-fs-5 sd-pt-3
:class-footer: sd-text-center sd-font-italic custom-fs-7
{fa}`cogs;1.5rem` Usage
^^^
Do you want to make a step further and discover all Liqo configuration options?
These guides get you covered!
Discover how to **establish and configure a peering** between two clusters, as well as how to enable and customize **namespace offloading**.
Explore the details about which and how native resources are **reflected** to remote clusters, and learn more about the support for **stateful applications**.
+++
[](usage/peer.md) ·
[](usage/namespace-offloading.md) ·
[](usage/reflection.md) ·
[](usage/stateful-applications.md)
```
````
46 changes: 0 additions & 46 deletions docs/index.rst

This file was deleted.

18 changes: 9 additions & 9 deletions docs/installation/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ The reminder of this page, then, presents **additional customization options** w
Ensure you selected the correct target cluster before issuing *liqoctl* commands (as you would do with *kubectl*).
```

`````{tabs}
`````{tab-set}
````{tab} Kubeadm
````{tab-item} Kubeadm
**Supported CNIs**
Expand Down Expand Up @@ -49,7 +49,7 @@ By default, the cluster is assigned an automatically generated name, then levera
Alternatively, you can manually specify a desired name with the `--cluster-name` flag.
````
````{tab} OpenShift
````{tab-item} OpenShift
**Supported versions**
Expand All @@ -67,7 +67,7 @@ By default, the cluster is assigned an automatically generated name, then levera
Alternatively, you can manually specify a desired name with the `--cluster-name` flag.
````
````{tab} AKS
````{tab-item} AKS
**Supported CNIs**
Expand Down Expand Up @@ -116,7 +116,7 @@ Additionally, since your API Server is not accessible from the public Internet,
```
````
````{tab} EKS
````{tab-item} EKS
**Supported CNIs**
Expand Down Expand Up @@ -164,7 +164,7 @@ By default, the cluster is assigned the same name as that specified through the
Alternatively, you can manually specify a different name with the `--cluster-name` *liqoctl* flag.
````
````{tab} GKE
````{tab-item} GKE
**Supported CNIs**
Expand Down Expand Up @@ -248,7 +248,7 @@ By default, the cluster is assigned the same name as that assigned in GCP.
Alternatively, you can manually specify a different name with the `--cluster-name` *liqoctl* flag.
````
````{tab} K3s
````{tab-item} K3s
**Installation**
Expand All @@ -262,7 +262,7 @@ By default, the cluster is assigned an automatically generated name, then levera
Alternatively, you can manually specify a desired name with the `--cluster-name` flag.
````
````{tab} KinD
````{tab-item} KinD
**Installation**
Expand All @@ -276,7 +276,7 @@ By default, the cluster is assigned an automatically generated name, then levera
Alternatively, you can manually specify a desired name with the `--cluster-name` flag.
````
````{tab} Other
````{tab-item} Other
**Configuration**
Expand Down

0 comments on commit e1408b2

Please sign in to comment.