top.sls 2.1 KB

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