349d4e669c1a1de9e3cecf265600875a458ad254
[yaml_builds.git] / site_type / sriov-a13 / templates / profiles / host / cp_r720.j2
1 ---
2 # The primary control plane host profile for Airship for DELL R720s, and
3 # should not need to be altered if you are using matching HW. The active
4 # participants in the Ceph cluster run on this profile. Other control plane
5 # services are not affected by primary vs secondary designation.
6 schema: drydock/HostProfile/v1
7 metadata:
8   schema: metadata/Document/v1
9   name: cp_r720-primary
10   storagePolicy: cleartext
11   layeringDefinition:
12     abstract: false
13     layer: site
14     parentSelector:
15       hosttype: cp-global
16     actions:
17       - method: replace
18         path: .interfaces
19       - method: replace
20         path: .storage
21       - method: merge
22         path: .
23 data:
24   hardware_profile: dell_r720
25
26   primary_network: oam
27   interfaces:
28     pxe:
29       device_link: pxe
30       slaves:
31         - pxe_nic01
32       networks:
33         - pxe
34     bond0:
35       device_link: data
36       slaves:
37         - data_nic01
38         - data_nic02
39       networks:
40         - oam
41         - storage
42         - overlay
43         - calico
44
45   storage:
46     physical_devices:
47 {% for disk in yaml.disks %}
48       {{disk.name}}:
49       {% if 'labels' in disk %}
50         labels:
51         {% for key, value in disk.labels.items() %}
52           {{key}}: '{{value}}'
53         {% endfor %}
54       {% endif %}
55         partitions:
56        {% for p in disk.partitions %}
57           - name: '{{p.name}}'
58             size: '{{p.size}}'
59             {% if 'bootable' in p %}
60             bootable: {{p.bootable}}
61             {% endif %}
62             filesystem:
63               mountpoint: '{{p.mountpoint}}'
64               fstype: 'ext4'
65               mount_options: 'defaults'
66       {% endfor %}
67 {% endfor %}
68
69   platform:
70     kernel: 'hwe-16.04'
71     kernel_params:
72 {% if 'platform' in yaml and 'kernel_params' in yaml.platform %}
73 {% for key, value in yaml.platform.kernel_params.items() %}
74       {{key}}: '{{value}}'
75 {% endfor %}
76 {% else %}
77       console: 'ttyS1,115200n8'
78       intel_iommu: 'on'
79       iommu: 'pt'
80       amd_iommu: 'on'
81       transparent_hugepage: 'never'
82 {% endif %}
83 {% if 'platform' in yaml and 'vcpu_pin_set' in yaml.platform %}
84       isolcpus: '{{yaml.platform.vcpu_pin_set}}'
85 {% endif %}
86
87   metadata:
88     owner_data:
89       control-plane: enabled
90       ucp-control-plane: enabled
91       openstack-control-plane: enabled
92       openstack-heat: enabled
93       openstack-keystone: enabled
94       openstack-rabbitmq: enabled
95       openstack-dns-helper: enabled
96       openstack-mariadb: enabled
97       openstack-nova-control: enabled
98       # openstack-etcd: enabled
99       openstack-mistral: enabled
100       openstack-memcached: enabled
101       openstack-glance: enabled
102       openstack-horizon: enabled
103       openstack-cinder-control: enabled
104       openstack-cinder-volume: control
105       openstack-neutron: enabled
106       openvswitch: enabled
107       ucp-barbican: enabled
108       ceph-mon: enabled
109       ceph-mgr: enabled
110       ceph-osd: enabled
111       ceph-mds: enabled
112       ceph-rgw: enabled
113       ucp-maas: enabled
114       kube-dns: enabled
115       tenant-ceph-control-plane: enabled
116       tenant-ceph-mon: enabled
117       tenant-ceph-osd: enabled
118       tenant-ceph-rgw: enabled
119       tenant-ceph-mgr: enabled
120       kubernetes-apiserver: enabled
121       kubernetes-controller-manager: enabled
122       kubernetes-etcd: enabled
123       kubernetes-scheduler: enabled
124       tiller-helm: enabled
125       kube-etcd: enabled
126       calico-policy: enabled
127       calico-node: enabled
128       calico-etcd: enabled
129       ucp-armada: enabled
130       ucp-drydock: enabled
131       ucp-deckhand: enabled
132       ucp-shipyard: enabled
133       IAM: enabled
134       ucp-promenade: enabled
135       prometheus-server: enabled
136       prometheus-client: enabled
137       fluentd: enabled
138       fluentbit: enabled
139       influxdb: enabled
140       kibana: enabled
141       elasticsearch-client: enabled
142       elasticsearch-master: enabled
143       elasticsearch-data: enabled
144       postgresql: enabled
145       kube-ingress: enabled
146       beta.kubernetes.io/fluentd-ds-ready: 'true'
147       node-exporter: enabled
148       sriov: enabled
149 ...
150 ---
151 schema: drydock/HostProfile/v1
152 metadata:
153   schema: metadata/Document/v1
154   name: cp_r720-secondary
155   storagePolicy: cleartext
156   layeringDefinition:
157     abstract: false
158     layer: site
159     parentSelector:
160       hosttype: cp-global
161     actions:
162       - method: replace
163         path: .interfaces
164       - method: replace
165         path: .storage
166       - method: replace
167         path: .metadata.owner_data
168       - method: merge
169         path: .
170 data:
171   hardware_profile: dell_r720
172
173   primary_network: oam
174   interfaces:
175     pxe:
176       device_link: pxe
177       slaves:
178         - pxe_nic01
179       networks:
180         - pxe
181     bond0:
182       device_link: data
183       slaves:
184         - data_nic01
185         - data_nic02
186       networks:
187         - oam
188         - storage
189         - overlay
190         - calico
191
192   storage:
193     physical_devices:
194 {% for disk in yaml.disks %}
195       {{disk.name}}:
196       {% if 'labels' in disk %}
197         labels:
198         {% for key, value in disk.labels.items() %}
199           {{key}}: '{{value}}'
200         {% endfor %}
201       {% endif %}
202         partitions:
203        {% for p in disk.partitions %}
204           - name: '{{p.name}}'
205             size: '{{p.size}}'
206             {% if 'bootable' in p %}
207             bootable: {{p.bootable}}
208             {% endif %}
209             filesystem:
210               mountpoint: '{{p.mountpoint}}'
211               fstype: 'ext4'
212               mount_options: 'defaults'
213       {% endfor %}
214 {% endfor %}
215
216   platform:
217     kernel: 'hwe-16.04'
218     kernel_params:
219 {% if 'platform' in yaml and 'kernel_params' in yaml.platform %}
220 {% for key, value in yaml.platform.kernel_params.items() %}
221       {{key}}: '{{value}}'
222 {% endfor %}
223 {% else %}
224       console: 'ttyS1,115200n8'
225       intel_iommu: 'on'
226       iommu: 'pt'
227       amd_iommu: 'on'
228       transparent_hugepage: 'never'
229 {% endif %}
230 {% if 'platform' in yaml and 'vcpu_pin_set' in yaml.platform %}
231       isolcpus: '{{yaml.platform.vcpu_pin_set}}'
232 {% endif %}
233
234   metadata:
235     owner_data:
236       openstack-nova-compute: enabled
237       openvswitch: enabled
238       tenant-ceph-osd: enabled
239       openstack-libvirt: kernel
240       sriov: enabled
241       beta.kubernetes.io/fluentd-ds-ready: 'true'
242 ...