Skip to content

michaelawyu/fleet

This branch is 4 commits ahead of, 17 commits behind Azure/fleet:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7af1d2f · Jan 15, 2025
Dec 4, 2024
Sep 5, 2023
Jan 8, 2025
Jan 7, 2025
Jan 8, 2025
Jan 8, 2025
Oct 29, 2024
Nov 23, 2024
Jan 8, 2025
Nov 13, 2024
Jan 15, 2025
Jul 18, 2022
Jan 8, 2025
Oct 21, 2024
Oct 14, 2022
Sep 26, 2024
May 3, 2022
Aug 23, 2022
May 3, 2022
Oct 21, 2024
Dec 6, 2024
Sep 8, 2022
May 25, 2022
Oct 25, 2024
Oct 22, 2024
May 3, 2022
May 3, 2022
Jan 4, 2025
Jan 4, 2025

Repository files navigation

Fleet

GitHub release (latest by date) Go Report Card Build Status GitHub go.mod Go version codecov

Fleet provides the following capabilities

  • Join/Leave is a feature that allows a member cluster to join and leave a fleet by registering a custom resource on the fleet's control plane (the hub cluster).
  • Workload Orchestration is a feature that allows users to create resources on the hub cluster and then selectively propagate these resources to desired member clusters in the fleet.

Concepts

Fleet: A multi cluster solution that users use to manage Kubernetes clusters.

Hub cluster: A Kubernetes cluster that hosts the control plane of the fleet.

Member cluster: A Kubernetes cluster that is part of the fleet.

Fleet-system Namespace: A reserved namespace in all clusters for running Fleet networking controllers and putting internal resources.

Quick Start

This section provides a tutorial which explains how to setup and make use of the capabilities provided by fleet

Prerequisites

Steps to run agents on Kind clusters

export this variable which specifies the number of member clusters that will be created.

export MEMBER_CLUSTER_COUNT=1

from the root directory of the repo run the following command, by default a hub cluster gets created which is the control plane for fleet (The makefile uses kindest/node:v1.30.0)

make setup-clusters

then switch context to the hub cluster,

kubectl config use-context kind-hub  

create a member cluster CR on the hub cluster which allows the member cluster created on the setup step to join the fleet,

apiVersion: cluster.kubernetes-fleet.io/v1beta1
kind: MemberCluster
metadata:
  name: kind-cluster-1
spec:
  identity:
    name: fleet-member-agent-cluster-1
    kind: ServiceAccount
    namespace: fleet-system
    apiGroup: ""

get the membercluster to see if it has joined the fleet,

kubectl get memberclusters -A      

output is supposed to look like,

NAME             JOINED   AGE
kind-cluster-1   True     25m

Now we can go ahead and use the workload orchestration capabilities offered by fleet, please start with the concept to understand the details of various features offered by fleet.

Code of Conduct

This project has adopted the [Microsoft Open Source Code of Conduct][8]. For more information, see the [Code of Conduct FAQ][9] or contact [[email protected]][19] with any additional questions or comments.

Contributing

Support

Azure fleet is an open source project that is [not covered by the Microsoft Azure support policy][10]. [Please search open issues here][11], and if your issue isn't already represented please [open a new one][12]. The project maintainers will respond to the best of their abilities.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

About

Multi-cluster core

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Languages

  • Go 99.2%
  • Other 0.8%