# kionovelletto/ansible_study architecture

> Architecture diagram of the GitHub repository kionovelletto/ansible_study, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/kionovelletto/ansible_study
- Repository: https://github.com/kionovelletto/ansible_study

## Overview

This is an Ansible study repository, not an application: it guides a learner through installing Ansible, defining an inventory, checking connectivity, running ad hoc user/package tasks, and using playbooks for server configuration. Its examples also cover firewall rules and PostgreSQL installation alongside the documented Nginx workflow. The graph treats playbooks and inventories as automation inputs and remote machines as targets; source excerpts were unavailable, so links beyond the README’s stated sequence and filenames are not inferred.

Main entry points: [`Install_app_remote/postgresql/install_potsgresql.yml`](https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/postgresql/install_potsgresql.yml) (PostgreSQL install), [`network/simple/3_ping_servers.txt`](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/3_ping_servers.txt) (Connectivity check), [`network/simple/5_playbook_install_nginx_iptables.yaml`](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/5_playbook_install_nginx_iptables.yaml) (Nginx playbook), [`network/simple/2_inventory.cfg`](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/2_inventory.cfg) (Server inventory)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_learning["Study workflow"]
  node_install_guide["Installation guide"]
  node_inventory["Server inventory<br/>[2_inventory.cfg]"]
  node_connectivity["Connectivity check<br/>[3_ping_servers.txt]"]
  node_user_tasks["User tasks"]
  node_package_tasks["Package tasks"]
end

subgraph group_examples["Automation examples"]
  node_firewall_playbook["Firewall playbook"]
  node_nginx_playbook["Nginx playbook"]
  node_nginx_install["Nginx installation<br/>[install_nginx.yml]"]
  node_nginx_page["Nginx page<br/>[index.html]"]
  node_postgres_install["PostgreSQL install"]
  node_postgres_model2["PostgreSQL variant 2"]
  node_postgres_model3["PostgreSQL variant 3"]
  node_postgres_vars["PostgreSQL variables<br/>[vars.yml]"]
end

node_learner(("Learner"))
node_ansible["Ansible"]
node_remote_hosts[("Remote hosts")]

node_learner -->|"studies"| node_install_guide
node_learner -->|"defines hosts"| node_inventory
node_learner -->|"follows sequence"| node_connectivity
node_learner -->|"practices"| node_user_tasks
node_learner -->|"practices"| node_package_tasks
node_learner -->|"runs example"| node_nginx_playbook
node_connectivity -->|"checks hosts"| node_inventory
node_ansible -->|"manages"| node_remote_hosts
node_nginx_playbook -->|"configures"| node_remote_hosts
node_firewall_playbook -->|"configures"| node_remote_hosts
node_nginx_install -->|"installs Nginx"| node_remote_hosts
node_nginx_page -.->|"provides page"| node_remote_hosts
node_postgres_install -->|"installs PostgreSQL"| node_remote_hosts
node_postgres_model2 -->|"installs PostgreSQL"| node_remote_hosts
node_postgres_model3 -->|"installs PostgreSQL"| node_remote_hosts
node_postgres_install -.->|"uses variables"| node_postgres_vars

click node_install_guide "https://github.com/kionovelletto/ansible_study/blob/main/network/simple/1_Install_Ansible.txt"
click node_inventory "https://github.com/kionovelletto/ansible_study/blob/main/network/simple/2_inventory.cfg"
click node_connectivity "https://github.com/kionovelletto/ansible_study/blob/main/network/simple/3_ping_servers.txt"
click node_user_tasks "https://github.com/kionovelletto/ansible_study/blob/main/network/simple/4_adhoc_criando_usuarios_srv_remoto.txt"
click node_package_tasks "https://github.com/kionovelletto/ansible_study/blob/main/network/simple/4_adhoc_gerenciando_pacotes_srv_remoto.txt"
click node_firewall_playbook "https://github.com/kionovelletto/ansible_study/blob/main/network/simple/5_playbook_examples_firewall.yaml"
click node_nginx_playbook "https://github.com/kionovelletto/ansible_study/blob/main/network/simple/5_playbook_install_nginx_iptables.yaml"
click node_nginx_install "https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/nginx/install_nginx.yml"
click node_nginx_page "https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/nginx/pages/index.html"
click node_postgres_install "https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/postgresql/install_potsgresql.yml"
click node_postgres_model2 "https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/postgresql/install_potsgresql_modelo2.yml"
click node_postgres_model3 "https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/postgresql/install_potsgresql_modelo3.yml"
click node_postgres_vars "https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/postgresql/vars.yml"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_install_guide,node_inventory,node_connectivity,node_user_tasks,node_package_tasks toneBlue
class node_firewall_playbook,node_nginx_playbook,node_nginx_install,node_nginx_page,node_postgres_install,node_postgres_model2,node_postgres_model3,node_postgres_vars,node_remote_hosts toneAmber
class node_learner,node_ansible toneIndigo
```

## Components

### Study workflow

- [Installation guide](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/1_Install_Ansible.txt): `network/simple/1_Install_Ansible.txt`
- [Server inventory](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/2_inventory.cfg): `network/simple/2_inventory.cfg`
- [Connectivity check](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/3_ping_servers.txt): `network/simple/3_ping_servers.txt`
- [User tasks](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/4_adhoc_criando_usuarios_srv_remoto.txt): `network/simple/4_adhoc_criando_usuarios_srv_remoto.txt`
- [Package tasks](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/4_adhoc_gerenciando_pacotes_srv_remoto.txt): `network/simple/4_adhoc_gerenciando_pacotes_srv_remoto.txt`

### Automation examples

- [Firewall playbook](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/5_playbook_examples_firewall.yaml): `network/simple/5_playbook_examples_firewall.yaml`
- [Nginx playbook](https://github.com/kionovelletto/ansible_study/blob/main/network/simple/5_playbook_install_nginx_iptables.yaml): `network/simple/5_playbook_install_nginx_iptables.yaml`
- [Nginx installation](https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/nginx/install_nginx.yml): `Install_app_remote/nginx/install_nginx.yml`
- [Nginx page](https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/nginx/pages/index.html): `Install_app_remote/nginx/pages/index.html`
- [PostgreSQL install](https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/postgresql/install_potsgresql.yml): `Install_app_remote/postgresql/install_potsgresql.yml`
- [PostgreSQL variant 2](https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/postgresql/install_potsgresql_modelo2.yml): `Install_app_remote/postgresql/install_potsgresql_modelo2.yml`
- [PostgreSQL variant 3](https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/postgresql/install_potsgresql_modelo3.yml): `Install_app_remote/postgresql/install_potsgresql_modelo3.yml`
- [PostgreSQL variables](https://github.com/kionovelletto/ansible_study/blob/main/Install_app_remote/postgresql/vars.yml): `Install_app_remote/postgresql/vars.yml`

### Other components

- **Learner**
- **Ansible**
- **Remote hosts**

## Connections

- Learner → Installation guide: studies
- Learner → Server inventory: defines hosts
- Learner → Connectivity check: follows sequence
- Learner → User tasks: practices
- Learner → Package tasks: practices
- Learner → Nginx playbook: runs example
- Connectivity check → Server inventory: checks hosts
- Ansible → Remote hosts: manages
- Nginx playbook → Remote hosts: configures
- Firewall playbook → Remote hosts: configures
- Nginx installation → Remote hosts: installs Nginx
- Nginx page → Remote hosts: provides page
- PostgreSQL install → Remote hosts: installs PostgreSQL
- PostgreSQL variant 2 → Remote hosts: installs PostgreSQL
- PostgreSQL variant 3 → Remote hosts: installs PostgreSQL
- PostgreSQL install → PostgreSQL variables: uses variables
