-
Notifications
You must be signed in to change notification settings - Fork 95
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add diagram of installer-based provisioning with subnet bootdisk
- Loading branch information
Showing
7 changed files
with
134 additions
and
0 deletions.
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
' Foreman style for PlantUML diagrams | ||
' This style was created for sequence diagrams and may be incomplete. | ||
|
||
skinparam RoundCorner 8 | ||
skinparam Shadowing false | ||
|
||
' #ffcc32 Foreman yellow | ||
' #025d8c Foreman blue | ||
|
||
skinparam sequence { | ||
ArrowColor #025d8c | ||
LifeLineBorderColor #ecf4f8 | ||
LifeLineBorderThickness 32 | ||
DividerBorderColor #025d8c | ||
DividerFontColor #025d8c | ||
group { | ||
TitleFontColor #025d8c | ||
BorderColor #d2e4ed | ||
FontColor #025d8c | ||
} | ||
groupHeader { | ||
BackgroundColor #d2e4ed | ||
FontColor #025d8c | ||
} | ||
} | ||
|
||
skinparam Actor { | ||
BackgroundColor #025d8c | ||
BorderColor #025d8c | ||
FontColor #025d8c | ||
} | ||
|
||
skinparam Participant { | ||
BackgroundColor #025d8c | ||
BorderColor #025d8c | ||
FontColor White | ||
} | ||
|
||
skinparam Note { | ||
BackgroundColor #d2e4ed | ||
BorderColor #025d8c | ||
FontColor #025d8c | ||
} | ||
|
||
' Puppet enabled=1, disabled=0 | ||
!$puppet = 0 | ||
|
||
autonumber |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
!if ($networkboot) | ||
Host -> DHCP : requests the reserved IP | ||
!endif | ||
Host -> Host : boots from HDD |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
!if ($puppet) | ||
opt when Puppet enabled | ||
Host -> Puppet : sends CSR | ||
Puppet -> Host : sends certificate (if allowed to) | ||
end | ||
!else | ||
note over Host : initial host configuration\n- remote execution,\n- signs Puppet client cert,\n- runs Ansible roles,\n- etc. | ||
!endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
loop | ||
Host -> Foreman : requests installation media | ||
Foreman -> Proxy : requests installation media | ||
Proxy -> Foreman : provides installation media | ||
Foreman -> Host : provides installation media | ||
end |
60 changes: 60 additions & 0 deletions
60
guides/image-sources/provisioning-installer-bootdisk-subnet.plantuml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
@startuml | ||
|
||
!include foreman.pstyle | ||
!$networkboot = 1 | ||
|
||
title Installer-based provisioning with subnet bootdisk | ||
|
||
actor User | ||
participant "Provisioned\nHost" as Host | ||
participant "Foreman" as Foreman | ||
participant "Foreman\nProxy" as Proxy | ||
'participant "Pulp\n(Katello)" as Pulp | ||
'participant TFTP | ||
participant DHCP | ||
participant DNS | ||
!if ($puppet) | ||
participant "Puppet\nserver" as Puppet | ||
!endif | ||
|
||
note over Host : powered off | ||
|
||
User -> Foreman : downloads the bootdisk of the subnet | ||
note over User : writes the bootdisk\nto a USB/CD/DVD drive | ||
|
||
== Boot into OS installer == | ||
|
||
User -> Host : configures the machine to boot\nfrom the USB/CD/DVD drive | ||
User -> Host : powers on the machine | ||
Host -> DHCP : requests the reserved IP | ||
note over Host : boots from the USB/CD/DVD drive | ||
note over Host : bootloader loads | ||
User -> Host : eliminates the USB/CD/DVD drive\n(too soon?) | ||
Host -> Proxy : gets MAC-based bootloader config | ||
Host -> Proxy : downloads OS installer kernel\nand initial RAM disk | ||
note over Host : OS installer loads | ||
Host -> Proxy : requests installer configuration | ||
group Template [Provision] | ||
Proxy -> Proxy : renders installer configuration | ||
end | ||
Proxy -> Host : gets installer configuration | ||
!include prov-installation-media.iuml | ||
note over Host : OS is installed | ||
!include prov-initial-configuration.iuml | ||
Host -> Foreman : calls home\n(disables build mode) | ||
|
||
note over Host : reboots | ||
|
||
== First local boot == | ||
|
||
!include prov-first-local-boot-hdd.iuml | ||
|
||
!if ($puppet) | ||
== First Puppet run == | ||
|
||
!include puppet-run.iuml | ||
!endif | ||
|
||
note over Host : in operation | ||
|
||
@enduml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
Host -> Puppet : sends facts | ||
Host -> Puppet : requests catalog | ||
Puppet -> Foreman : forwards facts | ||
Puppet -> Foreman : requests ENC | ||
Puppet -> Host : responds with requested catalog | ||
note over Host : runs catalog | ||
Host -> Puppet : sends report | ||
Puppet -> Foreman : forwards report |