Skip to content

Instantly share code, notes, and snippets.

@virtualhops
Last active January 30, 2018 21:52
Show Gist options
  • Save virtualhops/8b0862f6e6dfc88c73d712dbad269cfc to your computer and use it in GitHub Desktop.
Save virtualhops/8b0862f6e6dfc88c73d712dbad269cfc to your computer and use it in GitHub Desktop.
Heat environment file to create a v2 service chain in Contrail (thanks Ganesha, Nicolas, Bernhard). It is verified to work in Contrail version 3.0.2.
parameters:
# VN config
management_network: 'management_vn'
left_vn: 'left_vn'
right_vn: 'right_vn'
left_vn_fqdn: 'default-domain:admin:left_vn'
right_vn_fqdn: 'default-domain:admin:right_vn'
# VM config
flavor: 'm1.tiny'
image: 'cirros'
left_vm_name: 'left_vm'
right_vm_name: 'right_vm'
#ST Config
service_template1_name: pt_template1
service_template_properties_version: 2
service_template1_properties_service_mode: 'in-network-nat'
service_template_properties_service_type: 'firewall'
service_template1_properties_interface_type_service_interface_type_1: 'management'
service_template1_properties_interface_type_service_interface_type_2: 'left'
service_template1_properties_interface_type_service_interface_type_3: 'right'
service_template_properties_ordered_interfaces: True
service_template_properties_service_virtualization_type: 'virtual-machine'
domain: 'default-domain'
service_template2_name: pt_template2
service_template2_properties_service_mode: 'in-network'
service_template2_properties_interface_type_service_interface_type_1: 'management'
service_template2_properties_interface_type_service_interface_type_2: 'left'
service_template2_properties_interface_type_service_interface_type_3: 'right'
# SI Config
service_instance1_name: my-NAT-SI
svm1_name: 'pt_svm1'
svm1_image: 'vsrx-nat'
svm1_flavor: 'm1.medium'
service_instance1_fq_name: 'default-domain:admin:pt_instance1'
service_instance2_name: my-noNAT-SI
svm2_name: 'pt_svm2'
svm2_image: 'vsrx-nonat'
svm2_flavor: 'm1.medium'
service_instance2_fq_name: 'default-domain:admin:pt_instance2'
#PT Config
pt1_name: 'pt1'
pt2_name: 'pt2'
#IPAM Config
network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_1: '1.1.1.0'
network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_1: 24
network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2: '2.2.2.0'
network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2: 24
network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_3: '3.3.3.0'
network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_3: 24
network_ipam_refs_data_ipam_subnets_addr_from_start_true: true
#Policy Config
policy_name: 'pt_policy'
policy_fq_name: 'default-domain:admin:pt_policy'
simple_action: 'pass'
protocol: 'any'
src_port_end: -1
src_port_start: -1
direction: '<>'
dst_port_end: -1
dst_port_start: -1
apply_services: "default-domain:admin:my-noNAT-SI,default-domain:admin:my-NAT-SI"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment