Updated templates for ovs-dpdk site type
[yaml_builds.git] / site_type / ovsdpdk / templates / profiles / host / cp-r01.j2
1 ---
2 ##############################################################################
3 # Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.        #
4 #                                                                            #
5 # Licensed under the Apache License, Version 2.0 (the "License"); you may    #
6 # not use this file except in compliance with the License.                   #
7 #                                                                            #
8 # You may obtain a copy of the License at                                    #
9 #       http://www.apache.org/licenses/LICENSE-2.0                           #
10 #                                                                            #
11 # Unless required by applicable law or agreed to in writing, software        #
12 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT  #
13 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.           #
14 # See the License for the specific language governing permissions and        #
15 # limitations under the License.                                             #
16 ##############################################################################
17
18 schema: drydock/HostProfile/v1
19 metadata:
20   schema: metadata/Document/v1
21   name: ControlPlane
22   storagePolicy: cleartext
23   labels:
24     hosttype: ControlPlane
25   layeringDefinition:
26     abstract: false
27     layer: site
28   substitutions:
29     - dest:
30         path: .oob.credential
31       src:
32         schema: deckhand/Passphrase/v1
33         name: ipmi_admin_password
34         path: .
35 data:
36   oob:
37     type: 'ipmi'
38     network: 'oob'
39     account: '{{yaml.ipmi_admin.username}}'
40   primary_network: 'oam'
41   hardware_profile: DELL_HP_Generic
42   interfaces:
43     pxe:
44       device_link: pxe
45       slaves:
46         - '{{yaml.networks.pxe.interface}}'
47       networks:
48         - 'pxe'
49     bond0:
50       device_link: bond0
51       slaves:
52 {% for slave in yaml.networks.slaves %}
53         - '{{ slave.name }}'
54 {% endfor %}
55       networks:
56         - 'oam'
57         - 'storage'
58         - 'overlay'
59         - 'calico'
60     dpdk:
61       device_link: dpdk
62       slaves:
63         - '{{yaml.networks.vxlan.interface}}'
64       networks:
65         - dpdk
66   storage:
67     physical_devices:
68 {% for disk in yaml.disks %}
69       {{disk.name}}:
70       {% if 'labels' in disk %}
71         labels:
72         {% for key, value in disk.labels.items() %}
73           {{key}}: '{{value}}'
74         {% endfor %}
75       {% endif %}
76         partitions:
77        {% for p in disk.partitions %}
78           - name: '{{p.name}}'
79             size: '{{p.size}}'
80             filesystem:
81               mountpoint: '{{p.mountpoint}}'
82               fstype: 'ext4'
83               mount_options: 'defaults'
84       {% endfor %}
85 {% endfor %}
86   platform:
87     image: 'xenial'
88     kernel: 'hwe-16.04'
89     kernel_params:
90 {% if 'platform' in yaml and 'kernel_params' in yaml.platform %}
91 {% for key, value in yaml.platform.kernel_params.items() %}
92       {{key}}: '{{value}}'
93 {% endfor %}
94 {% else %}
95       console: 'ttyS1,115200n8'
96       intel_iommu: 'on'
97       iommu: 'pt'
98       amd_iommu: 'on'
99       transparent_hugepage: 'never'
100 {% endif %}
101 {% if 'platform' in yaml and 'vcpu_pin_set' in yaml.platform %}
102       isolcpus: '{{yaml.platform.vcpu_pin_set}}'
103 {% endif %}
104   metadata:
105     owner_data:
106       control-plane: enabled
107       ucp-control-plane: enabled
108       openstack-control-plane: enabled
109       openstack-heat: enabled
110       openstack-keystone: enabled
111       openstack-rabbitmq: enabled
112       openstack-dns-helper: enabled
113       openstack-mariadb: enabled
114       openstack-nova-control: enabled
115       openstack-etcd: enabled
116       openstack-mistral: enabled
117       openstack-memcached: enabled
118       openstack-glance: enabled
119       openstack-horizon: enabled
120       openstack-cinder-control: enabled
121       openstack-cinder-volume: control
122       openstack-neutron: enabled
123       openstack-libvirt: kernel
124       openvswitch: enabled
125       openstack-nova-compute: enabled
126       ucp-barbican: enabled
127       ceph-bootstrap: enabled
128       ceph-mon: enabled
129       ceph-mgr: enabled
130       ceph-osd: enabled
131       ceph-mds: enabled
132       ceph-rgw: enabled
133       ucp-maas: enabled
134       kube-dns: enabled
135       kubernetes-apiserver: enabled
136       kubernetes-controller-manager: enabled
137       kubernetes-etcd: enabled
138       kubernetes-scheduler: enabled
139       tiller-helm: enabled
140       kube-etcd: enabled
141       calico-policy: enabled
142       calico-node: enabled
143       calico-etcd: enabled
144       ucp-armada: enabled
145       ucp-drydock: enabled
146       ucp-deckhand: enabled
147       ucp-shipyard: enabled
148       IAM: enabled
149       ucp-promenade: enabled
150       prometheus-server: enabled
151       prometheus-client: enabled
152       fluentd: enabled
153       influxdb: enabled
154       kibana: enabled
155       elasticsearch-client: enabled
156       elasticsearch-master: enabled
157       elasticsearch-data: enabled
158       postgresql: enabled
159       kube-ingress: enabled
160       sriov: enabled
161       beta.kubernetes.io/fluentd-ds-ready: 'true'
162 ...