Setting up the new macro.
This commit is contained in:
		
							parent
							
								
									e5a4176f48
								
							
						
					
					
						commit
						8db634e01a
					
				| @ -5,229 +5,16 @@ | ||||
| # This file is managed by Salt. | ||||
| # Any changes will be overwritten. | ||||
| 
 | ||||
| {%- import_yaml 'keepalived/defaults.yaml' as keepalived_defaults %} | ||||
| {%- set keepalived_final_values = salt.pillar.get( | ||||
|     'keepalived', | ||||
|     default=keepalived_defaults, | ||||
|     merge=True) %} | ||||
| 
 | ||||
| #--------------------------------------------------------------------- | ||||
| # Global settings | ||||
| #--------------------------------------------------------------------- | ||||
| global_defs { | ||||
|     notification_email { | ||||
| {%- if 'notification_emails' in salt['pillar.get']('keepalived:global_defs')  %} | ||||
|   {%- for email in salt['pillar.get']('keepalived:global_defs:notification_emails', []) %} | ||||
|         {{ email }} | ||||
|   {%- endfor %} | ||||
| {%- endif %} | ||||
|     } | ||||
|     notification_email_from {{ salt['pillar.get']('keepalived:global_defs:notification_email_from', 'keepalived@'~salt['grains.get']('fqdn') ) }} | ||||
|     smtp_server {{ salt['pillar.get']('keepalived:global_defs:smtp_server', 'localhost') }} | ||||
| {%- if 'smtp_connect_timeout' in salt['pillar.get']('keepalived:global_defs')  %} | ||||
|     smtp_connect_timeout {{ salt['pillar.get']('keepalived:global_defs:smtp_connect_timeout') }} | ||||
| {%- endif %} | ||||
| } | ||||
| 
 | ||||
| #--------------------------------------------------------------------- | ||||
| # static network configuration | ||||
| #--------------------------------------------------------------------- | ||||
| # static ipaddresses | ||||
| {%- if 'static_ipaddresses' in salt['pillar.get']('keepalived') %} | ||||
| static_ipaddress { | ||||
|   {%- for address in salt['pillar.get']('keepalived:static_ipaddresses', {}).iteritems() %} | ||||
|     {{ address }} | ||||
|   {%- endfor %} | ||||
| } | ||||
| {%- endif %} | ||||
| 
 | ||||
| # static routes | ||||
| {%- if 'static_routes' in salt['pillar.get']('keepalived') %} | ||||
| static_routes { | ||||
|   {%- for route in salt['pillar.get']('keepalived:static_routes', {}).iteritems() %} | ||||
|     {{ route}} | ||||
|   {%- endfor %} | ||||
| } | ||||
| {%- endif %} | ||||
| 
 | ||||
| #--------------------------------------------------------------------- | ||||
| # vrrp configuration | ||||
| #--------------------------------------------------------------------- | ||||
| 
 | ||||
