diff --git a/docs/user-guide/src/ironic/images/overview.plantuml b/docs/user-guide/src/ironic/images/overview.plantuml new file mode 100644 index 00000000..3cc8e514 --- /dev/null +++ b/docs/user-guide/src/ironic/images/overview.plantuml @@ -0,0 +1,37 @@ +@startuml +person User +package Kubernetes { + rectangle API { + artifact BareMetalHost as BMH + artifact Ironic as IronicCR + } + rectangle Pods { + component "BareMetal Operator" as BMO + component Ironic { + process Ironic as IronicSvc + process HTTPD + process DNSMasq + } + component "Ironic Standalone Operator" as IrSO + } +} +node Server { + node "BMC (Redfish, IPMI)" as BMC + process "Ironic Python Agent" as IPA +} + +User --> BMH : edits +User --> IronicCR : edits + +BMH <--> BMO : watches CR +IronicCR <--> IrSO : watches CR + +BMO --> IronicSvc : calls +IrSO ==0 Ironic : manages +IronicSvc -0 HTTPD: configures + +IronicSvc --> BMC : calls +HTTPD <-- BMC : downloads vmedia +IronicSvc <--> IPA : runs commands +HTTPD <-- IPA : downloads images +@enduml diff --git a/docs/user-guide/src/ironic/images/overview.png b/docs/user-guide/src/ironic/images/overview.png new file mode 100644 index 00000000..fb57ba46 Binary files /dev/null and b/docs/user-guide/src/ironic/images/overview.png differ diff --git a/docs/user-guide/src/ironic/introduction.md b/docs/user-guide/src/ironic/introduction.md index 46c4e5d7..27043031 100644 --- a/docs/user-guide/src/ironic/introduction.md +++ b/docs/user-guide/src/ironic/introduction.md @@ -44,6 +44,10 @@ Metal3 provides [a way to install Ironic](../irso/introduction.md) with a suitable configuration. Alternatively, Bare Metal Operator can be set up to use an externally managed Ironic instance. +### Components overview + +![Component overview](./images/overview.png) + ### Requirements for external Ironic - HTTP basic authentication (OpenStack Identity is not supported - see [issue