Deploying MetalSoft without switches¶
MetalSoft can also be deployed on networks with no switches, in a flat L2 broadcast domain. This setup is very simple and requires minimal hardware.
Environment configuration¶
Since our software will allocate entire subnets to users from the WAN subnet pool, but on a flat L2 network there is a single gateway, an “override” property is used to force the DHCP agent to provide the correct gateway irrespective of the subnet pool.
The wan_gateway_override
and the wan_subnet_override
need to be configured in the environment config:
{
"wan_subnet_override" : "192.168.75.1",
"wan_subnet_override" : "255.255.0.0",
}
If the system requires servers with a single interface enable
allowServersWithOneInterface
andallowTFTPBootThroughWAN
flags on the environment configuration on the controller.
Create the datacenter:¶
Create the following datacenter config file: datacenter.yaml
:
BSIMachinesSubnetIPv4CIDR: 192.168.75.0/23
BSIVRRPListenIPv4: 192.168.75.12
BSIMachineListenIPv4List:
- 192.168.75.12
BSIExternallyVisibleIPv4: 50.211.133.116
repoURLRoot: http://<repo>
repoURLRootQuarantineNetwork: http://<repo>
SANRoutedSubnet: 100.96.0.0/16
NTPServers:
- 67.205.162.81
- 204.11.201.12
DNSServers:
- 192.168.75.10
- 1.1.1.1
TFTPServerWANVRRPListenIPv4: 192.168.75.12
dataLakeEnabled: false
#This property configures the datacenter to work as a flat L2 network
datacenterNetworkIsLayer2Only: true
#These settings are actually ignored by the switch simulator
dhcpBMCMACAddressWhitelist: []
defaultWANNetworkProfileID: 0
defaultDeploymentMechanism: virtual_media
defaultCleanupAndRegistrationMechanism: bmc
switchProvisioner:
ACLSAN: 3999
ACLWAN: 3399
NorthWANVLANRange: 1001-2000
SANACLRange: 3700-3998
ToRLANVLANRange: 400-699
ToRSANVLANRange: 700-999
ToRWANVLANRange: 100-300
quarantineVLANID: 5
type: VPLSProvisioner
#This needs to be configured if the username and password on the server BMC should not be automatically changed at register time and should instead be requested from the user
serverRegisterUsingGeneratedIPMICredentialsEnabled: false
metalcloud-cli datacenter create --id us-reston --title US,Reston --config dc-hpe-reston.yml --format yaml
Create WAN subnets¶
Create the following WAN subnet config file subnet-pool-wan.yaml
datacenter: te-test
prefix: 192.168.74.224
netmask: 255.255.255.224
size: 27
type: ipv4
routable: true
destination: wan
metalcloud-cli subnet-pool create --config subnet-pool-wan.yaml --format yaml
Create a “dummy” switch¶
Create the following switch config file switch.yaml
:
#the hostname of the switch
identifierString: SWITCH_SIMULATOR_1111
description: ToR switch
#the datacenter label
datacenterName: te-test
driver: dummy
provisionerType: vpls
provisionerPosition: tor
#connection details. This can be in-band management iP or the out-of-band. In this setup we used the out of band
managementAddress: 172.16.10.2
managementProtocol: ssh
managementPort: 22
managementUsername: admin
managementPassword: XXX
#Used if switch will go through ONIE imaging
#managementMACAddress: 00:00:00:00:00:00
#Network address (first IP) of the WAN IPv6 subnet.
#These will be the IPs that will be allocated to hosts
#that need to be reachable from outside an infrastructure
#Both Ipv4 and IPv6 IPs are allocated to servers
#The IPv6 subnet will be automatically created
primaryWANIPv6SubnetPool: fd1f:8bbb:56b3:2000:0000:0000:1000:0000
#Subnet size of the above subnet. If it is fd1f:8bbb:56b3:2000:0000:0000:1000:0000/53 in CIRD notation this number will be 53
primaryWANIPv6SubnetPrefixSize: 53
#Network address (first IP) of the SAN subnet.
primarySANSubnetPool: 100.64.0.1
#By default, the SAN subnet has a netmask of 21.
primarySANSubnetPrefixSize: 21
#This IP range is used as a hack to
#prevent downtime during dynamic provisioning of ports (since we have multiple secondary IPs on the same interface)
#the traffic is not routed to these IPs.
#The real IPv4 WAN subnet pool needs to be added using the subnets tab.
primaryWANIPv4SubnetPool: 172.24.4.0
#Subnet size of the above subnet. If it is 172.24.4.0/22 in CIRD notation this number will be 22
primaryWANIPv4SubnetPrefixSize: 22
# The pool from which to allocate ips to servers during registration
quarantineSubnetStart: 192.168.74.200
quarantineSubnetEnd: 192.168.74.204
#the subnet size (CIDR) of the above pool
quarantineSubnetPrefixSize: 24
#the IP of the SVI in the quarantine network
quarantineSubnetGateway: 192.168.74.1
#Set to true to enable ONIE for this switch.
requiresOSInstall: false
#Set this to the ID of the volume template that holds the ONIE image
volumeTemplateID: 0
Deploy the MetalSoft Site Controller¶
To deploy the MetalSoft Site Controller, please use the instructions in this link:
Deploying the MetalSoft Site Controller