multus-service

module
v0.0.0-...-b66e341 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 20, 2023 License: Apache-2.0

README

multus-service

Current Status of Repository

It is now pretty early stage of development, hence everything may be changed without any notification. Please do NOT use it as production. We don't support any question about how-to-use/how-to-deploy until current development status is changed.

Description

This repository contains various components which provides service abstraction, which similar to Kubernetes services, for Multus network attachment definitions.

Supported Feature

Currently these compoents supports following functionalities:

  • Cluster IP
  • Load-balancing Cluster IP among the service Pods with iptables

Other service related features is to be discussed in Kubernetes Network Plumbing WG. Some of them might be supported in the future but this does not guarantee that all Kubernetes service features are going to be supported.

Limitation

As noted above section, we do not support everything except above yet. We need to discuss how to implement and how to support it. Please keep in mind that these feature should be discussed but it may be concluded NOT to support (due to multus network design perspective or some other reason).

Example (not support it yet):

  • Load balancer
  • Expose multus service to outside cluster
  • kubectl port-forward svc command
  • Headless service (see #22 for the detail)

Requirements

TBD (verified with kubeadm k8s and cri-o as container runtime for now) Note: docker for container runtime is not supported as latest Kubernetes does.

Container Images

Available in Packages. Currently amd64 only.

How to Deploy

Sample deployment is in following:

TODO

TBD

Directories

Path Synopsis
cmd
multus-proxy
This is a 'multus-proxy'.
This is a 'multus-proxy'.
multus-service-controller
This is 'multus-service-controller', which creates endpointslice for multus service, from multus interface output and service object.
This is 'multus-service-controller', which creates endpointslice for multus service, from multus interface output and service object.
pkg
proxy/controllers
Package controllers provides controller code for multus-proxy.
Package controllers provides controller code for multus-proxy.
proxy/server
Package server provides server function for multus-proxy.
Package server provides server function for multus-proxy.
proxy/utils
Package utils provides utility function for multus-proxy
Package utils provides utility function for multus-proxy
service-controller
Package endpointslice proides multus-service-controller functions for endpointslice.
Package endpointslice proides multus-service-controller functions for endpointslice.
service-controller/metrics
Package metrics provides metrics for multus-service-controller.
Package metrics provides metrics for multus-service-controller.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL