top.sls 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  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. - rsyslog
  18. - salt-minion
  19. - screen
  20. - snmpd
  21. - ssh
  22. - sysctl
  23. - timezone
  24. - vim
  25. - unattended-upgrades
  26. #
  27. # Roles
  28. #
  29. # Roles no relevant here are
  30. # - batman_gw (require role "batman")
  31. # - bbr (require role "router")
  32. # Router
  33. nodes:{{ grains['id'] }}:roles:router:
  34. - match: pillar
  35. - bird
  36. # acme
  37. nodes:{{ grains['id'] }}:roles:acme:
  38. - match: pillar
  39. - acme
  40. # Batman node
  41. nodes:{{ grains['id'] }}:roles:batman:
  42. - match: pillar
  43. - batman
  44. - respondd
  45. # Batman gateway
  46. nodes:{{ grains['id'] }}:roles:batman_gw:
  47. - match: pillar
  48. - dhcp-server
  49. # Build-Server
  50. nodes:{{ grains['id'] }}:roles:build:
  51. - match: pillar
  52. - build
  53. # Fastd
  54. nodes:{{ grains['id'] }}:roles:fastd:
  55. - match: pillar
  56. - fastd
  57. # Grafana
  58. nodes:{{ grains['id'] }}:roles:grafana:
  59. - match: pillar
  60. - grafana
  61. # gogs
  62. nodes:{{ grains['id'] }}:roles:gogs:
  63. - match: pillar
  64. - gogs
  65. # graylog
  66. nodes:{{ grains['id'] }}:roles:graylog:
  67. - match: pillar
  68. - graylog
  69. # KVM hosts
  70. nodes:{{ grains['id'] }}:roles:kvm:
  71. - match: pillar
  72. - kvm
  73. # (Authoritive?) DNS server
  74. nodes:{{ grains['id'] }}:roles:dns-server:
  75. - match: pillar
  76. - dns-server
  77. # Webfrontend
  78. nodes:{{ grains['id'] }}:roles:frontend:
  79. - match: pillar
  80. - nginx
  81. # DSL / PPPoE
  82. nodes:{{ grains['id'] }}:roles:pppoe:
  83. - match: pillar
  84. - pppoe
  85. # InfluxDB
  86. nodes:{{ grains['id'] }}:roles:influxdb:
  87. - match: pillar
  88. - influxdb
  89. # webserver
  90. nodes:{{ grains['id'] }}:roles:webserver:
  91. - match: pillar
  92. - nginx
  93. # yanic
  94. nodes:{{ grains['id'] }}:roles:yanic:
  95. - match: pillar
  96. - yanic
  97. # Docker
  98. nodes:{{ grains['id'] }}:roles:docker:
  99. - match: pillar
  100. - docker
  101. # LibreNMS
  102. nodes:{{ grains['id'] }}:roles:librenms:
  103. - match: pillar
  104. - librenms
  105. #
  106. # Grains
  107. #
  108. # apu2
  109. # Disabled for now
  110. # productname:apu2:
  111. # - match: grain
  112. # - apu2
  113. # Hardware nodes
  114. 'G@virtual:physical and not G@productname:apu2':
  115. - hardware