top.sls 2.2 KB

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