Select Git revision
rdp_lb_member.yaml
-
Martin Kristensen Eide authoredMartin Kristensen Eide authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
rdp_lb_member.yaml 1.48 KiB
heat_template_version: "2018-08-31"
description: Template for a windows instance that adds itself to a loadbalancer
parameters:
server_name:
type: string
description: Name of server
network_name:
type: string
description: Name of network
lb_pool_name:
type: string
description: Name of LB pool
key_name:
type: string
description: Name of keypair to enable ssh to the instance
subnet_name:
type: string
description: Subnet for pool member
volume_id:
type: string
description: Volume ID for project
RDP_members:
type: string
description: RDP members to inject
# This solution was inspired from Lars Erik Pedersens (NTNU IT-Division)
# proposal https://github.com/LarsErikP/heat-examples/tree/main/lbtest
resources:
server:
type: OS::Nova::Server
properties:
name: { get_param: server_name }
flavor: m1.small
image: "Windows 10 21H2 Enterprise [Evaluation]"
key_name: { get_param: key_name }
networks:
- network: {get_param: network_name}
user_data_format: RAW
user_data:
str_replace:
template:
get_file: bootup.ps1
params:
<RDPMembers>: {get_param: RDP_members}
poolmember: # The virtual workstation made a pool member
type: OS::Octavia::PoolMember
properties:
address: { get_attr: [ server, first_address ] }
pool: { get_param: lb_pool_name }
protocol_port: 3389
subnet: {get_param: subnet_name}