[ansible] Update collectd
by Nicolas Chauvet
commit c065aed916af5331e00e3bf6edca6c5c6711a2fe
Author: kwizart <kwizart(a)gmail.com>
Date: Wed Dec 18 15:36:31 2019 +0100
Update collectd
roles/collectd/base/files/network-server.conf | 3 +-
roles/collectd/base/templates/collectd.conf.j2 | 6 +
roles/collectd/rabbitmq/tasks/main.yml | 24 +
.../rabbitmq/templates/rabbitmq.collectd.conf.j2 | 20 +
roles/collectd/server/files/collection.conf | 904 ++++++++++++++++++++
roles/collectd/server/tasks/main.yml | 12 +
6 files changed, 967 insertions(+), 2 deletions(-)
---
diff --git a/roles/collectd/base/files/network-server.conf b/roles/collectd/base/files/network-server.conf
index c63fdf2..6864e0c 100644
--- a/roles/collectd/base/files/network-server.conf
+++ b/roles/collectd/base/files/network-server.conf
@@ -1,6 +1,5 @@
LoadPlugin network
<Plugin "network">
- Listen "192.168.181.254"
- Listen "192.168.182.1"
+ Listen "0.0.0.0"
</Plugin>
diff --git a/roles/collectd/base/templates/collectd.conf.j2 b/roles/collectd/base/templates/collectd.conf.j2
index 87ab32d..0505c16 100644
--- a/roles/collectd/base/templates/collectd.conf.j2
+++ b/roles/collectd/base/templates/collectd.conf.j2
@@ -13,6 +13,9 @@ FQDNLookup true
#Interval 10
#ReadThreads 5
+# This is the default but it needs to be defined so we can add more DB files later.
+TypesDB "/usr/share/collectd/types.db"
+
LoadPlugin syslog
<Plugin syslog>
@@ -57,8 +60,11 @@ LoadPlugin vmem
IgnoreSelected true
</Plugin>
+{% if ansible_distribution_major_version|default(0)|int == 6 %}
<Plugin hddtemp>
TranslateDevicename false
+
</Plugin>
+{% endif %}
Include "/etc/collectd.d"
diff --git a/roles/collectd/rabbitmq/tasks/main.yml b/roles/collectd/rabbitmq/tasks/main.yml
new file mode 100644
index 0000000..431f797
--- /dev/null
+++ b/roles/collectd/rabbitmq/tasks/main.yml
@@ -0,0 +1,24 @@
+- name: install collectd-rabbitmq
+ package:
+ state: present
+ name: python2-collectd-rabbitmq
+ tags:
+ - packages
+ - collectd
+
+- name: install collectd rabbitmq config
+ template:
+ src: "rabbitmq.collectd.conf.j2"
+ dest: "/etc/collectd.d/rabbitmq.conf"
+ owner: root
+ group: root
+ mode: 0640
+ tags:
+ - collectd
+ - config
+ notify: restart collectd
+
+- name: Let collectd talk to the RabbitMQ management interface
+ seboolean: name=collectd_tcp_network_connect state=yes persistent=yes
+ tags:
+ - collectd
\ No newline at end of file
diff --git a/roles/collectd/rabbitmq/templates/rabbitmq.collectd.conf.j2 b/roles/collectd/rabbitmq/templates/rabbitmq.collectd.conf.j2
new file mode 100644
index 0000000..6539c77
--- /dev/null
+++ b/roles/collectd/rabbitmq/templates/rabbitmq.collectd.conf.j2
@@ -0,0 +1,20 @@
+LoadPlugin python
+<Plugin python>
+ LogTraces true
+ Interactive false
+ Import "collectd_rabbitmq.collectd_plugin"
+ <Module "collectd_rabbitmq.collectd_plugin">
+ Username "nagios-monitoring"
+ Password "{{ (env == 'production')|ternary(rabbitmq_monitoring_password_production, rabbitmq_monitoring_password_staging) }}"
+ Realm "RabbitMQ Management"
+ Host "localhost"
+ Port "15672"
+{% if env != 'production' %}
+ VHostPrefix "stg"
+{% endif %}
+ <Ignore "queue">
+ Regex "^federation%3A%20"
+ Regex "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
+ </Ignore>
+ </Module>
+</Plugin>
diff --git a/roles/collectd/server/files/collection.conf b/roles/collectd/server/files/collection.conf
new file mode 100644
index 0000000..99aa65e
--- /dev/null
+++ b/roles/collectd/server/files/collection.conf
@@ -0,0 +1,904 @@
+#DataDir "/var/lib/collectd/rrd"
+GraphWidth 400
+#UnixSockAddr "/var/run/collectd-unixsock"
+<Type apache_bytes>
+ DataSources value
+ DSName "value Bytes/s"
+ RRDTitle "Apache Traffic"
+ RRDVerticalLabel "Bytes/s"
+ RRDFormat "%5.1lf%s"
+ Color value 0000ff
+</Type>
+<Type apache_requests>
+ DataSources value
+ DSName "value Requests/s"
+ RRDTitle "Apache Traffic"
+ RRDVerticalLabel "Requests/s"
+ RRDFormat "%5.2lf"
+ Color value 00d000
+</Type>
+<Type apache_scoreboard>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "Apache scoreboard on {hostname}"
+ RRDVerticalLabel "Slots"
+ RRDFormat "%6.2lf"
+ DSName closing Closing
+ DSName dnslookup DNS lookup
+ DSName finishing Finishing
+ DSName idle_cleanup Idle cleanup
+ DSName keepalive Keep alive
+ DSName logging Logging
+ DSName open Open (empty)
+ DSName reading Reading
+ DSName sending Sending
+ DSName starting Starting
+ DSName waiting Waiting
+ Order open closing dnslookup finishing idle_cleanup keepalive logging open reading sending starting waiting
+ Color closing 000080
+ Color dnslookup ff0000
+ Color finishing 008080
+ Color idle_cleanup ffff00
+ Color keepalive 0080ff
+ Color logging a000a0
+ Color open e0e0e0
+ Color reading 0000ff
+ Color sending 00e000
+ Color starting ff00ff
+ Color waiting ffb000
+</Type>
+<Type arc_counts>
+ Module ArcCounts
+ RRDTitle "ARC {type_instance} on {hostname}"
+# RRDOptions ...
+</Type>
+<Type arc_l2_bytes>
+ Module GenericIO
+ DataSources read write
+ DSName "read Read "
+ DSName "write Written"
+ RRDTitle "L2ARC traffic"
+ RRDVerticalLabel "Bytes per second"
+# RRDOptions ...
+ RRDFormat "%5.1lf%s"
+</Type>
+<Type arc_l2_size>
+ RRDTitle "L2ARC size on {hostname}"
+ RRDVerticalLabel "Size"
+ RRDFormat "%4.0lf%s"
+ RRDOptions -b 1024
+ DSName "value Current size"
+ Color value 00e000
+</Type>
+<Type arc_size>
+ DataSources "current target minlimit maxlimit"
+ RRDTitle "ARC size on {hostname}"
+ RRDVerticalLabel "Size"
+ RRDFormat "%4.0lf%s"
+ RRDOptions -b 1024
+ DSName "current Current size"
+ DSName "target Target size "
+ DSName "maxlimit Max size "
+ DSName "minlimit Min size "
+ Color current 00e000
+ Color target 0000ff
+ Color minlimit ff0000
+ Color maxlimit ff00ff
+</Type>
+<Type arc_ratio>
+ DataSources value
+ RRDTitle "{type_instance}ARC ratio on {hostname}"
+ RRDVerticalLabel "Ratio"
+ RRDFormat "%4.1lf"
+ RRDOptions -l 0
+ DSName "value Hit ratio"
+</Type>
+<Type bitrate>
+ DataSources value
+ RRDTitle "Bitrate ({instance})"
+ RRDVerticalLabel "Bit/s"
+ RRDFormat "%5.1lf%s"
+ DSName "value Bitrate"
+</Type>
+<Type cache_ratio>
+ DataSources value
+ DSName value Percent
+ RRDTitle "Cache hit ratio for {plugin_instance} {type_instance}"
+ RRDVerticalLabel "Percent"
+ RRDFormat "%5.1lf %%"
+</Type>
+<Type cpu>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "CPU {plugin_instance} usage"
+ RRDVerticalLabel "Jiffies"
+ RRDFormat "%5.2lf"
+ DSName idle Idle
+ DSName nice Nice
+ DSName user User
+ DSName wait Wait-IO
+ DSName system System
+ DSName softirq SoftIRQ
+ DSName interrupt IRQ
+ DSName steal Steal
+ Order idle nice user wait system softirq interrupt steal
+ Color idle e8e8e8
+ Color nice 00e000
+ Color user 0000ff
+ Color wait ffb000
+ Color system ff0000
+ Color softirq ff00ff
+ Color interrupt a000a0
+ Color steal 000000
+</Type>
+<Type current>
+ DataSources value
+ DSName value Current
+ RRDTitle "Current ({type_instance})"
+ RRDVerticalLabel "Ampere"
+ RRDFormat "%4.1lfA"
+ Color value ffb000
+</Type>
+<Type df>
+ Module Df
+ DataSources free used
+</Type>
+<Type df_complex>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "Disk/Volume usage on {plugin_instance}"
+ RRDVerticalLabel "Byte"
+ RRDFormat "%5.1lf%s"
+ DSName "sis_saved SIS saved "
+ DSName "reserved Reserved "
+ DSName "free Free "
+ DSName "used Used "
+ DSName "snap_normal_used Snap used (normal)"
+ DSName "snap_reserved Snap reserved "
+ DSName "snap_reserve_used Snap used (resv) "
+ Order sis_saved reserved free used snap_normal_used snap_reserved snap_reserve_used
+ Color sis_saved 00e0e0
+ Color reserved ffb000
+ Color free 00ff00
+ Color snap_reverse ff8000
+ Color used ff0000
+ Color snap_normal_used c10640
+ Color snap_reserved f15aef
+ Color snap_reserve_used 820c81
+</Type>
+<Type disk_latency>
+ Module GenericIO
+ DataSources read write
+ DSName "read Read "
+ DSName write Write
+ RRDTitle "Disk Latency for {plugin_instance}"
+ RRDVerticalLabel "seconds"
+ Scale 0.000001
+ RRDFormat "%5.1lf %ss"
+</Type>
+<Type disk_octets>
+ Module GenericIO
+ DataSources read write
+ DSName "read Read "
+ DSName write Written
+ RRDTitle "Disk Traffic ({instance})"
+ RRDVerticalLabel "Bytes per second"
+# RRDOptions ...
+ RRDFormat "%5.1lf%s"
+</Type>
+<Type disk_ops>
+ Module GenericIO
+ DataSources read write
+ DSName "read Read "
+ DSName write Written
+ RRDTitle "Disk Operations ({instance})"
+ RRDVerticalLabel "Operations per second"
+# RRDOptions ...
+ RRDFormat "%5.1lf"
+</Type>
+<Type disk_ops_complex>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "Netapp disc ops on {plugin_instance}"
+ RRDVerticalLabel "Ops"
+ RRDFormat "%6.2lf"
+ DSName fcp_ops FCP-Ops
+ DSName nfs_ops NFS-Ops
+ DSName http_ops HTTP-Ops
+ DSName cifs_ops CIFS-Ops
+ DSName dafs_ops DAFS-Ops
+ DSName iscsi_ops iSCSI-Ops
+ Order fcp_ops nfs_ops http_ops cifs_ops dafs_ops iscsi_ops
+ Color fcp_ops 000080
+ Color nfs_ops ff0000
+ Color http_ops ffb000
+ Color cifs_ops 00e0a0
+ Color dafs_ops 00e000
+ Color iscsi_ops 00e0ff
+</Type>
+<Type disk_merged>
+ Module GenericIO
+ DataSources read write
+ DSName "read Read "
+ DSName write Written
+ RRDTitle "Disk Merged Operations ({instance})"
+ RRDVerticalLabel "Merged operations/s"
+# RRDOptions ...
+ RRDFormat "%5.1lf"
+</Type>
+<Type disk_time>
+ Module GenericIO
+ DataSources read write
+ DSName "read Read "
+ DSName write Written
+ RRDTitle "Disk time per operation ({instance})"
+ RRDVerticalLabel "Avg. Time/Op"
+# RRDOptions ...
+ RRDFormat "%5.1lf%ss"
+ Scale 0.001
+</Type>
+<Type dns_opcode>
+ DataSources value
+ DSName "value Queries/s"
+ RRDTitle "DNS Opcode {type_instance}"
+ RRDVerticalLabel "Queries/s"
+ RRDFormat "%6.1lf"
+</Type>
+<Type conntrack>
+ DataSources value
+ DSName value Conntrack count
+ RRDTitle "nf_conntrack connections on {hostname}"
+ RRDVerticalLabel "Count"
+ RRDFormat "%4.0lf"
+</Type>
+<Type entropy>
+ DataSources value
+ DSName value Entropy bits
+ RRDTitle "Available entropy on {hostname}"
+ RRDVerticalLabel "Bits"
+ RRDFormat "%4.0lf"
+</Type>
+<Type fanspeed>
+ DataSources value
+ DSName value RPM
+ RRDTitle "Fanspeed ({instance})"
+ RRDVerticalLabel "RPM"
+ RRDFormat "%6.1lf"
+ Color value 00b000
+</Type>
+<Type frequency>
+ DataSources value
+ DSName value Frequency
+ RRDTitle "Frequency ({type_instance})"
+ RRDVerticalLabel "Hertz"
+ RRDFormat "%4.1lfHz"
+ Color value a000a0
+</Type>
+<Type humidity>
+ DataSources value
+ DSName value Humitidy
+ RRDTitle "Humitidy ({instance})"
+ RRDVerticalLabel "Percent"
+ RRDFormat "%4.1lf%%"
+ Color value 00e000
+</Type>
+<Type if_errors>
+ Module GenericIO
+ DataSources rx tx
+ DSName rx RX
+ DSName tx TX
+ RRDTitle "Interface Errors ({type_instance})"
+ RRDVerticalLabel "Errors per second"
+# RRDOptions ...
+ RRDFormat "%.3lf"
+</Type>
+<Type if_rx_errors>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "Interface receive errors ({plugin_instance})"
+ RRDVerticalLabel "Erorrs/s"
+ RRDFormat "%.1lf"
+ Color length f00000
+ Color over 00e0ff
+ Color crc 00e000
+ Color frame ffb000
+ Color fifo f000c0
+ Color missed 0000f0
+</Type>
+<Type if_tx_errors>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "Interface transmit errors ({plugin_instance})"
+ RRDVerticalLabel "Erorrs/s"
+ RRDFormat "%.1lf"
+ Color aborted f00000
+ Color carrier 00e0ff
+ Color fifo 00e000
+ Color heartbeat ffb000
+ Color window f000c0
+</Type>
+<Type if_octets>
+ Module GenericIO
+ DataSources rx tx
+ DSName rx RX
+ DSName tx TX
+ RRDTitle "Interface Traffic ({instance})"
+ RRDVerticalLabel "Bits per second"
+# RRDOptions ...
+ RRDFormat "%5.1lf%s"
+ Scale 8
+</Type>
+<Type if_packets>
+ Module GenericIO
+ DataSources rx tx
+ DSName rx RX
+ DSName tx TX
+ RRDTitle "Interface Packets ({type_instance})"
+ RRDVerticalLabel "Packets per second"
+# RRDOptions ...
+ RRDFormat "%5.1lf%s"
+</Type>
+<Type invocations>
+ DataSources value
+ DSName "value Invocations/s"
+ RRDTitle "Invocations ({instance})"
+ RRDVerticalLabel "Invocations/s"
+ RRDFormat "%5.1lf"
+</Type>
+<Type io_octets>
+ Module GenericIO
+ DataSources rx tx
+ DSName "rx Read "
+ DSName "tx Written"
+ RRDTitle "IO Traffic ({instance})"
+ RRDVerticalLabel "Bytes per second"
+# RRDOptions ...
+ RRDFormat "%5.1lf%s"
+</Type>
+<Type ipt_bytes>
+ DataSources value
+ DSName value Bytes/s
+ RRDTitle "Traffic ({type_instance})"
+ RRDVerticalLabel "Bytes per second"
+# RRDOptions ...
+ RRDFormat "%5.1lf%s"
+</Type>
+<Type ipt_packets>
+ DataSources value
+ DSName value Packets/s
+ RRDTitle "Packets ({type_instance})"
+ RRDVerticalLabel "Packets per second"
+# RRDOptions ...
+ RRDFormat "%5.1lf"
+</Type>
+<Type irq>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "Interrupts on {hostname}"
+ RRDVerticalLabel "IRQs/s"
+ RRDFormat "%5.1lf"
+</Type>
+<Type load>
+ Module Load
+</Type>
+<Type java_memory>
+ Module JavaMemory
+ DataSources value
+</Type>
+<Type memory>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "Physical memory utilization on {hostname}"
+ RRDVerticalLabel "Bytes"
+ RRDFormat "%5.1lf%s"
+ RRDOptions -b 1024 -l 0
+ DSName "free Free "
+ DSName "cached Cached "
+ DSName "buffered Buffered"
+ DSName "locked Locked "
+ DSName "used Used "
+ DSName "available Available "
+ DSName "system_cache System Cache "
+ DSName "pool_paged Paged Pool "
+ DSName "pool_nonpaged Nonpaged Pool"
+ DSName "working_set Working Set "
+ DSName "system_code System Code "
+ DSName "system_driver System Driver"
+ #Order used buffered cached free
+ Order free cached buffered used available system_cache system_driver system_code pool_paged pool_nonpaged working_set
+ Color free 00e000
+ Color cached 0000ff
+ Color buffered ffb000
+ Color locked ff00ff
+ Color used ff0000
+ Color available 00e000
+ Color system_cache 0000ff
+ Color system_driver ff00ff
+ Color system_code a000a0
+ Color pool_paged ffb000
+ Color pool_nonpaged ff8000
+ Color working_set ff0000
+</Type>
+<Type mysql_commands>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "MySQL commands ({plugin_instance})"
+ RRDVerticalLabel "Invocations"
+ RRDFormat "%6.2lf"
+
+
+ DSName admin_commands admin_commands
+ DSName alter_table alter_table
+ DSName begin begin
+ DSName change_db change_db
+ DSName check check
+ DSName commit commit
+ DSName create_db create_db
+ DSName create_table create_table
+ DSName delete delete
+ DSName drop_db drop_db
+ DSName drop_table drop_table
+ DSName flush flush
+ DSName grant grant
+ DSName insert insert
+ DSName insert_select insert_select
+ DSName lock_tables lock_tables
+ DSName optimize optimize
+ DSName rename_table rename_table
+ DSName replace replace
+ DSName revoke revoke
+ DSName select select
+ DSName set_option set_option
+ DSName show_create_table show_create_table
+ DSName show_databases show_databases
+ DSName show_fields show_fields
+ DSName show_keys show_keys
+ DSName show_master_status show_master_status
+ DSName show_processlist show_processlist
+ DSName show_slave_hosts show_slave_hosts
+ DSName show_status show_status
+ DSName show_tables show_tables
+ DSName show_triggers show_triggers
+ DSName show_variables show_variables
+ DSName unlock_tables unlock_tables
+ DSName update update
+ DSName update_multi update_multi
+
+ Order admin_commands alter_table begin change_db check commit create_db create_table delete drop_db drop_table flush grant insert insert_select lock_tables optimize rename_table replace revoke select set_option show_create_table show_databases show_fields show_keys show_master_status show_processlist show_slave_hosts show_status show_tables show_triggers show_variables unlock_tables update update_multi
+
+ Color admin_commands ff0000
+ Color alter_table ff002a
+ Color begin ff0055
+ Color change_db ff007f
+ Color check ff00aa
+ Color commit ff00d4
+ Color create_db ff00ff
+ Color create_table d400ff
+ Color delete aa00ff
+ Color drop_db 7f00ff
+ Color drop_table 5400ff
+ Color flush 2a00ff
+ Color grant 0000ff
+ Color insert 002aff
+ Color insert_select 0055ff
+ Color lock_tables 007fff
+ Color optimize 00a9ff
+ Color rename_table 00d4ff
+ Color replace 00ffff
+ Color revoke 00ffd4
+ Color select 00ffa9
+ Color set_option 00ff7f
+ Color show_create_table 00ff55
+ Color show_databases 00ff2a
+ Color show_fields 00ff00
+ Color show_keys 2aff00
+ Color show_master_status 54ff00
+ Color show_processlist 7fff00
+ Color show_slave_hosts aaff00
+ Color show_status d4ff00
+ Color show_tables ffff00
+ Color show_triggers ffd400
+ Color show_variables ffaa00
+ Color unlock_tables ff7f00
+ Color update ff5400
+ Color update_multi ff2a00
+</Type>
+<Type mysql_handler>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "MySQL handler ({plugin_instance})"
+ RRDVerticalLabel "Invocations"
+ RRDFormat "%6.2lf"
+ DSName commit commit
+ DSName delete delete
+ DSName read_first read_first
+ DSName read_key read_key
+ DSName read_next read_next
+ DSName read_prev read_prev
+ DSName read_rnd read_rnd
+ DSName read_rnd_next read_rnd_next
+ DSName update update
+ DSName write write
+ Order commit delete read_first read_key read_next read_prev read_rnd read_rnd_next update write
+ Color commit ff0000
+ Color delete ff0099
+ Color read_first cc00ff
+ Color read_key 3200ff
+ Color read_next 0065ff
+ Color read_prev 00ffff
+ Color read_rnd 00ff65
+ Color read_rnd_next 33ff00
+ Color update cbff00
+ Color write ff9800
+</Type>
+<Type mysql_octets>
+ Module GenericIO
+ DataSources rx tx
+ DSName rx RX
+ DSName tx TX
+ RRDTitle "MySQL Traffic ({plugin_instance})"
+ RRDVerticalLabel "Bits per second"
+ RRDFormat "%5.1lf%s"
+ Scale 8
+</Type>
+<Type percent>
+ DataSources value
+ DSName value Percent
+ RRDTitle "Percent ({type_instance})"
+ RRDVerticalLabel "Percent"
+ RRDFormat "%4.1lf%%"
+ Color value 0000ff
+</Type>
+<Type ping>
+ DataSources value
+ DSName "value Latency"
+ RRDTitle "Network latency ({type_instance})"
+ RRDVerticalLabel "Milliseconds"
+ RRDFormat "%5.2lfms"
+</Type>
+<Type power>
+ DataSources value
+ DSName value Watts
+ RRDTitle "Power ({type_instance})"
+ RRDVerticalLabel "Watts"
+ RRDFormat "%6.2lf%sW"
+ Color value 008080
+</Type>
+<Type ps_cputime>
+ Module PsCputime
+</Type>
+<Type ps_disk_octets>
+ Module GenericIO
+ DataSources read write
+ DSName "read Read "
+ DSName write Written
+ RRDTitle "Process disk traffic ({instance})"
+ RRDVerticalLabel "Bytes per second"
+# RRDOptions ...
+ RRDFormat "%5.1lf%s"
+</Type>
+<Type ps_rss>
+ DataSources value
+ DSName value RSS
+ RRDTitle "Resident Segment Size ({instance})"
+ RRDVerticalLabel "Bytes"
+ RRDFormat "%6.2lf%s"
+</Type>
+<Type ps_state>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "Processes on {hostname}"
+ RRDVerticalLabel "Processes"
+ RRDFormat "%5.1lf"
+ DSName running Running
+ DSName sleeping Sleeping
+ DSName paging Paging
+ DSName zombies Zombies
+ DSName blocked Blocked
+ DSName stopped Stopped
+ Order paging blocked zombies stopped running sleeping
+ Color running 00e000
+ Color sleeping 0000ff
+ Color paging ffb000
+ Color zombies ff0000
+ Color blocked ff00ff
+ Color stopped a000a0
+</Type>
+<Type signal_power>
+ DataSources value
+ RRDTitle "Signal power ({instance})"
+ RRDVerticalLabel "dB"
+ RRDFormat "%5.1lf"
+ DSName "value Signal power"
+</Type>
+<Type signal_quality>
+ DataSources value
+ RRDTitle "Signal quality ({instance})"
+ RRDVerticalLabel "Percent"
+ RRDFormat "%5.1lf%%"
+ DSName "value Signal quality"
+</Type>
+<Type snr>
+ DataSources value
+ RRDTitle "Signal / noise ratio ({instance})"
+ RRDVerticalLabel "dBm"
+ RRDFormat "%5.1lf"
+ DSName "value S/N"
+</Type>
+<Type swap>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "Swap utilization on {hostname}"
+ RRDVerticalLabel "Bytes"
+ RRDFormat "%5.1lf%s"
+ RRDOptions -b 1024 -l 0
+ DSName "free Free "
+ DSName "cached Cached "
+ DSName "used Used "
+ #Order used cached free
+ Order free cached used
+ Color free 00e000
+ Color cached 0000ff
+ Color used ff0000
+</Type>
+<Type table_size>
+ Module TableSize
+ DataSources value
+ DSName value Bytes
+ RRDTitle "Table size ({instance})"
+ RRDVerticalLabel "Size [Bytes]"
+# RRDOptions ...
+ RRDFormat "%5.1lf%s"
+</Type>
+<Type tcp_connections>
+ Module GenericStacked
+ DataSources value
+ RRDTitle "TCP connections ({plugin_instance})"
+ RRDVerticalLabel "Connections"
+ RRDFormat "%5.1lf"
+ Order LISTEN CLOSING LAST_ACK CLOSE_WAIT CLOSE TIME_WAIT FIN_WAIT2 FIN_WAIT1 SYN_RECV SYN_SENT ESTABLISHED CLOSED
+ Color ESTABLISHED 00e000
+ Color SYN_SENT 00e0ff
+ Color SYN_RECV 00e0a0
+ Color FIN_WAIT1 f000f0
+ Color FIN_WAIT2 f000a0
+ Color TIME_WAIT ffb000
+ Color CLOSE 0000f0
+ Color CLOSE_WAIT 0000a0
+ Color LAST_ACK 000080
+ Color LISTEN ff0000
+ Color CLOSING 000000
+ Color CLOSED 0000f0
+</Type>
+<Type temperature>
+ DataSources value
+ DSName value Temp
+ RRDTitle "Temperature ({instance})"
+ RRDVerticalLabel "°Celsius"
+ RRDFormat "%4.1lf°C"
+</Type>
+<Type threads>
+ DataSources value
+ DSName "value Threads"
+ RRDTitle "Threads ({instance})"
+ RRDVerticalLabel "Threads"
+ RRDFormat "%5.2lf"
+</Type>
+<Type total_requests>
+ DataSources value
+ DSName "value Requests/s"
+ RRDTitle "Requests ({instance})"
+ RRDVerticalLabel "Requests/s"
+ RRDFormat "%6.2lf"
+</Type>
+<Type total_time_in_ms>
+ DataSources value
+ DSName "value Time"
+ RRDTitle "Time {instance}"
+ RRDVerticalLabel "Seconds"
+ RRDFormat "%6.2lf %ss"
+ Scale 0.001
+</Type>
+<Type users>
+ DataSources value
+ DSName value Users
+ RRDTitle "Users ({type_instance}) on {hostname}"
+ RRDVerticalLabel "Users"
+ RRDFormat "%.1lf"
+ Color value 0000f0
+</Type>
+<Type voltage>
+ DataSources value
+ DSName value Volts
+ RRDTitle "Voltage ({type_instance})"
+ RRDVerticalLabel "Volts"
+ RRDFormat "%4.1lfV"
+ Color value f00000
+</Type>
+<Type wirkleistung>
+ Module Wirkleistung
+ DataSources kWh
+ DSName value Wh
+ RRDTitle "Watt"
+ RRDVerticalLabel "W"
+ RRDFormat "%4.1lfW"
+</Type>
+
+
+#
+# RabbitMQ
+#
+
+<Type ack>
+ RRDTitle "Total ack for {instance}"
+</Type>
+<Type ack_details>
+ RRDTitle "ack rate for {plugin_instance}: {type_instance}"
+ RRDVerticalLabel "/s"
+</Type>
+
+<Type confirm>
+ RRDTitle "Total confirm for {instance}"
+</Type>
+
+<Type consumers>
+ RRDTitle "Total consumers for {instance}"
+</Type>
+<Type consumer_utilisation>
+ RRDTitle "Consumer utilisation for {instance}"
+</Type>
+
+<Type deliver>
+ RRDTitle "Total deliver for {instance}"
+</Type>
+<Type deliver_details>
+ RRDTitle "deliver rate for {plugin_instance}: {type_instance}"
+</Type>
+<Type deliver_get>
+ RRDTitle "Total deliver-get for {instance}"
+</Type>
+<Type deliver_get_details>
+ RRDTitle "deliver-get rate for {plugin_instance}: {type_instance}"
+</Type>
+<Type deliver_noack>
+ RRDTitle "Total deliver-noack for {instance}"
+</Type>
+
+<Type get>
+ RRDTitle "Total get for {instance}"
+</Type>
+<Type get_details>
+ RRDTitle "get rate for {plugin_instance}: {type_instance}"
+</Type>
+<Type get_noack>
+ RRDTitle "Total get-noack for {instance}"
+</Type>
+
+<Type messages>
+ RRDTitle "Total messages in {instance}"
+</Type>
+<Type messages_ready>
+ RRDTitle "Total ready messages in {instance}"
+</Type>
+<Type messages_unacknowledged>
+ RRDTitle "Total unacknowledged messages in {instance}"
+</Type>
+
+<Type publish>
+ RRDTitle "Total publish for {instance}"
+</Type>
+<Type publish_details>
+ RRDTitle "publish rate for {plugin_instance}: {type_instance}"
+</Type>
+<Type publish_in>
+ RRDTitle "Total publish in {instance}"
+</Type>
+<Type publish_in_details>
+ RRDTitle "publish-in rate for {plugin_instance}: {type_instance}"
+</Type>
+<Type publish_out>
+ RRDTitle "Total publish out of {instance}"
+</Type>
+<Type publish_out_details>
+ RRDTitle "publish-out rate for {plugin_instance}: {type_instance}"
+</Type>
+
+<Type redeliver>
+ RRDTitle "Total redeliver for {instance}"
+</Type>
+<Type redeliver_details>
+ RRDTitle "redeliver rate for {plugin_instance}: {type_instance}"
+</Type>
+
+<Type return>
+ RRDTitle "Total return for {instance}"
+</Type>
+
+<Type rabbitmq_details>
+ RRDTitle "{instance}"
+</Type>
+<Type rabbitmq_exchanges>
+ RRDTitle "Total number of exchanges"
+</Type>
+<Type rabbitmq_consumers>
+ RRDTitle "Total number of consumers"
+</Type>
+<Type rabbitmq_queues>
+ RRDTitle "Total number of queues"
+</Type>
+<Type rabbitmq_connections>
+ RRDTitle "Total number of connections"
+</Type>
+<Type rabbitmq_channels>
+ RRDTitle "Total number of channels"
+</Type>
+<Type rabbitmq_messages>
+ RRDTitle "Queue totals: messages"
+</Type>
+<Type rabbitmq_messages_ready>
+ RRDTitle "Queue totals: messages ready"
+</Type>
+<Type rabbitmq_messages_unacknowledged>
+ RRDTitle "Queue totals: messages unacknowledged"
+</Type>
+
+# Server
+
+<Type disk_free>
+ RRDTitle "Free disk space on {plugin}"
+</Type>
+<Type disk_free_limit>
+ RRDTitle "Disk free limit on {plugin}"
+</Type>
+<Type disk_free_details>
+ RRDTitle "Disk free details for {plugin}: {type_instance}"
+</Type>
+
+<Type fd_total>
+ RRDTitle "Total FD for {plugin}"
+</Type>
+<Type fd_used>
+ RRDTitle "FD used for {plugin}"
+</Type>
+<Type fd_used_details>
+ RRDTitle "FD used details for {plugin}: {type_instance}"
+</Type>
+
+<Type mem_limit>
+ RRDTitle "Memory limit for {plugin}"
+</Type>
+<Type mem_used>
+ RRDTitle "Memory used on {plugin}"
+</Type>
+<Type mem_used_details>
+ RRDTitle "Memory used details for {plugin}: {type_instance}"
+</Type>
+
+<Type proc_total>
+ RRDTitle "Max Erlang processes for {plugin}"
+</Type>
+<Type proc_used>
+ RRDTitle "Erlang processes used on {plugin}"
+</Type>
+<Type proc_used_details>
+ RRDTitle "Erlang processes details for {plugin}: {type_instance}"
+</Type>
+<Type run_queue>
+ RRDTitle "Run queue size on {plugin}"
+</Type>
+<Type processors>
+ RRDTitle "Total processor on {plugin}"
+</Type>
+
+<Type sockets_total>
+ RRDTitle "Max sockets for {plugin}"
+</Type>
+<Type sockets_used>
+ RRDTitle "Sockets used on {plugin}"
+</Type>
+<Type sockets_used_details>
+ RRDTitle "Sockets details for {plugin}: {type_instance}"
+</Type>
+
+
+# vim: set sw=2 sts=2 et syntax=apache fileencoding=utf-8 :
diff --git a/roles/collectd/server/tasks/main.yml b/roles/collectd/server/tasks/main.yml
index 1cebff2..4edb4f0 100644
--- a/roles/collectd/server/tasks/main.yml
+++ b/roles/collectd/server/tasks/main.yml
@@ -8,6 +8,9 @@
- collectd-rrdtool
- collectd-ping
- collectd-web
+ - collectd-rabbitmq-data
+ notify:
+ - restart collectd
tags:
- config
- collectd/server
@@ -57,3 +60,12 @@
tags:
- config
- collectd/server
+
+# push our custom config file for the graph CGIs
+- name: push the collection.conf file
+ copy:
+ src: collection.conf
+ dest: /etc/collection.conf
+ tags:
+ - config
+ - collectd/server
5 years
[ansible] Add dns_check.py
by Nicolas Chauvet
commit b688e82e060572f6caac311f7e6143da43fa9d9d
Author: kwizart <kwizart(a)gmail.com>
Date: Wed Dec 18 15:27:49 2019 +0100
Add dns_check.py
roles/ansible-server/files/dns_check.py | 104 +++++++++++++++++++++++++++++++
1 files changed, 104 insertions(+), 0 deletions(-)
---
diff --git a/roles/ansible-server/files/dns_check.py b/roles/ansible-server/files/dns_check.py
new file mode 100644
index 0000000..70ed01c
--- /dev/null
+++ b/roles/ansible-server/files/dns_check.py
@@ -0,0 +1,104 @@
+#! /usr/bin/env python
+import os
+import re
+import collections
+
+# constants
+PING_HOST_RESPONSE = 0
+PING_COMMAND = "ping -c 1 -W 1 {0} > /dev/null 2>&1"
+ZONE_REGEX = "(\S+)\s+IN\s+([A-Z]+)\s+(\S+)"
+DNS_REGEX = "([a-z0-9._-]+)$"
+
+ZONE_FILENAMES = [
+ "master/168.192.in-addr.arpa",
+ "master/127.5.10.in-addr.arpa",
+ "master/rpmfusion.org"
+ "master/rpmfusion.net"
+]
+
+AddressRecord = collections.namedtuple('AddressRecord', 'host, type, value')
+
+def get_host_dict(fp, prefix):
+ hosts = dict()
+
+ # get the hostnames from the file
+ pattern = re.compile(ZONE_REGEX)
+ for line in fp:
+ m = pattern.match(line)
+ if m:
+ full_host = prefix.format(m.group(1))
+ if full_host[0] <> ';':
+ hosts[full_host] = AddressRecord._make( [full_host, m.group(2), m.group(3)] )
+ return hosts
+
+def check_zones_match(fwd_hosts, rev_hosts):
+ results = {}
+ results["correct"] = []
+ results["mismatch"] = []
+ results["missing"] = []
+
+ for record in fwd_hosts.values():
+ if record.type is 'A':
+ try:
+ rev_record = rev_hosts[record.value]
+ if record.host == rev_record.value:
+ results["correct"].append( (record, rev_record) )
+ else:
+ results["mismatch"].append( (record, rev_record) )
+ except KeyError:
+ results["missing"].append( (record, None) )
+ return results
+
+# ping each host and record the result
+def ping(hosts):
+ results = {}
+ for record in hosts.values():
+ results[record] = os.system(PING_COMMAND.format(record.host) )
+ return results
+
+def build_dns_suffix(filename, reverse=False):
+ m = re.search(DNS_REGEX, filename)
+ if m:
+ suffix = m.group(1)
+ if reverse:
+ parts = suffix.split(".")
+ return parts[2]+"."+parts[1]+"."+parts[0]+".{0}"
+ else:
+ return "{0}."+m.group(1)+"."
+
+def main(filenames, check_dns=True, ping_hosts=True, print_stats=False):
+ rev_hosts = {}
+ fwd_hosts = {}
+
+ for filename in filenames:
+ is_reverse = filename.endswith(".in-addr.arpa")
+ suffix = build_dns_suffix(filename, is_reverse)
+ host_dict = get_host_dict(open(filename, "r"), suffix)
+
+ type_dict = rev_hosts if is_reverse else fwd_hosts
+ type_dict.update(host_dict)
+
+ if check_dns:
+ check_results = check_zones_match(fwd_hosts, rev_hosts)
+
+ if print_stats:
+ print("reverse dns records")
+ print("records correct: {0}".format(len(check_results["correct"])))
+ print("records incorrect: {0}".format(len(check_results["mismatch"])))
+ print("records missing: {0}".format(len(check_results["missing"])))
+
+ for (fwd, rev) in check_results["mismatch"]:
+ print ("mismatched record: {0} -> {1} -> {2}".format(fwd.host, fwd.value, rev.value))
+
+ for (fwd, rev) in check_results["missing"]:
+ print ("missing record: {0} -> {1}").format(fwd.host, fwd.value)
+
+ if ping_hosts:
+ results = ping(fwd_hosts)
+
+ # print all the non-zero (error) results
+ for (host, result) in results.items():
+ if result is not 0:
+ print ("ping failed: {0} (err {1})").format(host.host[:-1], result)
+
+main(ZONE_FILENAMES)
5 years
[ansible] sync base
by Nicolas Chauvet
commit 969e1e0cccb4e05b0f6f7f4bbab38fb6bfc19594
Author: kwizart <kwizart(a)gmail.com>
Date: Wed Dec 18 15:27:13 2019 +0100
sync base
.../files/common-scripts/fix-ifcfg-mac-address.sh | 15 +++++
roles/base/files/common-scripts/nag-once | 15 +++--
roles/base/tasks/keytab.yml | 16 +++++
roles/base/tasks/main.yml | 65 ++++++++++++++++----
roles/base/tasks/postfix.yml | 8 ++-
5 files changed, 97 insertions(+), 22 deletions(-)
---
diff --git a/roles/base/files/common-scripts/fix-ifcfg-mac-address.sh b/roles/base/files/common-scripts/fix-ifcfg-mac-address.sh
new file mode 100644
index 0000000..8dd5fd5
--- /dev/null
+++ b/roles/base/files/common-scripts/fix-ifcfg-mac-address.sh
@@ -0,0 +1,15 @@
+#!/usr/bin/env bash
+for iface in `ls /etc/sysconfig/network-scripts/ifcfg-* | sed 's/.*\-//g'`; do
+ # Ignore local interface
+ [[ "$iface" == "lo" ]] && continue
+
+ correct_mac="$(ip a show dev $iface | grep 'link/ether' | awk '{print $2}')"
+ current_mac="$(grep HWADDR /etc/sysconfig/network-scripts/ifcfg-$iface | cut -d= -f2 | sed 's/"//g')"
+
+ [[ "$correct_mac" == "$current_mac" ]] && continue
+
+ sed -i "s/$current_mac/$correct_mac/" /etc/sysconfig/network-scripts/ifcfg-$iface
+done
+
+service network restart
+service NetworkManager restart
diff --git a/roles/base/files/common-scripts/nag-once b/roles/base/files/common-scripts/nag-once
index 992023c..aef5999 100755
--- a/roles/base/files/common-scripts/nag-once
+++ b/roles/base/files/common-scripts/nag-once
@@ -7,6 +7,7 @@
# copyright (c) 2011 Red Hat, inc
# gpl v2 blah blah
# skvidal - skvidal(a)fedoraproject.org
+from __future__ import print_function
import tempfile
import sys
@@ -86,23 +87,23 @@ def main():
if theinput != old_output or (tti and now - old_date > tti):
if theinput.strip(): # if there is nothing here, don't output and don't drop a \n on the end of it
- print theinput,
+ print(theinput,)
fo = open(mydir + '/output', 'w')
fo.write(theinput)
fo.flush()
fo.close()
- except Exception, e:
- print >> sys.stderr, e
- print >> sys.stderr, theinput
+ except Exception as e:
+ print(e, file=sys.stderr)
+ print(theinput, file=sys.stderr)
if __name__ == '__main__':
try:
main()
- except Exception, e:
- print >> sys.stderr, e
+ except Exception as e:
+ print(e, file=sys.stderr)
if not sys.stdin.isatty():
- print >> sys.stderr, sys.stdin.read()
+ print(sys.stdin.read(), file=sys.stderr)
diff --git a/roles/base/tasks/keytab.yml b/roles/base/tasks/keytab.yml
index a6f43cc..5d3ac00 100644
--- a/roles/base/tasks/keytab.yml
+++ b/roles/base/tasks/keytab.yml
@@ -9,6 +9,8 @@
- krb5
- name: Get admin keytab
+ vars:
+ ansible_python_interpreter: /usr/bin/python2
delegate_to: "{{ ipa_server }}"
shell: echo "{{ipa_admin_password}}" | kinit admin
tags:
@@ -18,6 +20,8 @@
when: not host_keytab_status.stat.exists
- name: Create host entry
+ vars:
+ ansible_python_interpreter: /usr/bin/python2
delegate_to: "{{ ipa_server }}"
command: ipa host-add {{inventory_hostname}}
register: host_add_result
@@ -30,6 +34,8 @@
when: not host_keytab_status.stat.exists
- name: Create additional host entries
+ vars:
+ ansible_python_interpreter: /usr/bin/python2
delegate_to: "{{ ipa_server }}"
command: ipa host-add {{item}}
with_items: "{{ additional_host_keytabs }}"
@@ -43,6 +49,8 @@
when: not host_keytab_status.stat.exists
- name: Generate host keytab
+ vars:
+ ansible_python_interpreter: /usr/bin/python2
delegate_to: "{{ ipa_server }}"
command: ipa-getkeytab -s {{ipa_server}} -p host/{{inventory_hostname}} -k /tmp/{{inventory_hostname}}.kt
register: getkeytab_result
@@ -55,6 +63,8 @@
when: not host_keytab_status.stat.exists
- name: Add additional host keytabs
+ vars:
+ ansible_python_interpreter: /usr/bin/python2
delegate_to: "{{ ipa_server }}"
command: ipa-getkeytab -s {{ipa_server}} -p host/{{item}} -k /tmp/{{inventory_hostname}}.kt
with_items: "{{ additional_host_keytabs }}"
@@ -68,6 +78,8 @@
when: not host_keytab_status.stat.exists
- name: Destroy kerberos ticket
+ vars:
+ ansible_python_interpreter: /usr/bin/python2
delegate_to: "{{ ipa_server }}"
command: kdestroy -A
tags:
@@ -77,6 +89,8 @@
when: not host_keytab_status.stat.exists
- name: Get keytab
+ vars:
+ ansible_python_interpreter: /usr/bin/python2
delegate_to: "{{ ipa_server }}"
command: base64 /tmp/{{inventory_hostname}}.kt
register: keytab
@@ -87,6 +101,8 @@
when: not host_keytab_status.stat.exists
- name: Destroy stored keytab
+ vars:
+ ansible_python_interpreter: /usr/bin/python2
delegate_to: "{{ ipa_server }}"
file: path=/tmp/{{inventory_hostname}}.kt state=absent
tags:
diff --git a/roles/base/tasks/main.yml b/roles/base/tasks/main.yml
index 05531b6..89334d0 100644
--- a/roles/base/tasks/main.yml
+++ b/roles/base/tasks/main.yml
@@ -5,7 +5,7 @@
# Things in here are things we want to do to every machine no matter what.
#
-- name: ensure packages required for semanage are installed (yum)
+- name: ensure packages required for semanage are installed (rhel 6 and 7)
package: name={{ item }} state=present
with_items:
- policycoreutils-python
@@ -13,7 +13,7 @@
- selinux
when: ansible_distribution_major_version|int < 8
-- name: ensure packages required for semanage are installed (dnf)
+- name: ensure packages required for semanage are installed (fedora/rhel8)
package: name=policycoreutils-python-utils state=present
when: ansible_distribution_major_version|int > 27 and ansible_cmdline.ostree is not defined
tags:
@@ -52,7 +52,18 @@
ini_file: dest=/etc/NetworkManager/NetworkManager.conf section=main option=dns value=none
notify:
- restart NetworkManager
- when: ansible_distribution_major_version|int >=7 and nmclitest is success and ( not ansible_ifcfg_blacklist) and not nm_controlled_resolv
+ when: ansible_distribution_major_version|int >=7 and ansible_distribution == 'RedHat' and nmclitest is success and ( not ansible_ifcfg_blacklist) and not nm_controlled_resolv
+ tags:
+ - config
+ - resolvconf
+ - base
+ - ifcfg
+
+- name: disable resolv.conf control from NM
+ ini_file: dest=/etc/NetworkManager/NetworkManager.conf section=main option=dns value=none
+ notify:
+ - restart NetworkManager
+ when: ansible_distribution_major_version|int >=29 and ansible_distribution == 'Fedora' and nmclitest is success and ( not ansible_ifcfg_blacklist) and not nm_controlled_resolv
tags:
- config
- resolvconf
@@ -79,7 +90,15 @@
# - restart NetworkManager
- reload NetworkManager-connections
- apply interface-changes
- when: (virthost is not defined) and (item.startswith(('eth','br','enc','em'))) and (hostvars[inventory_hostname]['ansible_' + item.replace('-','_')]['type'] == 'ether') and (ansible_distribution_major_version|int >=7) and hostvars[inventory_hostname]['ansible_' + item.replace('-','_')]['active'] and nmclitest is success and ( not ansible_ifcfg_blacklist ) and ( ansible_ifcfg_whitelist is not defined or item in ansible_ifcfg_whitelist )
+ when:
+ - virthost is not defined
+ - item.startswith(('eth','br','enc','em'))
+ - hostvars[inventory_hostname]['ansible_' + item.replace('-','_')]['type'] == 'ether'
+ - hostvars[inventory_hostname]['ansible_' + item.replace('-','_')]['active']
+ - ansible_distribution_major_version|int >=7
+ - nmclitest is success
+ - not ansible_ifcfg_blacklist
+ - ansible_ifcfg_whitelist is not defined or item in ansible_ifcfg_whitelist
tags:
- config
- ifcfg
@@ -92,7 +111,7 @@
tags:
- packages
- base
- when: ansible_distribution_major_version|int < 22 and ansible_distribution_major_version|int != 8
+ when: ansible_distribution_major_version|int < 8
- name: global default packages to install (dnf)
dnf:
@@ -140,7 +159,7 @@
tags:
- packages
- base
- when: ansible_distribution_major_version|int < 22
+ when: ansible_distribution_major_version|int < 8
- name: dist pkgs to install (yum)
package:
@@ -149,16 +168,14 @@
tags:
- packages
- base
- when: ansible_distribution_major_version|int < 22
+ when: ansible_distribution_major_version|int < 8
- name: dist pkgs to remove (dnf)
- dnf:
- state: absent
- name: "{{ base_pkgs_erase }}"
+ dnf: state=absent name="{{ base_pkgs_erase }}"
tags:
- packages
- base
- when: ansible_distribution_major_version|int > 21 and ansible_cmdline.ostree is not defined
+ when: ansible_distribution_major_version|int > 7 and ansible_cmdline.ostree is not defined
- name: dist pkgs to install (dnf)
dnf:
@@ -343,7 +360,7 @@
- name: install our custom selinux module
command: semodule -i /usr/local/share/rsyslog/rsyslog-audit.pp
- when: selinux_module is changed
+ when: selinux_module is changed and ansible_distribution_major_version|int < 31
tags:
- rsyslogd
- config
@@ -463,3 +480,27 @@
- name: Setup host keytab
import_tasks: keytab.yml
when: env == 'DISABLED'
+
+# SSSD-KCM has been showing way too many bugs with it saying "I have a ticket" while the ticket
+# is actually expired, and kinit's still not refreshing them and such alike.
+# Let's just nuke it for now.
+- name: We do NOT use sssd-kcm
+ file: path=/etc/krb5.conf.d/kcm_default_ccache state=absent
+ tags:
+ - base
+ - config
+ - krb5
+
+# rhel8 hosts do not have /usr/bin/python, but there are a few things we call
+# with that because they also run the same on python2 hosts.
+# So, we set python3 to /usr/bin/python on those hosts:
+- name: set /usr/bin/python to python3 on rhel8 hosts
+ alternatives:
+ name: python
+ link: /usr/bin/python
+ path: /usr/bin/python3
+ when: ansible_distribution == 'RedHat' and ansible_distribution_major_version|int == 8
+ tags:
+ - base
+ - config
+ - python3alternative
diff --git a/roles/base/tasks/postfix.yml b/roles/base/tasks/postfix.yml
index a1bb2da..ac40534 100644
--- a/roles/base/tasks/postfix.yml
+++ b/roles/base/tasks/postfix.yml
@@ -31,8 +31,10 @@
- base
- name: Deploy sender_access file
- copy: src="{{private}}/files/smtpd/sender_access" dest="/etc/postfix/sender_access"
- when: postfix_group == "smtp-mm"
+ copy: src="{{private}}/files/smtpd/sender_access.{{postfix_group}}" dest="/etc/postfix/sender_access"
+ when: postfix_group == "smtp-mm" or postfix_group == "mailman" or postfix_group == "gateway"
+ notify:
+ - restart postfix
tags:
- postfix
- config
@@ -89,7 +91,7 @@
- name: Copy gateway.key
copy:
src="{{private}}/files/smtpd/gateway.key"
- dest=/etc/pki/tls/private/
+ dest=/etc/pki/tls/private/gateway.key
owner=root
group=postfix
mode=0640
5 years
[ansible] Update openvpn
by Nicolas Chauvet
commit af8dfa09d8f9a4b0b11b3c026767d668db725d6e
Author: kwizart <kwizart(a)gmail.com>
Date: Sun Dec 8 23:55:58 2019 +0100
Update openvpn
roles/openvpn/base/tasks/main.yml | 14 ++++++++------
roles/openvpn/client/meta/main.yml | 2 +-
roles/openvpn/client/tasks/main.yml | 14 ++++++++------
3 files changed, 17 insertions(+), 13 deletions(-)
---
diff --git a/roles/openvpn/base/tasks/main.yml b/roles/openvpn/base/tasks/main.yml
index 809d98a..9dc2085 100644
--- a/roles/openvpn/base/tasks/main.yml
+++ b/roles/openvpn/base/tasks/main.yml
@@ -2,18 +2,20 @@
# OpenVpn basic configuration
- name: Install needed package
- package: name={{ item }} state=present
- with_items:
- - openvpn
+ package:
+ state: present
+ name:
+ - openvpn
tags:
- openvpn
- packages
when: ansible_distribution_major_version|int < 8
- name: Install needed package (dnf)
- dnf: pkg={{ item }} state=present
- with_items:
- - openvpn
+ package:
+ state: present
+ name:
+ - openvpn
tags:
- openvpn
- packages
diff --git a/roles/openvpn/client/meta/main.yml b/roles/openvpn/client/meta/main.yml
index 585d401..c7caa2e 100644
--- a/roles/openvpn/client/meta/main.yml
+++ b/roles/openvpn/client/meta/main.yml
@@ -1,3 +1,3 @@
---
dependencies:
- - { role: openvpn/base }
+ - { role: openvpn/base }
diff --git a/roles/openvpn/client/tasks/main.yml b/roles/openvpn/client/tasks/main.yml
index ba2d215..e2bd739 100644
--- a/roles/openvpn/client/tasks/main.yml
+++ b/roles/openvpn/client/tasks/main.yml
@@ -2,18 +2,20 @@
# OpenVpn server
- name: Install needed packages
- package: name={{ item }} state=present
- with_items:
- - openvpn
+ package:
+ state: present
+ name:
+ - openvpn
tags:
- packages
- openvpn
when: ansible_distribution_major_version|int < 8
- name: Install needed packages
- dnf: pkg={{ item }} state=present
- with_items:
- - openvpn
+ package:
+ state: present
+ name:
+ - openvpn
tags:
- packages
- openvpn
5 years
[ansible] Add idmapd.conf
by Nicolas Chauvet
commit ca4b3ef5f4bbbc6114e36c03af826990769d4647
Author: kwizart <kwizart(a)gmail.com>
Date: Sun Dec 8 23:55:40 2019 +0100
Add idmapd.conf
roles/nfs/client/files/idmapd.conf | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/roles/nfs/client/files/idmapd.conf b/roles/nfs/client/files/idmapd.conf
index ef75455..03c39c5 100644
--- a/roles/nfs/client/files/idmapd.conf
+++ b/roles/nfs/client/files/idmapd.conf
@@ -46,7 +46,7 @@ Method = static
# local user name mappings
#someuser@REALM = localuser
-root(a)REDHAT.COM = root
+root(a)RPMFUSION.ORG = root
#-------------------------------------------------------------------#
# The following are used only for the "umich_ldap" Translation Method.
5 years