Packer.Images/scripts/Update-OvfConfiguration.bootstrap.yml
Danny Bessems c793ced9f3
All checks were successful
continuous-integration/drone/push Build is passing
Remove redundant tasks;Add readycheck;Housekeeping;Add further upgrade tasks
2023-01-30 16:24:37 +01:00

198 lines
5.2 KiB
YAML

DeploymentConfigurations:
- Id: cp1w1
Label: 'Workload-cluster: 1 control-plane node/1 worker node'
Description: 1 control-plane node/1 worker node
- Id: cp1w2
Label: 'Workload-cluster: 1 control-plane node/2 worker nodes'
Description: 1 control-plane node/2 worker nodes
DynamicDisks:
- Description: Longhorn persistent storage
UnitSize: GB
Constraints:
Minimum: 100
Maximum: ''
PropertyCategory: 2
PropertyCategories:
- Name: 0) Deployment information
ProductProperties:
- Key: deployment.type
Type: string
Value:
- cp1w1
- cp1w2
UserConfigurable: false
- Name: 1) Meta-cluster
ProductProperties:
- Key: metacluster.fqdn
Type: string(1..)
Label: Meta-cluster FQDN*
Description: Respective subdomains will be available for each component (e.g. storage.example.org); this address should already be configured as a wildcard record within your DNS zone.
DefaultValue: meta.k8s.cluster
Configurations: '*'
UserConfigurable: true
- key: metacluster.vip
Type: ip
Label: Meta-cluster virtual IP address*
Description: Meta-cluster control plane endpoint virtual IP address
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- key: metacluster.token
Type: string(1..)
Label: K3s install token*
Description: Auto-generated; this value is used to join future new nodes to the metacluster after deployment
DefaultValue: '{{ metacluster.token }}'
Configurations: '*'
UserConfigurable: true
- Name: 2) Meta-cluster initial node
ProductProperties:
- Key: guestinfo.hostname
Type: string(1..15)
Label: Hostname*
Description: ''
DefaultValue: 'meta-{{ hostname.suffix }}'
Configurations: '*'
UserConfigurable: true
- Key: metacluster.password
Type: password(7..)
Label: Appliance password*
Description: 'Initial password for respective administrator accounts within each component'
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Key: guestinfo.ipaddress
Type: ip
Label: IP Address*
Description: ''
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Key: guestinfo.prefixlength
Type: int(8..32)
Label: Subnet prefix length*
Description: ''
DefaultValue: '24'
Configurations: '*'
UserConfigurable: true
- Key: guestinfo.dnsserver
Type: ip
Label: DNS server*
Description: ''
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Key: guestinfo.gateway
Type: ip
Label: Gateway*
Description: ''
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
# - Key: guestinfo.ntpserver
# Type: string(1..)
# Label: Time server*
# Description: A comma-separated list of timeservers
# DefaultValue: 0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org
# Configurations: '*'
# UserConfigurable: true
- Name: 3) Workload-cluster
ProductProperties:
- Key: workloadcluster.name
Type: string(1..15)
Label: Workload-cluster name*
Description: ''
DefaultValue: 'workload-{{ hostname.suffix }}'
Configurations: '*'
UserConfigurable: true
- Key: workloadcluster.vip
Type: ip
Label: Workload-cluster virtual IP address*
Description: Workload-cluster control plane endpoint virtual IP address
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Key: ippool.startip
Type: ip
Label: Workload-cluster IP-pool start IP address*
Description: All nodes for the workload-cluster will be provisioned within this IP pool
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Key: ippool.endip
Type: ip
Label: Workload-cluster IP-pool end IP address*
Description: All nodes for the workload-cluster will be provisioned within this IP pool
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Name: 4) Common
ProductProperties:
- Key: guestinfo.rootsshkey
Type: password(1..)
Label: SSH public key*
Description: Authentication for any node (meta-cluster *and* workloadcluster); this line should start with 'ssh-rsa AAAAB3N'
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Name: 5) Hypervisor
ProductProperties:
- Key: hv.fqdn
Type: string(1..)
Label: vCenter FQDN/IP-address*
Description: The address of the vCenter instance which this bootstrap appliance will interact with for provisioning new VM's.
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Key: hv.username
Type: string(1..)
Label: vCenter username*
Description: The username which this bootstrap appliance will authenticate with to the vCenter instance.
DefaultValue: 'administrator@vsphere.local'
Configurations: '*'
UserConfigurable: true
- Key: hv.password
Type: password(1..)
Label: vCenter password*
Description: The password which this bootstrap appliance will authenticate with to the vCenter instance.
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
---
Variables:
- Name: hostname.suffix
Expression: |
(-join ((48..57) + (97..122) | Get-Random -Count 5 | % {[char]$_})).ToLower()
- Name: metacluster.token
Expression: |
(New-Guid).Guid -replace '-', ''