top.sls 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. base:
  2. # Base config for all minions
  3. '*':
  4. - ffinfo
  5. - apt
  6. - bash
  7. - certs
  8. - icinga2
  9. - kernel
  10. - locales
  11. - mosh
  12. - motd
  13. - needrestart
  14. - network
  15. - ntp
  16. - postfix
  17. - prometheus-exporters
  18. - rsyslog
  19. - salt-minion
  20. - screen
  21. - snmpd
  22. - ssh
  23. - sysctl
  24. - systemd
  25. - timezone
  26. - vim
  27. - unattended-upgrades
  28. - utils
  29. #
  30. # Tags
  31. #
  32. nodes:{{ grains['id'] }}:tags:nftables:
  33. - match: pillar
  34. - nftables
  35. #
  36. # Roles
  37. #
  38. # Router
  39. nodes:{{ grains['id'] }}:roles:router:
  40. - match: pillar
  41. - bird
  42. # acme
  43. nodes:{{ grains['id'] }}:roles:acme:
  44. - match: pillar
  45. - acme
  46. # Batman node
  47. nodes:{{ grains['id'] }}:roles:batman:
  48. - match: pillar
  49. - batman
  50. - respondd
  51. # Batman gateway
  52. nodes:{{ grains['id'] }}:roles:batman_gw:
  53. - match: pillar
  54. - dhcp-server
  55. # Build-Server
  56. nodes:{{ grains['id'] }}:roles:build:
  57. - match: pillar
  58. - build
  59. # burp client/server
  60. nodes:{{ grains['id'] }}:tags:backup:
  61. - match: pillar
  62. - burp.client
  63. nodes:{{ grains['id'] }}:roles:burp.server:
  64. - match: pillar
  65. - burp.server
  66. # Fastd
  67. nodes:{{ grains['id'] }}:roles:fastd:
  68. - match: pillar
  69. - fastd
  70. # Grafana
  71. nodes:{{ grains['id'] }}:roles:grafana:
  72. - match: pillar
  73. - grafana
  74. # gogs
  75. nodes:{{ grains['id'] }}:roles:gogs:
  76. - match: pillar
  77. - gogs
  78. # graylog
  79. nodes:{{ grains['id'] }}:roles:graylog:
  80. - match: pillar
  81. - graylog
  82. # KVM hosts
  83. nodes:{{ grains['id'] }}:roles:kvm:
  84. - match: pillar
  85. - kvm
  86. # (Authoritive?) DNS server
  87. nodes:{{ grains['id'] }}:roles:dns-server:
  88. - match: pillar
  89. - dns-server
  90. # Webfrontend
  91. nodes:{{ grains['id'] }}:roles:frontend:
  92. - match: pillar
  93. - nginx
  94. # DSL / PPPoE
  95. nodes:{{ grains['id'] }}:roles:pppoe:
  96. - match: pillar
  97. - pppoe
  98. # InfluxDB
  99. nodes:{{ grains['id'] }}:roles:influxdb:
  100. - match: pillar
  101. - influxdb
  102. # webserver
  103. nodes:{{ grains['id'] }}:roles:webserver:
  104. - match: pillar
  105. - nginx
  106. # yanic
  107. nodes:{{ grains['id'] }}:roles:yanic:
  108. - match: pillar
  109. - yanic
  110. # Docker
  111. nodes:{{ grains['id'] }}:roles:docker:
  112. - match: pillar
  113. - docker
  114. # LibreNMS
  115. nodes:{{ grains['id'] }}:roles:librenms:
  116. - match: pillar
  117. - librenms
  118. #
  119. # Grains
  120. #
  121. # apu2
  122. # Disabled for now
  123. # productname:apu2:
  124. # - match: grain
  125. # - apu2
  126. # Hardware nodes
  127. 'G@virtual:physical and not G@productname:apu2':
  128. - hardware