- mailman
- matomo
- memcached
- - munin
- - munin-plugins
- mysql
- networking
- nginx
- name: memcached
run_list:
- recipe[memcached::default]
- - name: munin
- run_list:
- - recipe[munin::default]
- - name: munin-plugins
- run_list:
- - recipe[munin::plugins]
- name: mysql
run_list:
- recipe[mysql::default]
version "1.0.0"
supports "ubuntu"
depends "fail2ban"
-depends "munin"
depends "prometheus"
depends "ssl"
depends "systemd"
#
include_recipe "fail2ban"
-include_recipe "munin"
include_recipe "prometheus"
include_recipe "ssl"
# DO NOT EDIT - This file is being maintained by Chef
-for prefix in blogs chef-server chef-repository chef-git community forum git lists munin osm-blog osmf-crm osmf-ledgersmb wiki-wiki.osmfoundation.org osqa otrs prometheus sotm svn switch2osm trac wiki-board.osmfoundation.org wiki-dwg.osmfoundation.org wiki-mwg.osmfoundation.org wiki-wiki.openstreetmap.org
+for prefix in blogs chef-server chef-repository chef-git community forum git lists osm-blog osmf-crm osmf-ledgersmb wiki-wiki.osmfoundation.org osqa otrs prometheus sotm svn switch2osm trac wiki-board.osmfoundation.org wiki-dwg.osmfoundation.org wiki-mwg.osmfoundation.org wiki-wiki.openstreetmap.org
do
/usr/local/bin/expire-backups --days=3 --weeks=3 --months=3 /store/backup $prefix
done
depends "apt"
depends "git"
depends "ohai"
-depends "munin"
depends "systemd"
gem "mail", "= 2.7.1"
include_recipe "apache"
include_recipe "chef::knife"
-include_recipe "munin"
# cache_dir = Chef::Config[:file_cache_path]
#
password passwords["backup"]
end
-postgresql_user "munin" do
- cluster node[:db][:cluster]
- action :drop
-end
-
postgresql_user "replication" do
cluster node[:db][:cluster]
password passwords["replication"]
depends "geoipupdate"
depends "git"
depends "memcached"
-depends "munin"
depends "mysql"
depends "nodejs"
depends "php"
include_recipe "geoipupdate"
include_recipe "git"
include_recipe "memcached"
-include_recipe "munin"
include_recipe "mysql"
include_recipe "nodejs"
include_recipe "php::fpm"
supports "ubuntu"
depends "accounts"
depends "apache"
-depends "munin"
depends "networking"
depends "prometheus"
depends "ssl"
# limitations under the License.
#
-include_recipe "munin"
include_recipe "networking"
include_recipe "prometheus"
version "1.0.0"
supports "ubuntu"
-depends "munin"
depends "prometheus"
# limitations under the License.
#
-include_recipe "munin"
include_recipe "prometheus"
package %w[
depends "apt"
depends "chef"
depends "git"
-depends "munin"
depends "prometheus"
depends "ohai"
depends "tools"
include_recipe "apt"
include_recipe "git"
-include_recipe "munin"
include_recipe "prometheus"
include_recipe "sysfs"
include_recipe "tools"
version "1.0.0"
supports "ubuntu"
-depends "munin"
depends "prometheus"
# limitations under the License.
#
-include_recipe "munin"
include_recipe "prometheus"
package "memcached"
+++ /dev/null
-# Munin Cookbook
-
-This cookbook configures munin, which we use for server monitoring at
-[munin.openstreetmap.org](https://munin.openstreetmap.org). The cookbook
-contains two recipes:
-
-* default - installs and configures munin-node on each machine.
-* server - configures the central munin server
-
-Additionally two providers are defined - munin_plugin and munin_plugin_conf, for
-configuring individual munin plugins.
+++ /dev/null
-default[:munin][:allow] = []
-default[:munin][:graphs] = {}
-default[:munin][:plugins] = {}
+++ /dev/null
-class Chef
- class Munin
- def self.expand(template, nodes, separator = " ")
- nodes.map do |node|
- if node.is_a?(Hash)
- template
- .gsub(/%%%([^%]+)%%%/) { node[Regexp.last_match[1].to_sym].tr("-", "_") }
- .gsub(/%%([^%]+)%%/) { node[Regexp.last_match[1].to_sym] }
- else
- template
- .gsub("%%%", node.tr("-", "_"))
- .gsub("%%", node)
- end
- end.join(separator)
- end
- end
-end
+++ /dev/null
-name "munin"
-maintainer "OpenStreetMap Administrators"
-maintainer_email "admins@openstreetmap.org"
-license "Apache-2.0"
-description "Installs and configures munin"
-
-version "1.0.0"
-supports "ubuntu"
-depends "networking"
+++ /dev/null
-#
-# Cookbook:: munin
-# Recipe:: default
-#
-# Copyright:: 2010, OpenStreetMap Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-service "munin-node" do
- action [:stop, :disable]
-end
-
-file "/etc/munin/munin-node.conf" do
- action :delete
-end
-
-package "munin-node" do
- action :purge
-end
-
-directory "/etc/munin" do
- action :delete
- recursive true
-end
+++ /dev/null
-#
-# Cookbook:: munin
-# Recipe:: default
-#
-# Copyright:: 2010, OpenStreetMap Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-include_recipe "munin"
-
-directory "/etc/munin/plugins" do
- action :delete
- recursive true
-end
-
-directory "/usr/local/share/munin/plugins" do
- action :delete
- recursive true
-end
-
-directory "/etc/munin/plugin-conf.d" do
- action :delete
- recursive true
-end
version "1.0.0"
supports "ubuntu"
depends "chef"
-depends "munin"
depends "prometheus"
# limitations under the License.
#
-include_recipe "munin"
include_recipe "prometheus"
mysql_variant = if platform?("ubuntu")
only_if { ::Dir.exist?("/sys/kernel/security/apparmor") }
end
-# FIXME: Remove purge post munin removal
-package "libdbd-mysql-perl" do
- action :purge
-end
-
-package "libcache-cache-perl" do
- action :purge
-end
-
mysql_password = persistent_token("mysql", "prometheus", "password")
mysql_user "prometheus" do
version "1.0.0"
supports "ubuntu"
depends "apt"
-depends "munin"
depends "networking"
depends "prometheus"
depends "ssl"
#
include_recipe "apt::nginx"
-include_recipe "munin"
include_recipe "prometheus"
include_recipe "ssl"
subscribes :restart, "template[/etc/nginx/nginx.conf]"
end
-# FIXME: Remove purge post munin removal
-package "libwww-perl" do
- action :purge
-end
-
prometheus_exporter "nginx" do
port 9113
options "--nginx.scrape-uri=http://localhost:8050/nginx_status"
depends "accounts"
depends "fail2ban"
depends "git"
-depends "munin"
depends "nginx"
depends "php"
depends "postgresql"
#
include_recipe "accounts"
-include_recipe "munin"
include_recipe "prometheus"
if node[:nominatim][:api_flavour] == "php"
version "0.8.2"
supports "ubuntu"
-depends "munin"
depends "prometheus"
depends "systemd"
# See the License for the specific language governing permissions and
# limitations under the License.
-include_recipe "munin"
-
package %w[
chrony
tzdata
supports "ubuntu"
depends "accounts"
depends "apache"
-depends "munin"
depends "prometheus"
depends "ruby"
depends "systemd"
include_recipe "accounts"
include_recipe "apache"
-include_recipe "munin"
include_recipe "prometheus"
include_recipe "ruby"
end
end
-# FIXME: Remove purge post munin removal
-directory "#{basedir}/munin" do
- action :delete
- recursive true
-end
-
## Install overpass from source
srcdir = "#{basedir}/src/osm-3s_v#{node[:overpass][:version]}"
supports "ubuntu"
depends "apache"
depends "apt"
-depends "munin"
depends "prometheus"
depends "ruby"
depends "systemd"
include_recipe "apache"
include_recipe "apt::passenger"
-include_recipe "munin"
include_recipe "prometheus"
include_recipe "ruby"
depends "awscli"
depends "geoipupdate"
depends "git"
-depends "munin"
depends "ruby"
depends "osmosis"
depends "systemd"
include_recipe "apache"
include_recipe "geoipupdate"
include_recipe "planet::aws"
-include_recipe "munin"
package %w[
python3
version "1.0.0"
supports "ubuntu"
depends "apt"
-depends "munin"
depends "ohai"
depends "prometheus"
#
include_recipe "apt::postgresql"
-include_recipe "munin"
include_recipe "prometheus"
package "locales-all"
depends "accounts"
depends "apache"
depends "git"
-depends "munin"
depends "nodejs"
depends "postgresql"
depends "prometheus"
include_recipe "accounts"
include_recipe "apache"
include_recipe "git"
-include_recipe "munin"
include_recipe "nodejs"
include_recipe "postgresql"
include_recipe "prometheus"
depends "geoipupdate"
depends "git"
depends "memcached"
-depends "munin"
depends "nodejs"
depends "passenger"
depends "ruby"
include_recipe "apt"
include_recipe "git"
include_recipe "geoipupdate"
-include_recipe "munin"
include_recipe "nodejs"
include_recipe "passenger"
include_recipe "ruby"
"recipe[devices]",
"recipe[hardware]",
"recipe[prometheus]",
- "recipe[munin::plugins]",
"recipe[networking]",
"recipe[exim]",
"recipe[ntp]",
+++ /dev/null
-describe package("munin-node") do
- it { should_not be_installed }
-end
-
-describe service("munin-node") do
- it { should_not be_enabled }
- it { should_not be_running }
-end
-
-describe port(4949) do
- it { should_not be_listening }
-end