Skip to content

[Docs] Advanced networking documentation#3166

Open
riccardotornesello wants to merge 33 commits intoliqotech:masterfrom
riccardotornesello:docs/networking
Open

[Docs] Advanced networking documentation#3166
riccardotornesello wants to merge 33 commits intoliqotech:masterfrom
riccardotornesello:docs/networking

Conversation

@riccardotornesello
Copy link
Copy Markdown
Contributor

@riccardotornesello riccardotornesello commented Dec 15, 2025

Description

This PR aims to add documentation concerning advanced concepts of the liqo's network fabric.

Contributors

Updates

Documentation

The main contribution concerns the addition of a section on Liqo's architecture, specifically its network architecture.

The following pages have been added to Architecture / Liqo's network:

  • Basic Concepts
  • Pod-to-Pod Example
  • Leaf-to-Leaf Communication
  • NodePort
  • Firewall Configuration
  • Route Configuration
  • IP
  • InternalNode

Sphinx

The Sphinx installation system has been changed: currently, the packages needed to compile the documentation are installed without a Python virtual environment, but this is no longer supported by default in new versions of PIP, so it has been necessary to use virtual environments in the Makefile.

Furthermore, to make local execution lighter and simpler, Nginx (via Docker) has been replaced with the native Python “http” module, which allows a static http server to be exposed.

Finally, the README has been modified to suggest that users use the autoserve command, which is more useful during development than serve thanks to its autoreload feature.

@adamjensenbot
Copy link
Copy Markdown
Collaborator

Hi @riccardotornesello. Thanks for your PR!

I am @adamjensenbot.
You can interact with me issuing a slash command in the first line of a comment.
Currently, I understand the following commands:

  • /rebase: Rebase this PR onto the master branch (You can add the option test=true to launch the tests
    when the rebase operation is completed)
  • /merge: Merge this PR into the master branch
  • /build Build Liqo components
  • /test Launch the E2E and Unit tests
  • /hold, /unhold Add/remove the hold label to prevent merging with /merge

Make sure this PR appears in the liqo changelog, adding one of the following labels:

  • feat: 🚀 New Feature
  • fix: 🐛 Bug Fix
  • refactor: 🧹 Code Refactoring
  • docs: 📝 Documentation
  • style: 💄 Code Style
  • perf: 🐎 Performance Improvement
  • test: ✅ Tests
  • chore: 🚚 Dependencies Management
  • build: 📦 Builds Management
  • ci: 👷 CI/CD
  • revert: ⏪ Reverts Previous Changes

@github-actions github-actions Bot added fix Fixes a bug in the codebase. docs Updates or adds documentation labels Dec 15, 2025
@riccardotornesello riccardotornesello marked this pull request as ready for review December 29, 2025 13:05
Comment thread docs/README.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
@github-actions github-actions Bot added the refactor Reorganizes or optimizes code without changing its behavior label Feb 5, 2026
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated

- The **gateway-client** acts as a WireGuard client, initiating the connection to the remote cluster.
- The **gateway-server** acts as a WireGuard server, accepting incoming connections from remote clients. The gateway-server must expose itself using a Kubernetes Service, which can be of type LoadBalancer, NodePort, or ClusterIP, depending on the cluster's networking setup and requirements.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The role of the gateway, either _client_ or _server_, can be dynamically configured before starting the peering.
In other words, this role does not depend whether the cluster is a Liqo resource _provider_ or _consumer_, although the default choice is to have the cluster provider acting as a gateway server, and the consumer acting as gateway client.

Comment thread docs/architecture/network/basic.md Outdated
Comment thread docs/architecture/network/basic.md Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Updates or adds documentation fix Fixes a bug in the codebase. refactor Reorganizes or optimizes code without changing its behavior size/XXL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants