Skip to content

Commit c93d35c

Browse files
committed
docs: update readme
1 parent 4380aa9 commit c93d35c

File tree

1 file changed

+23
-1
lines changed

1 file changed

+23
-1
lines changed

README.adoc

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,26 @@
11
= Oxide Cloud Controller Manager
22

3-
The Oxide Cloud Controller Manager implements the
3+
The Oxide Cloud Controller Manager is a Kubernetes control plane component
4+
that contains Oxide specific controllers. This allows Kubernetes clusters
5+
running on Oxide to integrate with Oxide via the
6+
https://kubernetes.io/docs/concepts/architecture/cloud-controller/[Cloud Controller Manager]
7+
architecture.
8+
9+
*This project is still a work in progress!*
10+
11+
A cloud controller manager is free to run any cloud-specific
12+
controllers it needs. However, generally, a cloud controller
13+
manager runs the following controllers by implementing the
414
https://pkg.go.dev/k8s.io/cloud-provider#Interface[`cloudprovider.Interface`].
15+
16+
* *Node Controller* - Responsible for updating `Node` resources as nodes are added
17+
or removed from the Kubernetes cluster.
18+
* *Route Controller* - Responsible for configuring routes in the cloud provider so
19+
that pods running on different nodes can communicate with one another.
20+
* *Service Controller* - Responsible for configuring cloud provider infrastructure
21+
such as load balancers and IP addresses when a `Service` of type `LoadBalancer`
22+
is created.
23+
24+
The Oxide Cloud Controller Manager only implements the following controllers.
25+
26+
* Node Controller (via https://pkg.go.dev/k8s.io/cloud-provider#InstancesV2[`cloudprovider.InstancesV2`])

0 commit comments

Comments
 (0)