Set Up the Uyuni for Retail Environment with Dedicated Network for Terminal
To set up the Uyuni for Retail environment, you will need to have already installed and configured:
-
Uyuni for Retail Server
-
one or more Uyuni for Retail branch server proxies
-
one or more POS images built
1. Assumptions
This guide works only with non-containerized Uyuni for Retail branch proxy 4.3. |
In this example we consider architecture with dedicated network for POS terminals where branch server provides all required services including DHCP and DNS.
For dedicated network we assume 192.168.86.0/24
network.
In this example we provide Salt
and ftp
CNAMEs for Saltboot service discovery.
We assume to have one regular branch server with Salt minion id branch1.mystore.com
, which is equal to the branch server fully qualified domain name, and branch id B0001
.
As a terminal we assume to have one terminal with hardware manufacturer TerminalOEM
and model T1000
.
For POS image we assume to have one with name POS_Image_JeOS7
.
This example covers two configuration methods. Both of the methods achieve the same result.
2. Create Required System Groups
Manually setting up formulas requires manual creation of the needed system groups, unlike when using the provided tools. To create the system groups, see System Groups.
You will need the following groups:
-
TERMINALS
-
HWType:TerminalOEM-T1000
-
B0001
The first group is generic optional group for collecting all POS terminals. The second group is hardware type group for our POS terminal. The third group is mandatory branch group.
For more information about Saltboot groups, see Set Up the Uyuni for Retail Environment.
3. Assign and Configure Branch Server Formulas
We assign the following formulas to the branch server:
-
Branch Network
-
Dhcpd
-
Bind
-
Pxe
-
Tftpd
-
Select the
Formulas
tab for the systembranch1.mystore.com
-
You should see list of formulas in
Configuration
sub-tab -
In displayed list select
Branch Network
-
In displayed list select
Pxe
-
In displayed list select
Dhcpd
-
In displayed list select
Tftpd
-
In displayed list select
Bind
-
Save assigned formulas by clicking Save in top right corner
-
Select Branch Network formula from branch server formula list
-
Keep
Dedicated Nic
check-box selected, because we are using dedicated network for terminals -
Keep the rest with default values
-
In the
Terminal Naming and Identification
section editBranch Identification
and set it to our branch idB0001
-
Save the formula
-
Select Pxe formula from branch server formula list
-
At the end of
Kernel Command Line Parameters
appendMASTER=branch1.mystore.com
-
Keep the rest with default values
-
Save the formula
-
Select Dhcpd formula from branch server formula list
-
Set the
Domain Name
to thebranch1.mystore.com
-
Set the
Domain Name Server
to the IP address of branch server192.168.86.1
) -
Set the
Listen Interfaces
to theeth1
, which is network interface of branch server connected to dedicated terminal network
-
-
Navigate to the
Network Configuration (subnet)
section, and use these parameters for Network1:-
In the
Network IP
field, enter the IP address of the terminal network192.168.86.0
. -
In the
Netmask
field, enter the network mask of the terminal network255.255.255.0
. -
In the
Domain Name
field, enter the domain name for the terminal networkbranch1.mystore.com
).
-
-
In the
Dynamic IP Range
section, use these parameters to configure the IP range to be served by the DHCP service:-
In the first input box, set the lower bound of the IP range
192.168.86.10
-
In the second input box, set the upper bound of the IP range
192.168.86.250
-
-
In the
Broadcast Address
field, enter the broadcast IP address for the terminal network192.168.86.255
-
In the
Routers
field, enter the IP address to be used as default route in the terminal network192.168.86.1
-
In the
Next Server
field, enter the IP address of the branch server for PXE booting192.168.86.1
-
Set the
Filename
to the/boot/pxelinux.0
-
Set the
Filename Efi
to the/boot/shim.efi
-
Set the
Filename Http
to thehttp://192.168.86.1/saltboot/boot/shim.efi
-
Save the formula
-
Select Tftpd formula from branch server formula list
-
Set the
Internal Network Address
to192.168.86.1
, this way tftp will be listening on any IPv4 -
Set the
TFTP base directory
to/srv/saltboot
-
Save the formula
-
Select Bind formula from branch server formula list
-
In the
Config
section, selectInclude Forwarders
so DNS server can forward queries to next DNS server -
In the
Options
section clieck+
to add an option -
Set the
Option
toempty-zones-enable
-
Set the
Value
toNo
-
-
In the
Configured Zones
section, use these parameters for Zone 1, which is our primary zone:-
Set the
Name
tobranch1.mystore.com
-
In the
Type
field, selectmaster
-
-
Click Add item to add a second zone, and set these parameters for Zone 2, which is used for reverse name resolution:
-
Set the
Name
tocom.mystore.branch1
-
In the
Type
field, selectmaster
-
-
In the
Available Zones
section, use these parameters for Zone 1:-
In the
Name
field, enter the domain namebranch1.mystore.com
-
In the
File
field, type the name of your configuration filebranch1.mystore.com.txt
-
-
In the
Start of Authority (SOA)
section, use these parameters for Zone 1:-
In the
Nameserver (NS)
field, use the FQDN of the branch serverbranch1.mystore.com
-
In the
Contact
field, use the email address for the domain administrator -
Keep all other fields as their default values
-
-
In the
Records
section, in subsectionA
, use these parameters to set up an A record for Zone 1:-
In the
Hostname
field, use the hostname of the branch serverbranch1.mystore.com.
, notice trailing.
which are required here -
In the
IP
field, use the IP address of the branch server192.168.86.1
-
-
In the
Records
section, subsectionNS
, use these parameters to set up an NS record for Zone 1:-
In the input box, use the branch server
branch1.mystore.com.
-
-
In the
Records
section, subsectionCNAME
, use these parameters to set up CNAME records for Zone 1:-
In the
Key
field, entersalt
, and in theValue
field, type the branch serverbranch1.mystore.com.
-
Click Add item to add another entry.
-
In the
Key
field, enterftp
, and in theValue
field, type the branch serverbranch1.mystore.com.
-
-
Set up Zone 2 using the same parameters as for Zone 1, but ensure you use the reverse details:
-
The same SOA section as Zone 1.
-
Empty A and CNAME records.
-
Additionally, configure in Zone 2:
-
Set
Generate Reverse
to the network IP address192.168.86.0/24
-
Set
For Zones
to the domain name of your branch networkbranch1.mystore.com
-
-
-
Click Save Formula to save your configuration.
-
Apply the highstate.
4. Set Up Partitioning
Partitioning is specific to the hardware type and configured using Saltboot
formula.
-
Navigate to
-
Select group
HWType:TerminalOEM-T1000
, which is our hardware type group -
Select the
Formulas
tab once in group details -
You should see list of formulas in
Configuration
sub-tab -
In displayed list select
Saltboot
-
Save assigned formulas by clicking Save in top right corner
-
Select Saltboot formula from
HWType:TerminalOEM-T1000
group formula list -
Set
Disk Symbolic ID
toDisk1
-
Set
Device Type
toDISK
-
Set
Disk Device
to*
-
Set
Partition table type
togpt
-
Click + to add a partition
-
Set
Partition Symbolic ID
top1
-
Set
Partition Size (MiB)
to512
-
Set
Device Mount Point
to/boot/efi
-
Set
Filesystem Format
tovfat
-
Set
Partition Flags
toboot
-
-
Click + to add a partition
-
Set
Partition Symbolic ID
top2
-
Set
Device Mount Point
to/
-
Set
OS Image to Deploy
toPOS_Image_JeOS7
-
-
Save the formula
After all procedures are done, apply highstate on the branch server.
5. Synchronize Images
After highstate is applied, we proceed with synchronizing images as usual with apply image-sync
state.
Terminal can now be started and will be automatically provisioned, pending salt key acceptance.