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
Workload Orchestration Service (WOS) has been renamed to Workload Fleet
Management (WFM) after this PR was originally created. This commit fixes
it.
Signed-off-by: Silvano Cirujano Cuesta <silvano.cirujano-cuesta@siemens.com>
Copy file name to clipboardExpand all lines: system-design/fleet-management/workload/workload-fleet-management-edge-onboarding.md
+32-32Lines changed: 32 additions & 32 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,13 +5,13 @@ In order for the Workload Fleet Management software to manage the edge device's
5
5
6
6
**The onboarding process includes:**
7
7
8
-
- The end user provides the the Workload Fleet Management web service's root URL to the device's management client
9
-
- The device's management client downloads the workload orchestration solution vendor's public root CA certificate using the [Onboarding API](../../margo-api-reference/workload-api/onboarding-api/rootca-download.md)
10
-
- Context and trust is established between the device's management client and the Workload Fleet Management web service
11
-
- The device's management client uses the [Onboarding API](../../margo-api-reference/workload-api/onboarding-api/device-onboarding.md) to onboard with the workload orchestration service.
8
+
- The end user provides the the Workload Fleet Management (WFM) web service's root URL to the device's management client
9
+
- The device's management client downloads the WFM solution vendor's public root CA certificate using the [Onboarding API](../../margo-api-reference/workload-api/onboarding-api/rootca-download.md)
10
+
- Context and trust is established between the device's management client and the WFM web service
11
+
- The device's management client uses the [Onboarding API](../../margo-api-reference/workload-api/onboarding-api/device-onboarding.md) to onboard with the WFM.
12
12
- The device's management client receives the client Id, client secret and token endpoint URL used to generate a bearer token.
13
13
- The device's management client receives the URL for the Git repository containing its desired state and an associated access token for authentication
14
-
- The [device capabilities](./device-capability-reporting.md) information is sent from the device to the workload orchestration web service using the [Device API](../../margo-api-reference/workload-api/device-api/device-capabilities.md)
14
+
- The [device capabilities](./device-capability-reporting.md) information is sent from the device to the WFM web service using the [Device API](../../margo-api-reference/workload-api/device-api/device-capabilities.md)
15
15
16
16
> Note:
17
17
> 🔐 Indicates communication is secure and requires authentication/authorization.
@@ -24,49 +24,49 @@ sequenceDiagram
24
24
participant device as Device
25
25
actor user as End User
26
26
participant rendezvous as Rendezvous Server
27
-
participant wos as WOS
28
-
participant git as WOS: Device Git Repo
29
-
note over device, git: Workload orchestration onboarding
27
+
participant wfm as WFM
28
+
participant git as WFM: Device Git Repo
29
+
note over device, git: WFM onboarding
30
30
user ->>+ device: Get device id and cert
31
31
device -->>- user: return
32
-
user ->> wos: Provides device id and cert to pre-register device in end user's tenant 🔐
32
+
user ->> wfm: Provides device id and cert to pre-register device in end user's tenant 🔐
device ->>+ git: Checks for updates to desired state 🔐
61
61
git -->>- device: return
62
62
opt
63
-
device ->> wos: Requests new GitOps token 🔐
64
-
wos -->> device: return
63
+
device ->> wfm: Requests new GitOps token 🔐
64
+
wfm -->> device: return
65
65
end
66
66
device ->> device: Applies new desired state
67
-
device ->> wos: Sends state 🔐
68
-
device ->> wos: Sends state 🔐
69
-
device ->> wos: Sends final state 🔐
67
+
device ->> wfm: Sends state 🔐
68
+
device ->> wfm: Sends state 🔐
69
+
device ->> wfm: Sends final state 🔐
70
70
end
71
71
```
72
72
@@ -76,11 +76,11 @@ sequenceDiagram
76
76
77
77
> Action: Ideally this URL is discoverable instead of having to manually enter it but we still need to determine if there is a good way to make this discoverable by using something like the FIDO Rendezvous service or multicast DNS. Also, once we determine how the Margo compliant device onboarding and fleet management is going to work it will probably impact this.
78
78
79
-
To ensure the management client is configured to communicate with the correct Workload Fleet Management web service, the device's management client needs to be configured with the expected URL. The device vendor MUST provide a way for the end user to manually set the URL the device's management client uses to communicate with the workload orchestration solution chosen by the end user.
79
+
To ensure the management client is configured to communicate with the correct Workload Fleet Management web service, the device's management client needs to be configured with the expected URL. The device vendor MUST provide a way for the end user to manually set the URL the device's management client uses to communicate with the WFM solution chosen by the end user.
80
80
81
81
### Margo Web API Authentication Method
82
82
83
-
The Margo Web API communication pattern between the device's management client and the workload orchestration web service must use a secure communication channel. In order to facilitate this secure communication Margo requires the use of oAuth 2.0 for authentication.
83
+
The Margo Web API communication pattern between the device's management client and the WFM web service must use a secure communication channel. In order to facilitate this secure communication Margo requires the use of oAuth 2.0 for authentication.
84
84
85
85
#### API Authorization Strategy
86
86
@@ -94,7 +94,7 @@ The Margo Web API communication pattern between the device's management client a
94
94
95
95
Because of limitations using mTLS with common OT infrastructure such as TLS terminating HTTPS load-balancer or a HTTPS proxy doing lawful inspection Margo has adopted a certificate-based payload signing approach to protect payloads from being tampered with. By utilizing the certificates to create payload envelopes, the device's management client can ensure secure transport between the device's management client and the Workload Fleet Management's web service.
96
96
97
-
- During the onboarding process the end user uploads the device's x.509 certificate to the workload orchestration solution
97
+
- During the onboarding process the end user uploads the device's x.509 certificate to the WFM solution
98
98
- The device's management client downloads the root CA certificate using the [Onboarding API](../../margo-api-reference/workload-api/onboarding-api/rootca-download.md)
99
99
- Once this is complete, both parties are able to [secure their payloads](../../margo-api-reference/margo-api-specification.md#signing-payloads).
100
100
@@ -110,7 +110,7 @@ Once the edge device has a message prepared for the Workload Fleet Management's
110
110
- This identifier MUST be the GUID provided by the device manufacturer. Typically the hardware serial number.
111
111
- The envelope is sent as the payload to the Workload Fleet Management's web service.
112
112
- The Workload Fleet Management's web service treats the request's payload as envelope structure, and receives the certificate identifier.
113
-
> Note: This certificate is the device certificate that was manually uploaded to the workload orchestration solution during onboarding.
113
+
> Note: This certificate is the device certificate that was manually uploaded to the WFM solution during onboarding.
114
114
- The Workload Fleet Management's web service computes digest from the payload, and verifies the signature using the device certification.
115
115
- The payload is then processed by the Workload Fleet Management's web service.
0 commit comments