mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-03-31 14:24:16 +02:00
Optimized .mds and meta/main.yml for system roles
This commit is contained in:
parent
c480e39e39
commit
efa139705a
@ -1 +1,24 @@
|
||||
https://github.com/kewlfft/ansible-aur
|
||||
# System AUR Helper
|
||||
## Description
|
||||
|
||||
This role ensures that the AUR helper [yay](https://wiki.archlinux.org/title/Yay) is installed on the system. It installs yay via [pacman](https://wiki.archlinux.org/title/Pacman) and creates a dedicated `aur_builder` user to facilitate building AUR packages.
|
||||
|
||||
## Overview
|
||||
|
||||
The role performs the following tasks:
|
||||
- Installs the AUR helper [yay](https://wiki.archlinux.org/title/Yay) using pacman.
|
||||
- Creates an `aur_builder` user with a home directory and adds the user to the wheel group.
|
||||
- Grants the `aur_builder` user passwordless [sudo](https://en.wikipedia.org/wiki/Sudo) rights for running pacman.
|
||||
|
||||
## Purpose
|
||||
|
||||
The primary purpose of this role is to streamline AUR package management on Arch Linux systems by ensuring that the required AUR helper is installed and properly configured.
|
||||
|
||||
## Features
|
||||
|
||||
- **Yay Installation:** Installs the AUR helper [yay](https://wiki.archlinux.org/title/Yay) on Arch Linux.
|
||||
- **User Creation:** Creates a dedicated `aur_builder` user.
|
||||
- **Sudo Configuration:** Grants passwordless sudo rights to `aur_builder` for pacman.
|
||||
|
||||
## More Information
|
||||
- https://github.com/kewlfft/ansible-aur
|
24
roles/system-aur-helper/meta/main.yml
Normal file
24
roles/system-aur-helper/meta/main.yml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: "Kevin Veen-Birkenbach"
|
||||
description: "Installs the AUR helper yay and configures an aur_builder user with appropriate sudo privileges to facilitate AUR package management on Arch Linux systems."
|
||||
license: "CyMaIS NonCommercial License (CNCL)"
|
||||
license_url: "https://s.veen.world/cncl"
|
||||
company: |
|
||||
Kevin Veen-Birkenbach
|
||||
Consulting & Coaching Solutions
|
||||
https://www.veen.world
|
||||
min_ansible_version: "2.9"
|
||||
platforms:
|
||||
- name: Archlinux
|
||||
versions:
|
||||
- rolling
|
||||
galaxy_tags:
|
||||
- aur
|
||||
- yay
|
||||
- archlinux
|
||||
- package-management
|
||||
repository: "https://s.veen.world/cymais"
|
||||
issue_tracker_url: "https://s.veen.world/cymaisissues"
|
||||
documentation: "https://s.veen.world/cymais"
|
||||
dependencies: []
|
@ -1,30 +1,24 @@
|
||||
# System Btrfs Auto Balancer Role 📦
|
||||
# System Btrfs Auto Balancer
|
||||
|
||||
This Ansible role automates the management and balancing of Btrfs file systems. It ensures that the Btrfs file system is maintained efficiently without manual intervention.
|
||||
## Description
|
||||
|
||||
## Features ✨
|
||||
This role automates the management and balancing of Btrfs file systems. It clones the latest version of the [auto-btrfs-balancer](https://github.com/kevinveenbirkenbach/auto-btrfs-balancer.git) repository and configures a systemd service and timer to run the balancing script automatically.
|
||||
|
||||
- **Automatic Cloning of Repository:** Fetches the latest `auto-btrfs-balancer` repository from GitHub.
|
||||
- **Systemd Service Configuration:** Creates and configures a Systemd service to automatically run the balancing script.
|
||||
- **Systemd Timer Integration:** Integrates a Systemd timer to run the balancing service at regular intervals.
|
||||
- **Error Notification:** Notifies via Systemd in case of errors during the balancing process.
|
||||
## Overview
|
||||
|
||||
## Prerequisites 📋
|
||||
Optimized for automated file system management, this role:
|
||||
- Clones the auto-btrfs-balancer repository.
|
||||
- Configures a systemd service to run the balancing script.
|
||||
- Integrates a systemd timer for regular execution.
|
||||
- Notifies via systemd in case of errors during the balancing process.
|
||||
|
||||
- **Ansible:** This role requires Ansible to run.
|
||||
- **Systemd:** Target systems must support Systemd.
|
||||
- **Git:** Git must be installed to clone the repository.
|
||||
## Purpose
|
||||
|
||||
The primary purpose of this role is to maintain optimal performance of Btrfs file systems by automating balancing tasks, ensuring efficient storage allocation and performance.
|
||||
|
||||
## Author ✍️
|
||||
## Features
|
||||
|
||||
This role was created by [Kevin Veen-Birkenbach](https://www.veen.world).
|
||||
- **Email:** kevin@veen.world
|
||||
- **Website:** [veen.world](https://www.veen.world)
|
||||
|
||||
## Contact ☎️
|
||||
|
||||
For questions or support, you can reach Kevin Veen-Birkenbach via [email](mailto:kevin@veen.world).
|
||||
|
||||
## Created with AI
|
||||
This README.md was created with the assistance of ChatGPT. You can view the conversation [here](https://chatgpt.com/share/dcec1b4a-c7a8-4cf8-a87a-987eb0500857).
|
||||
- **Repository Cloning:** Automatically fetches the latest auto-btrfs-balancer repository.
|
||||
- **Service Configuration:** Sets up a systemd service for running the balancing script.
|
||||
- **Timer Integration:** Schedules the balancing process via a systemd timer.
|
||||
- **Error Notification:** Notifies on failure using systemd-notifier.
|
||||
|
@ -1,3 +1,26 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: "Kevin Veen-Birkenbach"
|
||||
description: "Automates the balancing of Btrfs file systems by cloning the auto-btrfs-balancer repository and configuring a systemd service and timer for regular execution."
|
||||
license: "CyMaIS NonCommercial License (CNCL)"
|
||||
license_url: "https://s.veen.world/cncl"
|
||||
company: |
|
||||
Kevin Veen-Birkenbach
|
||||
Consulting & Coaching Solutions
|
||||
https://www.veen.world
|
||||
min_ansible_version: "2.9"
|
||||
platforms:
|
||||
- name: Archlinux
|
||||
versions:
|
||||
- rolling
|
||||
galaxy_tags:
|
||||
- btrfs
|
||||
- balancing
|
||||
- filesystem
|
||||
- automation
|
||||
repository: "https://s.veen.world/cymais"
|
||||
issue_tracker_url: "https://s.veen.world/cymaisissues"
|
||||
documentation: "https://s.veen.world/cymais"
|
||||
dependencies:
|
||||
- git
|
||||
- systemd-notifier
|
||||
- systemd-notifier
|
||||
|
@ -1,10 +1,25 @@
|
||||
# Role: System-Maintenance-Lock
|
||||
# System Maintenance Lock
|
||||
|
||||
## Description
|
||||
|
||||
This role provides a locking mechanism to ensure that critical services are not interrupted during maintenance activities such as updates, backups, or patch applications. It waits for specified services to stop and prevents conflicting operations.
|
||||
|
||||
## Overview
|
||||
The `system-maintenance-lock` role is a critical part of maintaining the integrity and performance of a system. It ensures that specific services are not interrupted or conflicted with by other system processes. This role is particularly vital during system updates, backups, or other maintenance activities where conflicting processes could cause issues.
|
||||
|
||||
## Usage
|
||||
This role is used in scenarios where system stability and integrity are paramount, such as during system upgrades, backup processes, or when applying critical patches.
|
||||
The role performs the following:
|
||||
- Blocks execution until specified services have stopped.
|
||||
- Implements retry logic with a configurable timeout.
|
||||
- Ensures that maintenance tasks are executed only when the system is in a safe state.
|
||||
|
||||
## Created with AI
|
||||
## Purpose
|
||||
|
||||
The primary purpose of this role is to safeguard system stability during maintenance by preventing conflicts with running services. It ensures that maintenance operations proceed only when the environment is ready.
|
||||
|
||||
## Features
|
||||
|
||||
- **Service Locking:** Blocks maintenance tasks until critical services are stopped.
|
||||
- **Timeout and Retry Logic:** Configurable wait times and maximum attempts.
|
||||
- **Conflict Avoidance:** Prevents interference between maintenance operations and running services.
|
||||
|
||||
## Credits
|
||||
Created with ChatGPT. Conversation is [here](https://chat.openai.com/share/a886b86b-8de6-4eca-9fba-e36c9f20d536) available.
|
24
roles/system-maintenance-lock/meta/main.yml
Normal file
24
roles/system-maintenance-lock/meta/main.yml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: "Kevin Veen-Birkenbach"
|
||||
description: "Ensures system integrity during maintenance activities by blocking execution until critical services have stopped, using a locking mechanism with timeout and retry logic."
|
||||
license: "CyMaIS NonCommercial License (CNCL)"
|
||||
license_url: "https://s.veen.world/cncl"
|
||||
company: |
|
||||
Kevin Veen-Birkenbach
|
||||
Consulting & Coaching Solutions
|
||||
https://www.veen.world
|
||||
min_ansible_version: "2.9"
|
||||
platforms:
|
||||
- name: Linux
|
||||
versions:
|
||||
- all
|
||||
galaxy_tags:
|
||||
- maintenance
|
||||
- lock
|
||||
- system
|
||||
- administration
|
||||
repository: "https://s.veen.world/cymais"
|
||||
issue_tracker_url: "https://s.veen.world/cymaisissues"
|
||||
documentation: "https://s.veen.world/cymais"
|
||||
dependencies: []
|
21
roles/system-security/README.md
Normal file
21
roles/system-security/README.md
Normal file
@ -0,0 +1,21 @@
|
||||
# System Security
|
||||
|
||||
## Description
|
||||
|
||||
This role configures security-related settings on the target system to ensure that essential security services are properly managed. It reinforces system security by integrating with related roles and enforcing best practices.
|
||||
|
||||
## Overview
|
||||
|
||||
The role focuses on:
|
||||
- Configuring key security services such as [SSH](https://en.wikipedia.org/wiki/Secure_Shell).
|
||||
- Integrating with other security roles to maintain a robust system security posture.
|
||||
- Ensuring that security configurations are applied consistently across the system.
|
||||
|
||||
## Purpose
|
||||
|
||||
The primary purpose of this role is to enhance overall system security by managing and configuring essential security services and settings.
|
||||
|
||||
## Features
|
||||
|
||||
- **Security Configuration:** Applies recommended security settings for core services.
|
||||
- **Integration:** Works alongside related roles such as [sshd](https://en.wikipedia.org/wiki/SSH_daemon) to provide comprehensive security management.
|
@ -1,2 +1,24 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: "Kevin Veen-Birkenbach"
|
||||
description: "Configures security-related settings on the target system and ensures essential security services are properly managed."
|
||||
license: "CyMaIS NonCommercial License (CNCL)"
|
||||
license_url: "https://s.veen.world/cncl"
|
||||
company: |
|
||||
Kevin Veen-Birkenbach
|
||||
Consulting & Coaching Solutions
|
||||
https://www.veen.world
|
||||
min_ansible_version: "2.9"
|
||||
platforms:
|
||||
- name: Linux
|
||||
versions:
|
||||
- all
|
||||
galaxy_tags:
|
||||
- security
|
||||
- ssh
|
||||
- system
|
||||
repository: "https://s.veen.world/cymais"
|
||||
issue_tracker_url: "https://s.veen.world/cymaisissues"
|
||||
documentation: "https://s.veen.world/cymais"
|
||||
dependencies:
|
||||
- sshd
|
||||
- sshd
|
@ -1,23 +1,29 @@
|
||||
# System Storage Optimizer Role
|
||||
|
||||
## Description
|
||||
|
||||
This role optimizes storage allocation for Docker volumes by migrating volumes between SSD (rapid storage) and HDD (mass storage) based on container image types. It creates symbolic links to maintain consistent storage paths after migration.
|
||||
|
||||
## Overview
|
||||
|
||||
The `system-storage-optimizer` role is designed for managing and optimizing storage allocation of Docker volumes. It automates the process of moving Docker volumes between SSD (rapid storage) and HDD (mass storage) based on the container image types, enhancing performance and efficiency.
|
||||
The role performs the following tasks:
|
||||
- Migrates Docker volumes with database workloads to rapid storage (SSD) for improved performance.
|
||||
- Moves non-database Docker volumes to mass storage (HDD) to optimize storage usage.
|
||||
- Manages container stopping and restarting during the migration process.
|
||||
- Creates symbolic links to preserve consistent file paths.
|
||||
|
||||
## Purpose
|
||||
|
||||
The primary purpose of this role is to enhance system performance by ensuring that Docker volumes are stored on the most appropriate storage medium, optimizing both speed and capacity.
|
||||
|
||||
## Features
|
||||
|
||||
- Dynamically moves Docker volumes based on container image types.
|
||||
- Utilizes SSDs for database-related volumes for faster access.
|
||||
- Moves non-database volumes to HDDs for efficient mass storage.
|
||||
- Handles container stopping and starting during the optimization process.
|
||||
- Creates symbolic links to maintain consistent paths.
|
||||
- **Dynamic Volume Migration:** Moves Docker volumes based on container image types.
|
||||
- **Symbolic Link Creation:** Maintains consistent access paths after migration.
|
||||
- **Container Management:** Safely stops and starts containers during volume migration.
|
||||
- **Performance Optimization:** Improves overall system performance by leveraging appropriate storage media.
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
To deploy this role, include it in your Ansible playbook and define the necessary paths for SSD and HDD storage.
|
||||
|
||||
## Additional Information
|
||||
## Credits
|
||||
|
||||
For detailed context and the development history of this role, refer to [this conversation](https://chat.openai.com/share/40fef8a6-5e9b-4b5e-8e68-7f2fd9abf5cc).
|
||||
|
||||
|
24
roles/system-storage-optimizer/meta/main.yml
Normal file
24
roles/system-storage-optimizer/meta/main.yml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: "Kevin Veen-Birkenbach"
|
||||
description: "Optimizes storage allocation for Docker volumes by migrating volumes between SSD and HDD based on container image types, and creates symbolic links to maintain consistent paths."
|
||||
license: "CyMaIS NonCommercial License (CNCL)"
|
||||
license_url: "https://s.veen.world/cncl"
|
||||
company: |
|
||||
Kevin Veen-Birkenbach
|
||||
Consulting & Coaching Solutions
|
||||
https://www.veen.world
|
||||
min_ansible_version: "2.9"
|
||||
platforms:
|
||||
- name: Linux
|
||||
versions:
|
||||
- all
|
||||
galaxy_tags:
|
||||
- storage
|
||||
- docker
|
||||
- optimization
|
||||
- performance
|
||||
repository: "https://s.veen.world/cymais"
|
||||
issue_tracker_url: "https://s.veen.world/cymaisissues"
|
||||
documentation: "https://s.veen.world/cymais"
|
||||
dependencies: []
|
22
roles/system-swapfile/README.md
Normal file
22
roles/system-swapfile/README.md
Normal file
@ -0,0 +1,22 @@
|
||||
# System Swapfile Role
|
||||
|
||||
## Description
|
||||
|
||||
This role automates the creation of a swapfile on the target system by cloning a swapfile creation script from a Git repository and executing it with the specified swapfile size.
|
||||
|
||||
## Overview
|
||||
|
||||
The role performs the following tasks:
|
||||
- Clones the swapfile creation script from the Git repository.
|
||||
- Executes the script with the provided swapfile size to create a swapfile.
|
||||
- Helps ensure that the system has adequate swap space for improved performance and stability.
|
||||
|
||||
## Purpose
|
||||
|
||||
The primary purpose of this role is to automate the process of swapfile creation, ensuring that the system has sufficient swap space to handle memory-intensive tasks and maintain overall performance.
|
||||
|
||||
## Features
|
||||
|
||||
- **Script Cloning:** Retrieves the latest swapfile creation script from a Git repository.
|
||||
- **Swapfile Creation:** Executes the script to create a swapfile of a specified size.
|
||||
- **Performance Enhancement:** Ensures adequate swap space for optimal system performance.
|
@ -1,2 +1,25 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: "Kevin Veen-Birkenbach"
|
||||
description: "Automates the creation of a swapfile on the target system by cloning and executing a swapfile creation script, ensuring adequate swap space for improved system performance."
|
||||
license: "CyMaIS NonCommercial License (CNCL)"
|
||||
license_url: "https://s.veen.world/cncl"
|
||||
company: |
|
||||
Kevin Veen-Birkenbach
|
||||
Consulting & Coaching Solutions
|
||||
https://www.veen.world
|
||||
min_ansible_version: "2.9"
|
||||
platforms:
|
||||
- name: Linux
|
||||
versions:
|
||||
- all
|
||||
galaxy_tags:
|
||||
- swapfile
|
||||
- system
|
||||
- performance
|
||||
- automation
|
||||
repository: "https://s.veen.world/cymais"
|
||||
issue_tracker_url: "https://s.veen.world/cymaisissues"
|
||||
documentation: "https://s.veen.world/cymais"
|
||||
dependencies:
|
||||
- pc-git
|
||||
- git
|
Loading…
x
Reference in New Issue
Block a user