Skip to content

sighupio/module-networking

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

478 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Shows a black logo in light color mode and a white one in dark color mode.
Networking Module

Release License Slack

Networking Module implements in-cluster networking for SIGHUP Distribution (SD) via Container Network Interface (CNI) plugins.

If you are new to SD please refer to the official documentation on how to get started with SD.

Overview

Kubernetes adopts the Container Network Interface (CNI) specification for managing network resources on a cluster. Networking Module uses the CNCF projects Calico (via the Tigera Operator) and Cilium — open-source networking and network security solutions for containers, virtual machines and bare-metal workloads — to bring networking capabilities to the distribution.

Packages

The following packages are included in Networking Module:

Package Version Description
cilium 1.18.11 Cilium CNI plugin. For clusters with < 200 nodes.
tigera 1.40.13 (Calico 3.31.6) Tigera Operator, a Kubernetes Operator for Calico, provides pre-configured installations for on-prem and for EKS in policy-only mode.

Click on each package to see its full documentation.

Compatibility

Kubernetes Version Compatibility Notes
1.32.x No known issues
1.33.x No known issues
1.34.x No known issues
1.35.x No known issues

Check the compatibility matrix for additional information about previous releases of the module.

Usage

Networking Module is part of SIGHUP Distribution (SD) and is deployed automatically by furyctl when you create or update a KFDDistribution or OnPremises cluster. You don't need to download, vendor or install its packages manually.

Configuration

You configure the module under spec.distribution.modules.networking in your furyctl.yaml. The type field selects the CNI plugin to deploy: calico (Tigera Operator) or cilium (on KFDDistribution you can also set none when the CNI is managed outside this module). The other fields are optional and fall back to sensible defaults.

On an OnPremises cluster furyctl manages the Kubernetes phase too, so the pod CIDR is taken from the cluster's spec.kubernetes configuration and the podCidr/maskSize fields are optional:

apiVersion: kfd.sighup.io/v1alpha2
kind: OnPremises
spec:
  distribution:
    modules:
      networking:
        type: calico

On a KFDDistribution cluster (an already existing cluster, with no Kubernetes phase managed by furyctl) you set the pod CIDR explicitly when using Cilium:

apiVersion: kfd.sighup.io/v1alpha2
kind: KFDDistribution
spec:
  distribution:
    modules:
      networking:
        type: cilium
        cilium:
          podCidr: 10.0.0.0/8
          maskSize: "24"

See the configuration reference for your cluster kind for the full list of available options: KFDDistribution or OnPremises.

To install SD from scratch, follow the Getting started guide.

Contributing

Before contributing, please read first the Contributing Guidelines.

Reporting Issues

In case you experience any problem with the module, please open a new issue.

License

This module is open-source and it's released under the following LICENSE.

About

Networking Module: CNI and Network management features for Kubernetes Clusters

Resources

License

Contributing

Stars

9 stars

Watchers

8 watching

Forks

Packages

 
 
 

Contributors

Languages