airship-in-a-bottle/manifests/basic_ucp/drydock_deckhand.yaml

277 lines
6.3 KiB
YAML

#Copyright 2017 AT&T Intellectual Property. All other rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
---
schema: deckhand/LayeringPolicy/v1
metadata:
schema: metadata/Control/v1
name: layering-policy
data:
layerOrder:
- site
---
schema: 'drydock/Region/v1'
metadata:
schema: 'metadata/Document/v1'
name: atl_foundry
layeringDefinition:
abstract: false
layer: site
data:
tag_definitions:
- tag: 'high_memory'
definition_type: 'lshw_xpath'
definition: //node[@id="memory"]/'size units="bytes"' > 137438953472
authorized_keys:
- |
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAgqUTJwZEMjZCWOnXQw+FFdvnf/lYrGXm01
rf/ZYUanoymkMWIK1/c8a3Ez9/HY3dyfWBcuzlIV4bNCvJcMg4UPuh6NQBJWAlfp7wfW9O
8ZyDE3x1FYno5u3OB4rRDcvKe6J0ygPcu4Uec5ASsd58yGnE4zTl1D/J30rNa00si+s= r
sa-key-20120124
---
schema: 'drydock/NetworkLink/v1'
metadata:
schema: 'metadata/Document/v1'
name: oob
layeringDefinition:
abstract: false
layer: site
data:
labels:
noconfig: 'enabled'
bonding:
mode: 'disabled'
mtu: 1500
linkspeed: 'auto'
trunking:
mode: disabled
default_network: oob
allowed_networks:
- 'oob'
---
schema: 'drydock/NetworkLink/v1'
metadata:
schema: 'metadata/Document/v1'
name: pxe-rack1
layeringDefinition:
abstract: false
layer: site
data:
bonding:
mode: 'disabled'
mtu: 1500
linkspeed: 'auto'
trunking:
mode: disabled
default_network: pxe-rack1
allowed_networks:
- 'pxe-rack1'
---
schema: 'drydock/NetworkLink/v1'
metadata:
schema: 'metadata/Document/v1'
name: mgmt
layeringDefinition:
abstract: false
layer: site
data:
bonding:
mode: 'disabled'
mtu: 1500
linkspeed: 'auto'
trunking:
mode: disabled
default_network: mgmt
allowed_networks:
- 'mgmt'
---
schema: 'drydock/Network/v1'
metadata:
schema: 'metadata/Document/v1'
name: oob
layeringDefinition:
abstract: false
layer: site
data:
labels:
noconfig: 'enabled'
cidr: '172.24.10.0/24'
---
schema: 'drydock/Network/v1'
metadata:
schema: 'metadata/Document/v1'
name: pxe-rack1
layeringDefinition:
abstract: false
layer: site
data:
cidr: '172.24.1.0/24'
routes:
- subnet: '0.0.0.0/0'
gateway: '172.24.1.1'
metric: 100
ranges:
- type: 'reserved'
start: '172.24.1.1'
end: '172.24.1.100'
- type: 'dhcp'
start: '172.24.1.200'
end: '172.24.1.250'
---
schema: 'drydock/Network/v1'
metadata:
schema: 'metadata/Document/v1'
name: mgmt
layeringDefinition:
abstract: false
layer: site
data:
cidr: '172.24.2.0/24'
routes:
- subnet: '0.0.0.0/0'
gateway: '172.24.2.1'
metric: 100
ranges:
- type: 'reserved'
start: '172.24.2.1'
end: '172.24.2.100'
- type: 'dhcp'
start: '172.24.2.200'
end: '172.24.2.250'
---
schema: 'drydock/HardwareProfile/v1'
metadata:
schema: 'metadata/Document/v1'
name: DellR820v1
layeringDefinition:
abstract: false
layer: site
data:
vendor: 'Dell'
generation: '1'
hw_version: '2'
bios_version: '2.2.3'
boot_mode: 'bios'
bootstrap_protocol: 'pxe'
pxe_interface: 0
device_aliases:
pnic01:
bus_type: 'pci'
dev_type: 'Intel 10Gbps NIC'
address: '0000:00:03.0'
---
schema: 'drydock/HostProfile/v1'
metadata:
name: defaults
schema: 'metadata/Document/v1'
layeringDefinition:
abstract: false
layer: site
data:
hardware_profile: 'DellR820v1'
primary_network: 'pxe-rack1'
oob:
type: 'ipmi'
network: 'oob'
account: 'admin'
credential: 'password'
storage:
physical_devices:
sda:
labels:
bootdrive: 'true'
partitions:
- name: 'root'
size: '20g'
bootable: true
filesystem:
mountpoint: '/'
fstype: 'ext4'
mount_options: 'defaults'
- name: 'boot'
size: '1g'
filesystem:
mountpoint: '/boot'
fstype: 'ext4'
mount_options: 'defaults'
interfaces:
ens3:
device_link: 'mgmt'
slaves:
- 'ens3f0'
networks:
- 'mgmt'
platform:
image: 'ubuntu/xenial'
kernel: 'generic'
metadata:
rack: rack1
---
schema: 'drydock/BaremetalNode/v1'
metadata:
schema: 'metadata/Document/v1'
name: node2
layeringDefinition:
abstract: false
layer: site
data:
host_profile: defaults
addressing:
- network: 'mgmt'
address: '172.24.2.101'
- network: 'oob'
address: '172.24.10.101'
metadata:
tags:
- 'masters'
...
---
schema: 'drydock/BootAction/v1'
metadata:
schema: 'metadata/Document/v1'
name: promjoin
storagePolicy: 'cleartext'
layeringDefinition:
abstract: false
layer: site
labels:
application: 'drydock'
data:
node_filter:
filter_set_type: 'union'
filter_set:
- filter_type: 'union'
node_names:
- 'node2'
assets:
- path: /opt/promjoin.sh
type: file
permissions: '555'
location: promenade+http://promenade-api.ucp.svc.cluster.local/api/v1.0/join-scripts?design_ref={{ action.design_ref | urlencode }}&hostname={{ node.hostname }}&ip={{ node.network.mgmt.ip }}{% for k, v in node.labels.items() %}&labels.dynamic={{ k }}={{ v }}{% endfor %}
location_pipeline:
- template
data_pipeline:
- utf8_decode
- path: /lib/systemd/system/promjoin.service
type: unit
permissions: '600'
data: |-
W1VuaXRdCkRlc2NyaXB0aW9uPVByb21lbmFkZSBJbml0aWFsaXphdGlvbiBTZXJ2aWNlCkFmdGVy
PW5ldHdvcmstb25saW5lLnRhcmdldCBsb2NhbC1mcy50YXJnZXQKQ29uZGl0aW9uUGF0aEV4aXN0
cz0hL3Zhci9saWIvcHJvbS5kb25lCgpbU2VydmljZV0KVHlwZT1zaW1wbGUKRXhlY1N0YXJ0PS9v
cHQvcHJvbWpvaW4uc2gKCltJbnN0YWxsXQpXYW50ZWRCeT1tdWx0aS11c2VyLnRhcmdldAo=
data_pipeline:
- base64_decode
- utf8_decode
...