DevOps
| Noisebridge | About | Visit | 272 | Manual | Contact | Guilds | Stuff | Events | Projects | Meetings | Donate | E |
| Resources | Where to find things | Network | AV | Audio | Library | Servers | Printers | Sustenance | E |
| Servers | DevOps | Pegasus | Unicorn | Shed | Brony | Secretaribot | lemp10 | V · T · E |
Ansible[edit]
Ansible is used for infrastructure deployment. More information about Noisebridge's use of Ansible can be found at Ansible and a quick overview of Ansible at Ansible/Quickstart.
https://github.com/noisebridge/ansible
Caddy[edit]
Caddy is a webserver with https on BY DEFAULT and it is VERY PROUD of this fact.
Playbook Documentation[edit]
(e.g. how to deploy caddy with ansible, not how to use caddy)
The ansible playbook for caddy
Caddy Configuration[edit]
Caddy configuration file documentation
cli interface, flags and stuff
Noisebridge configuration[edit]
The majority of entries in caddy.yml handle redirects from other noisebridte-ish domains like noisebridge.com to noisebridge.net.
apps like mailman, pipermail with http[s] endpoints are also configured.
Directives[edit]
A list of directives seen in noisebridge caddy ansible playbook and their definitions.
- prometheus
- a metric reporting system.
- gzip
- serve sites from zipped archives
- log
- logging configuration
- tls
- override https default intentionally
- redir
- sends the client an HTTP redirect status code if the URL matches the specified pattern. It is also possible to make a redirect conditional.
- root
- specifies the root of the site. This is very useful, in fact required, if the root (/) directory of the website is not the same as where Caddy is being executed from.
- index
- sets the list of file names that are used as "index" files. When a directory path is requested instead of a specific file, the directory is checked for existing index files. The first matching file name is served.
- header
- manipulate response headers.
- fastcgi
- proxies requests to a FastCGI server.
- rewrite
- request one resource but actually be served another without an HTTP redirect. Rewrites are invisible to the client.
Plugins[edit]
- cgi
- generate dynamic content on your website by means of command line scripts
molecule[edit]
"Molecule aids in the development and testing of Ansible roles."
https://github.com/ansible/molecule
why are there two instances, default and alternate?
coredns[edit]
Ansible houses files which contain Noisebridge's dns configuration.
Prometheus[edit]
System monitoring and time series database.
Playbook configuration[edit]
playbook configuration for prometheus
Noisebridge[edit]
Prometheus is configured to log metrics for various groups of services. As different groups are involved, there is prometheus config in different group_vars files.
node, caddy, and coredns, smartpi
Q: Why is the web_listen_address "127.0.0.1:9090" instead of "localhost:9090" as lower in the file?
mysql (percona)[edit]
Percona is a distribution of MySQL which includes features from MySQL Enterprise edition like availability, availability, security, etc.
Ansible[edit]
As Percona is a mysql distribution, it makes use of the ansible role.
Percona[edit]
the database name is noisebridge_mediawiki
Noisebridge[edit]
Percona is used to serve noisebridge's mediawiki instance.
Grafana[edit]
Grafana is a " tool for beautiful monitoring and metric analytics & dashboards for Graphite, InfluxDB & Prometheus & More" github
The config in grafana.yml is specific to directories, hosts, databases, credentials and various authentications.
node exporter[edit]
A basic metrics exporter for prometheus