| # vrrp scripts | ||||
| {%- for script in salt['pillar.get']('keepalived:vrrp_scripts', {}).iteritems() %} | ||||
| vrrp_script {{ script[1].get('name', script[0]) }} { | ||||
|     script "{{ script[1].get('script') }}" | ||||
|     interval {{ script[1].get('interval', '1') }} | ||||
|     weight {{ script[1].get('weight', '2') }} | ||||
|   {%- if 'fall' in script[1] %} | ||||
|     fall {{ script[1].get('fall') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'rise' in script[1] %} | ||||
|     rise {{ script[1].get('rise') }} | ||||
|   {%- endif %} | ||||
| } | ||||
| {%- endfor %} | ||||
| 
 | ||||
| # vrrp sync groups | ||||
| {%- if 'vrrp_sync_groups' in salt['pillar.get']('keepalived') %} | ||||
|   {%- for syncgroup in salt['pillar.get']('keepalived:vrrp_sync_groups', {}).iteritems() %} | ||||
| vrrp_sync_group {{ syncgroup[1].get('name', syncgroup[0]) }} { | ||||
|     group { | ||||
|     {%- for member in syncgroup[1].members %} | ||||
|         {{ member }} | ||||
|     {%- endfor%} | ||||
|     } | ||||
|     {%- if 'notify_master' in syncgroup[1] %} | ||||
|     notify_master {{ syncgroup[1].get('notify_master') }} | ||||
|     {%- endif %} | ||||
|     {%- if 'notify_backup' in syncgroup[1] %} | ||||
|     notify_backup {{ syncgroup[1].get('notify_backup') }} | ||||
|     {%- endif %} | ||||
|     {%- if 'notify_fault' in syncgroup[1] %} | ||||
|     notify_master {{ syncgroup[1].get('notify_fault') }} | ||||
|     {%- endif %} | ||||
|     {%- if 'notify' in syncgroup[1] %} | ||||
|     notify {{ syncgroup[1].get('notify') }} | ||||
|     {%- endif %} | ||||
|     {%- if 'smtp_alert' in syncgroup[1] %} | ||||
|       {%- if True == syncgroup[1].get('smtp_alert') %} | ||||
|     smtp_alert | ||||
|       {%- endif %} | ||||
|     {%- endif %} | ||||
| } | ||||
|   {%- endfor %} | ||||
| {%- endif %} | ||||
| 
 | ||||
| # vrrp instance | ||||
| {%- for instance in salt['pillar.get']('keepalived:vrrp_instances', {}).iteritems() %} | ||||
| vrrp_instance {{ instance[1].get('name', instance[0]) }} { | ||||
|   {%- if 'use_vmac' in instance[1] %} | ||||
|     {%- if True == instance[1].get('use_vmac') %} | ||||
|     use_vmac | ||||
|     {%- endif %} | ||||
|   {%- endif %} | ||||
|   {%- if 'vmac_xmit_base' in instance[1] %} | ||||
|     {%- if True == instance[1].get('vmac_xmit_base') %} | ||||
|     vmac_xmit_base | ||||
|     {%- endif %} | ||||
|   {%- endif %} | ||||
|   {%- if 'native_ipv6' in instance[1] %} | ||||
|     {%- if True == instance[1].get('native_ipv6') %} | ||||
|     native_ipv6 | ||||
|     {%- endif %} | ||||
|   {%- endif %} | ||||
|     state {{ instance[1].get('state', 'BACKUP') }} | ||||
|   {%- if 'interface' in instance[1] %} | ||||
|     interface {{ instance[1].get('interface') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'track_interfaces' in instance[1] %} | ||||
|     track_interface { | ||||
|     {%- for track_interface in instance[1].track_interfaces %} | ||||
|         {{ track_interface }} | ||||
|     {%- endfor%} | ||||
|     } | ||||
|   {%- endif %} | ||||
|   {%- if 'track_scripts' in instance[1] %} | ||||
|     track_script { | ||||
|     {%- for track_script in instance[1].track_scripts %} | ||||
|         {{ track_script }} | ||||
|     {%- endfor%} | ||||
|     } | ||||
|   {%- endif %} | ||||
|   {%- if 'dont_track_primary' in instance[1] and instance[1].get('dont_track_primary') %} | ||||
|     dont_track_primary | ||||
|   {%- endif %} | ||||
|   {%- if 'mcast_src_ip' in instance[1] %} | ||||
|     mcast_src_ip {{ instance[1].get('mcast_src_ip') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'unicast_src_ip' in instance[1] %} | ||||
|     unicast_src_ip {{ instance[1].get('unicast_src_ip') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'unicast_peers' in instance[1] %} | ||||
|     unicast_peer { | ||||
|     {%- for unicast_peer in instance[1].unicast_peers %} | ||||
|         {{ unicast_peer }} | ||||
|     {%- endfor%} | ||||
|     } | ||||
|   {%- endif %} | ||||
|   {%- if 'lvs_sync_daemon_interface' in instance[1] %} | ||||
|     lvs_sync_daemon_interface {{ instance[1].get('lvs_sync_daemon_interface') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'garp_master_delay' in instance[1] %} | ||||
|     garp_master_delay {{ instance[1].get('garp_master_delay') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'garp_master_repeat' in instance[1] %} | ||||
|     garp_master_repeat {{ instance[1].get('garp_master_repeat') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'garp_master_refresh' in instance[1] %} | ||||
|     garp_master_refresh {{ instance[1].get('garp_master_refresh') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'garp_master_refresh_repeat' in instance[1] %} | ||||
|     garp_master_refresh_repeat {{ instance[1].get('garp_master_refresh_repeat') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'virtual_router_id' in instance[1] %} | ||||
|     virtual_router_id {{ instance[1].get('virtual_router_id') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'priority' in instance[1] %} | ||||
|     priority {{ instance[1].get('priority') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'advert_int' in instance[1] %} | ||||
|     advert_int {{ instance[1].get('advert_int') }} | ||||
|   {%- endif %} | ||||
|     authentication { | ||||
|         auth_type {{ instance[1].get('authentication').get('auth_type') }} | ||||
|         auth_pass {{ instance[1].get('authentication').get('auth_pass') }} | ||||
|     } | ||||
|   {%- if 'virtual_ipaddresses' in instance[1] %} | ||||
|     virtual_ipaddress { | ||||
|     {%- for virtual_ipaddress in instance[1].virtual_ipaddresses %} | ||||
|         {{ virtual_ipaddress }} | ||||
|     {%- endfor%} | ||||
|     } | ||||
|   {%- endif %} | ||||
|   {%- if 'virtual_ipaddresses_excluded' in instance[1] %} | ||||
|     virtual_ipaddress_excluded { | ||||
|     {%- for virtual_ipaddress_excluded in instance[1].virtual_ipaddresses_excluded %} | ||||
|         {{ virtual_ipaddress_excluded }} | ||||
|     {%- endfor%} | ||||
|     } | ||||
|   {%- endif %} | ||||
|   {%- if 'virtual_routes' in instance[1] %} | ||||
|     virtual_routes { | ||||
|     {%- for virtual_route in instance[1].virtual_routes %} | ||||
|         {{ virtual_route }} | ||||
|     {%- endfor%} | ||||
|     {%- if 'blackhole_addresses' in instance[1] %} | ||||
|       {%- for blackhole_address in instance[1].blackhole_addresses %} | ||||
|         blackhole {{ blackhole_address }} | ||||
|       {%- endfor%} | ||||
|     {%- endif %} | ||||
|     } | ||||
|   {%- endif %} | ||||
|   {%- if 'nopreempt' in instance[1] and instance[1].get('nopreempt') %} | ||||
|     nopreempt | ||||
|   {%- endif %} | ||||
|   {%- if 'notify_master' in instance[1] %} | ||||
|     notify_master {{ instance[1].get('notify_master') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'notify_backup' in instance[1] %} | ||||
|     notify_backup {{ instance[1].get('notify_backup') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'notify_fault' in instance[1] %} | ||||
|     notify_fault {{ instance[1].get('notify_fault') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'notify_stop' in instance[1] %} | ||||
|     notify_stop {{ instance[1].get('notify_stop') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'notify' in instance[1] %} | ||||
|     notify {{ instance[1].get('notify') }} | ||||
|   {%- endif %} | ||||
|   {%- if 'smtp_alert' in instance[1] %} | ||||
|     {%- if True == instance[1].get('smtp_alert') %} | ||||
|     smtp_alert | ||||
|     {%- endif %} | ||||
|   {%- endif %} | ||||
| } | ||||
| {%- endfor %} | ||||
| 
 | ||||
| #--------------------------------------------------------------------- | ||||
| # lvs configuration | ||||
| #--------------------------------------------------------------------- | ||||
| #this section has not been completed | ||||
| 
 | ||||
| {%- macro config_entries(data) -%} | ||||
|   {%- if data is mapping -%} | ||||
|     {%- for entry_type in data|dictsort -%} | ||||
| {{ entry_type }} | ||||
|     {%- endfor -%} | ||||
|   {%- endif -%} | ||||
| {%- endmacro -%} | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Jeff Baskin
						Jeff Baskin