d210f985d3dc8e7ba11bf451bc6e0aa5bf2ba1a4
[integration.git] / deployment / heat / onap-rke / parts / onap-oom-1.yaml
1 heat_template_version: 2015-10-15
2 description: ONAP on RKE Kubernetes using OOM
3
4 parameters:
5   docker_proxy:
6     type: string
7
8   apt_proxy:
9     type: string
10
11   public_net_id:
12     type: string
13     description: The ID of the Public network for floating IP address allocation
14
15   oam_network_cidr:
16     type: string
17     description: CIDR of the OAM ONAP network
18
19   oam_ext_network_cidr:
20     type: string
21     description: CIDR of the onap_oam_ext network
22
23   ubuntu_1804_image:
24     type: string
25     description: Name of the Ubuntu 18.04 image
26
27   nfs_vm_flavor:
28     type: string
29     description: VM flavor for Nfs
30
31   k8s_vm_flavor:
32     type: string
33     description: VM flavor for k8s hosts
34
35   orch_vm_flavor:
36     type: string
37     description: VM flavor for orch hosts
38
39   integration_override_yaml:
40     type: string
41     description: Content for integration_override.yaml
42
43   integration_gerrit_branch:
44     type: string
45     default: "master"
46
47   integration_gerrit_refspec:
48     type: string
49     default: ""
50
51   oom_gerrit_branch:
52     type: string
53     default: "master"
54
55   oom_gerrit_refspec:
56     type: string
57     default: ""
58
59   docker_manifest:
60     type: string
61     default: ""
62
63   key_name:
64     type: string
65     default: "onap_key"
66
67   docker_version:
68     type: string
69     default: "18.09.5"
70
71   kubectl_version:
72     type: string
73     default: "1.13.5"
74
75   helm_version:
76     type: string
77     default: "2.12.3"
78
79   helm_deploy_delay:
80     type: string
81     default: "3m"
82
83   mtu:
84     type: number
85     default: 1500
86
87   portal_hostname:
88     type: string
89     description: The FQDN of the k8s host that will be used for the Portal UI component URLs; this needs to be resolveable at the client
90     default: "portal.api.simpledemo.onap.org"
91
92 resources:
93   random-str:
94     type: OS::Heat::RandomString
95     properties:
96       length: 4
97
98   # ONAP security group
99   onap_sg:
100     type: OS::Neutron::SecurityGroup
101     properties:
102       name:
103         str_replace:
104           template: base_rand
105           params:
106             base: onap_sg
107             rand: { get_resource: random-str }
108       description: security group used by ONAP
109       rules:
110         # All egress traffic
111         - direction: egress
112           ethertype: IPv4
113         - direction: egress
114           ethertype: IPv6
115         # ingress traffic
116         # ICMP
117         - protocol: icmp
118         - protocol: udp
119           port_range_min: 1
120           port_range_max: 65535
121         - protocol: tcp
122           port_range_min: 1
123           port_range_max: 65535
124         # Protocols used for vLB/vDNS use case
125         - protocol: 47
126         - protocol: 53
127         - protocol: 132
128
129   router:
130     type: OS::Neutron::Router
131     properties:
132       name:
133         list_join: ['-', [{ get_param: 'OS::stack_name' }, 'router']]
134       external_gateway_info:
135         network: { get_param: public_net_id }
136
137   # ONAP management private network
138   oam_network:
139     type: OS::Neutron::Net
140     properties:
141       name:
142         str_replace:
143           template: oam_network_rand
144           params:
145             rand: { get_resource: random-str }
146
147   oam_subnet:
148     type: OS::Neutron::Subnet
149     properties:
150       name:
151         str_replace:
152           template: oam_network_rand
153           params:
154             rand: { get_resource: random-str }
155       network_id: { get_resource: oam_network }
156       cidr: { get_param: oam_network_cidr }
157       dns_nameservers: [ "8.8.8.8" ]
158
159   oam_router_interface:
160     type: OS::Neutron::RouterInterface
161     properties:
162       router_id: { get_resource: router }
163       subnet_id: { get_resource: oam_subnet }
164
165   oam_ext_network:
166     type: OS::Neutron::Net
167     properties:
168       name: onap_oam_ext
169
170   oam_ext_subnet:
171     type: OS::Neutron::Subnet
172     properties:
173       name: onap_oam_ext
174       network_id: { get_resource: oam_ext_network }
175       cidr: { get_param: oam_ext_network_cidr }
176       enable_dhcp: false
177       dns_nameservers: [ "8.8.8.8" ]
178
179   oam_ext_router_interface:
180     type: OS::Neutron::RouterInterface
181     properties:
182       router_id: { get_resource: router }
183       subnet_id: { get_resource: oam_ext_subnet }
184
185   nfs_private_port:
186     type: OS::Neutron::Port
187     properties:
188       network: { get_resource: oam_network }
189       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
190       security_groups:
191       - { get_resource: onap_sg }
192
193   nfs_floating_ip:
194     type: OS::Neutron::FloatingIP
195     properties:
196       floating_network_id: { get_param: public_net_id }
197       port_id: { get_resource: nfs_private_port }