Compare commits

...

4 commits

Author SHA1 Message Date
Felix Niederwanger c879842a05
Merge pull request #6 from GeekOops/collectd
Add collectd post
2022-06-29 15:26:10 +02:00
Felix Niederwanger 1c11190e72
Add collectd post 2022-06-29 15:24:49 +02:00
Felix Niederwanger a38668d34a
Merge pull request #5 from GeekOops/pages
Add a contribute and idea page
2022-06-29 14:08:55 +02:00
Felix Niederwanger f359d6fc70
Add a contribute and idea page 2022-06-29 14:07:55 +02:00
4 changed files with 89 additions and 1 deletions

View file

@ -0,0 +1,33 @@
---
title: Contribute
description: Description on how to contribute to the geekoops project
date: 2022-06-29T13:37:02+02:00
Lastmod: 2022-06-29T13:37:02+02:00
---
# How can I contribute?
GeekOops is an open community project, i.e. everyone is welcome to improve existing roles or submit new repositories that fit the general idea.
The project is managed on [github](https://github.com/GeekOops). You can contribute by
* Creating issues on individual roles
* Creating Pull Requests to improve existing roles
* Push a new repository
Because the number of participants is still low we don't have a hangout place yet but this might change over time.
## Pushing a new repository
The project is open for submission of new automation recipes. For now it consists mostly of ansible roles but submissions that fit the general idea of generic sysop/devops building blocks are more than welcome.
New submissions must fulfill two requirements to be accepted:
1. Fit into the general idea of the project
2. The role must contain some form of automatic testing (with exceptions)
Exceptions to the automatic testing rule can be that the role cannot be (efficiently) tested or that testing does not make sense. Exceptions are allowed but must be justifiable.
### Becoming a geekoops member
Ask to become a member by [creating a new issue](https://github.com/GeekOops/geekoops/issues/new) in the geekoops repository.

24
content/pages/idea.md Normal file
View file

@ -0,0 +1,24 @@
---
title: Idea
description: Presentation of the general idea of geekoops
date: 2022-06-29T13:49:31+02:00
Lastmod: 2022-06-29T13:49:31+02:00
---
geekoops is a collection of generic devops and sysops recipes with a strong focus on the openSUSE distribution. The main idea is to provide tested and simple-to-use building blocks for system administrator and engineers to easily setup and maintain their systems.
I started this project during the [SUSE Hackweek 20](https://hackweek.suse.com/20/projects/create-ansible-roles-for-generic-server-stuff) based on a personal need for some generic and easy-to-use ansible roles. The project was born from the believe that many more people have the same need and building something publicly available might help the one or another person in fulfilling its daily job.
## Simplicity is key
The core idea is to build re-usable and simple deployment recipes that work well together but are loosely coupled. Simplicity is favored over feature completeness, and automated testing heavily encourage to ensure that the project remains healthy over time.
Often some commonly used ansible support many configuration parameters and scenarios but do not work well together with openSUSE. Many moving parts means many corner cases and often those roles do not work well on openSUSE distributions, because either something missing or something is configured just different enough to make the orchestration tools stumble.
This is what geekoops wants to make different: The recipes here have a focus on openSUSE but should remain simple enough, so that they should work on other distributions as well or at least lower the threshold of making them work with other distributions.
Simplicity often is a synonymous for maintainability and a key ingredient to pass the test of time.
in a nutshell:
> geekoops heavily encourages the keep-it-simple-stupid principle

View file

@ -11,4 +11,5 @@ Here on this page a list of all available recipes is listed by category.
* [nginx](/posts/20210326-nginx/) - simple nginx configuration
* [php-fpm](/posts/20210326-php-fpm/) - Configure `php-fpm` in openSUSE Leap
* [PureFTPd](/posts/20210326-pureftpd/) - Setting up a `ftp` server using `pureftpd`
* [NEXT](/posts/20210326-next/) - Ansible role for setting up a PXE boot server
* [NEXT](/posts/20210326-next/) - Ansible role for setting up a PXE boot server
* [collectd](/posts/20220629-collectd/) - Ansible role for configuring `collectd`

View file

@ -0,0 +1,30 @@
---
title: "Ansible collectd"
author: "phoenix"
date: 2022-06-29T15:16:39+02:00
---
The [geekoops-collectd role](https://github.com/GeekOops/geekoops-collectd) is an Ansible role to install and configure `collectd` on an openSUSE Leap server. The role contains many configuration parameter with which you can enable a large set of [collectd plugins](https://www.collectd.org/wiki/index.php/Table_of_Plugins).
Currently the plugin supports pushing to an InfluxDB server or setting up a prometheus webserver for metrics scraping.
Most common plugins have been considered for the role, but the state is not yet complete. If you miss a certain plugin, feel free to [create a pull request](https://github.com/GeekOops/geekoops-collectd/pulls) or [report it as an issue](https://github.com/GeekOops/geekoops-collectd/issues).
# Example
The following example enables collectd on the `jellyfish` server and pushed the metrics to the InfluxDB host on 192.168.122.3. In addition to the default plugins (cpu, uptime, load, memory, swap) we also want to report metrics from `df` about the disk stats, from the local APC, additional vmem information and the `hddtemp` stats.
```yaml
---
- hosts: jellyfish
user: root
roles:
- role: geekoops-collectd
vars:
influx_host: "192.168.122.3"
enable_df: true
enable_apcups: true
enable_vmem: true
enable_hddtemp: true
```