Saltstack Official Linux Formula
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

238 lines
5.9KB

  1. {% set system = salt['grains.filter_by']({
  2. 'Arch': {
  3. 'pkgs': ['sudo', 'vim', 'wget'],
  4. 'utc': true,
  5. 'user': {},
  6. 'group': {},
  7. 'job': {},
  8. 'limit': {},
  9. 'locale': {},
  10. 'motd': {},
  11. 'env': {},
  12. 'profile': {},
  13. 'proxy': {},
  14. 'repo': {},
  15. 'package': {},
  16. 'autoupdates': {
  17. 'pkgs': []
  18. },
  19. 'selinux': 'permissive',
  20. 'ca_certs_dir': '/usr/local/share/ca-certificates',
  21. },
  22. 'Debian': {
  23. 'pkgs': ['python-apt', 'apt-transport-https', 'libmnl0'],
  24. 'utc': true,
  25. 'user': {},
  26. 'group': {},
  27. 'job': {},
  28. 'limit': {},
  29. 'locale': {},
  30. 'motd': {},
  31. 'env': {},
  32. 'profile': {},
  33. 'proxy': {},
  34. 'repo': {},
  35. 'package': {},
  36. 'autoupdates': {
  37. 'pkgs': ['unattended-upgrades']
  38. },
  39. 'selinux': 'permissive',
  40. 'ca_certs_dir': '/usr/local/share/ca-certificates',
  41. },
  42. 'RedHat': {
  43. 'pkgs': ['policycoreutils', 'policycoreutils-python', 'telnet', 'wget'],
  44. 'utc': true,
  45. 'user': {},
  46. 'group': {},
  47. 'job': {},
  48. 'limit': {},
  49. 'locale': {},
  50. 'motd': {},
  51. 'env': {},
  52. 'profile': {},
  53. 'proxy': {},
  54. 'repo': {},
  55. 'package': {},
  56. 'autoupdates': {
  57. 'pkgs': []
  58. },
  59. 'selinux': 'permissive',
  60. 'ca_certs_dir': '/usr/local/share/ca-certificates',
  61. },
  62. }, grain='os_family', merge=salt['pillar.get']('linux:system')) %}
  63. {# 'network_name', #}
  64. {% set interface_params = [
  65. 'gateway',
  66. 'mtu',
  67. 'network',
  68. 'broadcast',
  69. 'master',
  70. 'miimon',
  71. 'ovs_ports',
  72. 'ovs_bridge',
  73. 'mode',
  74. 'port_type',
  75. 'peer',
  76. 'lacp-rate',
  77. 'dns-search',
  78. 'up_cmds',
  79. 'pre_up_cmds',
  80. 'post_up_cmds',
  81. 'down_cmds',
  82. 'pre_down_cmds',
  83. 'post_down_cmds',
  84. 'maxwait',
  85. 'stp',
  86. 'gro',
  87. 'lacp_rate',
  88. 'ad_select',
  89. 'downdelay',
  90. 'updelay',
  91. 'hashing-algorithm',
  92. ] %}
  93. {% set network = salt['grains.filter_by']({
  94. 'Arch': {
  95. 'pkgs': ['wpa_supplicant', 'dhclient', 'wireless_tools'],
  96. 'bridge_pkgs': ['bridge-utils'],
  97. 'ovs_pkgs': ['openvswitch-switch'],
  98. 'hostname_file': '/etc/hostname',
  99. 'network_manager': False,
  100. 'interface': {},
  101. 'interface_params': interface_params,
  102. 'bridge': 'none',
  103. 'proxy': {
  104. 'host': 'none',
  105. },
  106. 'host': {},
  107. 'dhclient_config': '/etc/dhcp/dhclient.conf',
  108. },
  109. 'Debian': {
  110. 'hostname_file': '/etc/hostname',
  111. 'bridge_pkgs': ['bridge-utils'],
  112. 'ovs_pkgs': ['openvswitch-switch', 'bridge-utils'],
  113. 'dpdk_pkgs': ['dpdk', 'dpdk-dev', 'dpdk-dkms', 'dpdk-igb-uio-dkms', 'dpdk-rte-kni-dkms'],
  114. 'network_manager': False,
  115. 'interface': {},
  116. 'interface_params': interface_params,
  117. 'bridge': 'none',
  118. 'proxy': {
  119. 'host': 'none'
  120. },
  121. 'host': {},
  122. 'dhclient_config': '/etc/dhcp/dhclient.conf',
  123. },
  124. 'RedHat': {
  125. 'bridge_pkgs': ['bridge-utils'],
  126. 'ovs_pkgs': ['openvswitch-switch', 'bridge-utils'],
  127. 'hostname_file': '/etc/sysconfig/network',
  128. 'network_manager': False,
  129. 'interface': {},
  130. 'interface_params': interface_params,
  131. 'bridge': 'none',
  132. 'proxy': {
  133. 'host': 'none'
  134. },
  135. 'host': {},
  136. 'dhclient_config': '/etc/dhcp/dhclient.conf',
  137. },
  138. }, grain='os_family', merge=salt['pillar.get']('linux:network')) %}
  139. {% set storage = salt['grains.filter_by']({
  140. 'Arch': {
  141. 'mount': {},
  142. 'swap': {},
  143. 'lvm': {},
  144. 'lvm_services': ['lvm2-lvmetad', 'lvm2-lvmpolld', 'lvm2-monitor'],
  145. 'loopback': {},
  146. 'nfs': {
  147. 'pkgs': ['nfs-utils']
  148. },
  149. 'multipath': {
  150. 'enabled': False,
  151. 'pkgs': ['multipath-tools', 'multipath-tools-boot'],
  152. 'service': ''
  153. },
  154. },
  155. 'Debian': {
  156. 'mount': {},
  157. 'swap': {},
  158. 'lvm': {},
  159. 'lvm_services': ['lvm2-lvmetad', 'lvm2-lvmpolld', 'lvm2-monitor'],
  160. 'loopback': {},
  161. 'nfs': {
  162. 'pkgs': ['nfs-common']
  163. },
  164. 'multipath': {
  165. 'enabled': False,
  166. 'pkgs': ['multipath-tools', 'multipath-tools-boot'],
  167. 'service': 'multipath-tools'
  168. },
  169. 'lvm_pkgs': ['lvm2'],
  170. },
  171. 'RedHat': {
  172. 'mount': {},
  173. 'swap': {},
  174. 'lvm': {},
  175. 'lvm_services': ['lvm2-lvmetad', 'lvm2-lvmpolld', 'lvm2-monitor'],
  176. 'loopback': {},
  177. 'nfs': {
  178. 'pkgs': ['nfs-utils']
  179. },
  180. 'multipath': {
  181. 'enabled': False,
  182. 'pkgs': [],
  183. 'service': 'multipath'
  184. },
  185. },
  186. }, grain='os_family', merge=salt['pillar.get']('linux:storage')) %}
  187. {% set monitoring = salt['grains.filter_by']({
  188. 'default': {
  189. 'zombie': {
  190. 'warn': 3,
  191. 'crit': 7,
  192. },
  193. 'procs': {
  194. 'warn': 5000,
  195. 'crit': 10000,
  196. },
  197. 'load': {
  198. 'warn': '6,4,2',
  199. 'crit': '12,8,4',
  200. },
  201. 'swap': {
  202. 'warn': '50%',
  203. 'crit': '20%',
  204. },
  205. 'disk': {
  206. 'warn': '15%',
  207. 'crit': '5%',
  208. },
  209. 'cpu_idle_percentage': {
  210. 'warn': 10.0,
  211. },
  212. 'free_memory_percentage': {
  213. 'warn': 10.0,
  214. },
  215. 'load_5': {
  216. 'warn': 3,
  217. },
  218. 'rx_packets_dropped_rate': {
  219. 'warn': 100,
  220. },
  221. 'tx_packets_dropped_rate': {
  222. 'warn': 100,
  223. },
  224. 'swap_in_rate': {
  225. 'warn': 1024 * 1024,
  226. },
  227. 'swap_out_rate': {
  228. 'warn': 1024 * 1024,
  229. },
  230. },
  231. }, grain='os_family', merge=salt['pillar.get']('linux:monitoring')) %}