You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: design/metal3host-controller.md
+29-1Lines changed: 29 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,17 +1,28 @@
1
1
# Baremetal host single instance and multi-instance operator
2
+
2
3
## Introduction
4
+
3
5
Currently, the metal3 system is to set up a Kubernetes cluster on bare-metal hosts which is tightly bound with cluster-api and Kubernetes. We target to allocate bare-metal hosts that just pre-installing the OS, or pre-installing the applications as required.
6
+
4
7
## Motivation
8
+
5
9
To meet the scenery that only requires a pure bare-metal host or with a simple application installed.
10
+
6
11
## Goals
12
+
7
13
- Allocate one pure bare-metal host
8
14
- Allocate multiple bare-metal hosts
9
15
- Allocate bare-metal host with pre-installed applications
10
16
- Specify the different configurations for different bare-metal host
17
+
11
18
## Non-goals
19
+
12
20
- Allocate different types of bare-metal hosts at one time
21
+
13
22
## Proposal
23
+
14
24
### Architecture
25
+
15
26
The operators include the metal3Host operator, metal3HostDeployment operator, and data operator.
16
27

17
28
@@ -22,19 +33,26 @@ Metal3Host is a virtual instance. Users could define it to require a bare-metal
22
33
Metal3HostDeployment will define a group of metal3Hosts with the same configuration. It could define the number of replicas. It could scale up/down. We even could auto-scale by some rules after the monitor function is leveraged.
23
34
24
35
The data operator will set up the boot time configuration & routine. It includes three parts: the userData, the metaData, and the networkData. The userData includes some user-specified data such as installing a package, or running a command like "mkdir /test". The metaData defines some host-specific data such as hostname. The networkData includes the network configuration. The data is bound with the baremetal host. For example, the networkData defines a NIC with an IP, the NIC name is host related. So a dataTemplate should be pre-defined, it will be bound to the bare-metal host when a metal3host is defined and associated with a bare-metal host.
0 commit comments