Make README diagrams vertical and clickable
This commit is contained in:
@@ -6,25 +6,11 @@ This repository demonstrates real-world Linux infrastructure and operations expe
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["portfolio"] --> B["infra-run"]
|
A["portfolio"] --> B["infra-run"] --> C["platform-projects"] --> D["labs"]
|
||||||
A --> C["platform-projects"]
|
click A href "./" "portfolio"
|
||||||
A --> D["labs"]
|
click B href "./infra-run/" "infra-run"
|
||||||
B --> B1["ansible"]
|
click C href "./platform-projects/" "platform-projects"
|
||||||
B --> B2["docs"]
|
click D href "./labs/" "labs"
|
||||||
B --> B3["runbooks"]
|
|
||||||
B --> B4["scripts"]
|
|
||||||
B4 --> B41["bash"]
|
|
||||||
B4 --> B42["python"]
|
|
||||||
C --> C1["storage"]
|
|
||||||
C --> C2["clustering"]
|
|
||||||
C --> C3["monitoring-zabbix"]
|
|
||||||
C --> C4["virtualization"]
|
|
||||||
C --> C5["elk-log-analysis"]
|
|
||||||
D --> D1["docker"]
|
|
||||||
D --> D2["kubernetes"]
|
|
||||||
D --> D3["terraform"]
|
|
||||||
D --> D4["networking"]
|
|
||||||
D --> D5["ci-cd"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Core Project
|
## Core Project
|
||||||
|
|||||||
+6
-6
@@ -6,12 +6,12 @@
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["infra-run"] --> B["ansible"]
|
A["infra-run"] --> B["ansible"] --> C["docs"] --> D["runbooks"] --> E["scripts"]
|
||||||
A --> C["docs"]
|
click A href "./" "infra-run"
|
||||||
A --> D["runbooks"]
|
click B href "./ansible/" "ansible"
|
||||||
A --> E["scripts"]
|
click C href "./docs/" "docs"
|
||||||
E --> E1["bash"]
|
click D href "./runbooks/" "runbooks"
|
||||||
E --> E2["python"]
|
click E href "./scripts/" "scripts"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Scope
|
## Scope
|
||||||
|
|||||||
@@ -6,13 +6,13 @@ This directory reserves the Ansible automation area for future infrastructure-as
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["ansible"] --> B["collections"]
|
A["ansible"] --> B["collections"] --> C["inventory"] --> D["playbooks"] --> E["roles"] --> F["tests"]
|
||||||
A --> C["inventory"]
|
click A href "./" "ansible"
|
||||||
A --> D["playbooks"]
|
click B href "./collections/" "collections"
|
||||||
A --> E["roles"]
|
click C href "./inventory/" "inventory"
|
||||||
A --> F["tests"]
|
click D href "./playbooks/" "playbooks"
|
||||||
C --> C1["group_vars"]
|
click E href "./roles/" "roles"
|
||||||
C --> C2["host_vars"]
|
click F href "./tests/" "tests"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Scope
|
## Scope
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is reserved for Ansible collections used by the `infra-run` automati
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["collections"] --> B["External or custom collections"]
|
A["collections"]
|
||||||
B --> C["Modules"]
|
click A href "./" "collections"
|
||||||
B --> D["Plugins"]
|
|
||||||
B --> E["Roles integration"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Scope
|
## Scope
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ This directory is intended for Ansible inventory definitions. It separates share
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["inventory"] --> B["group_vars"]
|
A["inventory"] --> B["group_vars"] --> C["host_vars"]
|
||||||
A --> C["host_vars"]
|
click A href "./" "inventory"
|
||||||
B --> D["Shared environment variables"]
|
click B href "./group_vars/" "group_vars"
|
||||||
C --> E["Per-host overrides"]
|
click C href "./host_vars/" "host_vars"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Scope
|
## Scope
|
||||||
|
|||||||
@@ -6,9 +6,8 @@ This folder is reserved for shared Ansible variables applied to inventory groups
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["group_vars"] --> B["Environment defaults"]
|
A["group_vars"]
|
||||||
A --> C["Role parameters"]
|
click A href "./" "group_vars"
|
||||||
A --> D["Shared operational values"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,9 +6,8 @@ This folder is intended for host-specific Ansible variables. It complements `gro
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["host_vars"] --> B["Host A overrides"]
|
A["host_vars"]
|
||||||
A --> C["Host B overrides"]
|
click A href "./" "host_vars"
|
||||||
A --> D["Per-node secrets or tuning"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This directory is intended for executable Ansible playbooks that coordinate role
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["playbooks"] --> B["Provisioning flows"]
|
A["playbooks"]
|
||||||
A --> C["Hardening flows"]
|
click A href "./" "playbooks"
|
||||||
A --> D["Patch workflows"]
|
|
||||||
A --> E["Decommission workflows"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is reserved for reusable Ansible roles. Roles make it possible to or
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["roles"] --> B["common"]
|
A["roles"]
|
||||||
A --> C["monitoring"]
|
click A href "./" "roles"
|
||||||
A --> D["storage"]
|
|
||||||
A --> E["security"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,9 +6,8 @@ This directory is reserved for validation of Ansible content. It represents the
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["tests"] --> B["Syntax checks"]
|
A["tests"]
|
||||||
A --> C["Molecule or scenario tests"]
|
click A href "./" "tests"
|
||||||
A --> D["Post-run validation"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,9 +6,8 @@ This directory is intended for supporting technical documentation tied to the op
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["docs"] --> B["Architecture notes"]
|
A["docs"]
|
||||||
A --> C["Operational references"]
|
click A href "./" "docs"
|
||||||
A --> D["Change preparation notes"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This directory is reserved for runbook-style procedures that describe how to per
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["runbooks"] --> B["Pre-check"]
|
A["runbooks"]
|
||||||
A --> C["Change execution"]
|
click A href "./" "runbooks"
|
||||||
A --> D["Post-check"]
|
|
||||||
A --> E["Rollback or escalation"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ This directory groups executable tooling used across the `infra-run` project. It
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["scripts"] --> B["bash"]
|
A["scripts"] --> B["bash"] --> C["python"]
|
||||||
A --> C["python"]
|
click A href "./" "scripts"
|
||||||
B --> D["Operational toolkits"]
|
click B href "./bash/" "bash"
|
||||||
C --> E["Future helper utilities"]
|
click C href "./python/" "python"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Scope
|
## Scope
|
||||||
|
|||||||
@@ -6,14 +6,12 @@ Small, practical Bash scripts for Linux operations checks and incident triage. T
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["bash"] --> B["os-healthcheck"]
|
A["bash"] --> B["os-healthcheck"] --> C["disk-full"] --> D["veritas"] --> E["gpfs"]
|
||||||
A --> C["disk-full"]
|
click A href "./" "bash"
|
||||||
A --> D["veritas"]
|
click B href "./os-healthcheck/" "os-healthcheck"
|
||||||
A --> E["gpfs"]
|
click C href "./disk-full/" "disk-full"
|
||||||
B --> B1["Host diagnostics"]
|
click D href "./veritas/" "veritas"
|
||||||
C --> C1["Incident workflow"]
|
click E href "./gpfs/" "gpfs"
|
||||||
D --> D1["VxVM and VCS change flow"]
|
|
||||||
E --> E1["Spectrum Scale expansion flow"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Scripts
|
## Scripts
|
||||||
|
|||||||
@@ -6,14 +6,8 @@ Production-style Bash toolkit for diagnosing and handling a disk full incident o
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["disk-full"] --> B["01_disk_overview.sh"]
|
A["disk-full"]
|
||||||
A --> C["02_find_big_files.sh"]
|
click A href "./" "disk-full"
|
||||||
A --> D["03_deleted_open_files.sh"]
|
|
||||||
A --> E["04_top_dirs.sh"]
|
|
||||||
A --> F["05_log_cleanup.sh"]
|
|
||||||
A --> G["06_quick_fix.sh"]
|
|
||||||
A --> H["07_postcheck.sh"]
|
|
||||||
A --> I["disk_full_runbook.sh"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Why Disk Full Incidents Happen
|
## Why Disk Full Incidents Happen
|
||||||
|
|||||||
@@ -8,15 +8,8 @@ These scripts are examples. Exact GPFS commands, flags, quorum practices, failur
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["gpfs"] --> B["01_cluster_overview.sh"]
|
A["gpfs"]
|
||||||
A --> C["02_precheck_gpfs.sh"]
|
click A href "./" "gpfs"
|
||||||
A --> D["03_detect_new_disks.sh"]
|
|
||||||
A --> E["04_create_nsd_stanza.sh"]
|
|
||||||
A --> F["05_add_nsd_to_filesystem.sh"]
|
|
||||||
A --> G["06_rebalance_filesystem.sh"]
|
|
||||||
A --> H["07_postcheck_gpfs.sh"]
|
|
||||||
A --> I["08_generate_report.sh"]
|
|
||||||
A --> J["gpfs_extend_runbook.sh"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Concepts
|
## Concepts
|
||||||
|
|||||||
@@ -6,11 +6,8 @@ This directory contains first-pass Linux diagnostics for common host checks. The
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["os-healthcheck"] --> B["healthcheck.sh"]
|
A["os-healthcheck"]
|
||||||
A --> C["disk_check.sh"]
|
click A href "./" "os-healthcheck"
|
||||||
A --> D["service_check.sh"]
|
|
||||||
A --> E["system_report.sh"]
|
|
||||||
A --> F["network_troubleshoot.sh"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Scripts
|
## Scripts
|
||||||
|
|||||||
@@ -6,15 +6,8 @@ Production-style Bash examples for expanding storage in a Veritas environment. T
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["veritas"] --> B["01_detect_new_luns.sh"]
|
A["veritas"]
|
||||||
A --> C["02_precheck_vcs_vxvm.sh"]
|
click A href "./" "veritas"
|
||||||
A --> D["03_freeze_vcs_group.sh"]
|
|
||||||
A --> E["04_init_vxvm_disks.sh"]
|
|
||||||
A --> F["05_extend_diskgroup.sh"]
|
|
||||||
A --> G["06_extend_volume_fs.sh"]
|
|
||||||
A --> H["07_postcheck_vcs_vxvm.sh"]
|
|
||||||
A --> I["08_unfreeze_vcs_group.sh"]
|
|
||||||
A --> J["veritas_extend_runbook.sh"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## VxVM vs VCS
|
## VxVM vs VCS
|
||||||
|
|||||||
@@ -6,9 +6,8 @@ This directory is reserved for Python helpers that may later complement the Bash
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["python"] --> B["Future reporting utilities"]
|
A["python"]
|
||||||
A --> C["Parsers"]
|
click A href "./" "python"
|
||||||
A --> D["Automation helpers"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
+7
-5
@@ -6,11 +6,13 @@ This directory collects hands-on lab areas used for experimentation and skill de
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["labs"] --> B["docker"]
|
A["labs"] --> B["docker"] --> C["kubernetes"] --> D["terraform"] --> E["networking"] --> F["ci-cd"]
|
||||||
A --> C["kubernetes"]
|
click A href "./" "labs"
|
||||||
A --> D["terraform"]
|
click B href "./docker/" "docker"
|
||||||
A --> E["networking"]
|
click C href "./kubernetes/" "kubernetes"
|
||||||
A --> F["ci-cd"]
|
click D href "./terraform/" "terraform"
|
||||||
|
click E href "./networking/" "networking"
|
||||||
|
click F href "./ci-cd/" "ci-cd"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Scope
|
## Scope
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is intended for CI/CD experiments such as pipeline layouts, validati
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["ci-cd"] --> B["Build"]
|
A["ci-cd"]
|
||||||
A --> C["Test"]
|
click A href "./" "ci-cd"
|
||||||
A --> D["Package"]
|
|
||||||
A --> E["Deploy"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,9 +6,8 @@ This folder is reserved for Docker-focused lab work. It is intended for image bu
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["docker"] --> B["Dockerfiles"]
|
A["docker"]
|
||||||
A --> C["Compose stacks"]
|
click A href "./" "docker"
|
||||||
A --> D["Container debugging"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is intended for Kubernetes lab work such as manifests, troubleshooti
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["kubernetes"] --> B["Workloads"]
|
A["kubernetes"]
|
||||||
A --> C["Services"]
|
click A href "./" "kubernetes"
|
||||||
A --> D["Ingress and networking"]
|
|
||||||
A --> E["Cluster troubleshooting"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is reserved for networking-focused exercises. It can hold examples a
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["networking"] --> B["Routing"]
|
A["networking"]
|
||||||
A --> C["DNS"]
|
click A href "./" "networking"
|
||||||
A --> D["Firewall and ports"]
|
|
||||||
A --> E["Connectivity tests"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,9 +6,8 @@ This folder is intended for Terraform experiments and infrastructure-as-code pra
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["terraform"] --> B["Modules"]
|
A["terraform"]
|
||||||
A --> C["Environment configs"]
|
click A href "./" "terraform"
|
||||||
A --> D["Plan and apply workflows"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,11 +6,13 @@ This directory groups broader infrastructure themes that sit above individual sc
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["platform-projects"] --> B["storage"]
|
A["platform-projects"] --> B["storage"] --> C["clustering"] --> D["monitoring-zabbix"] --> E["virtualization"] --> F["elk-log-analysis"]
|
||||||
A --> C["clustering"]
|
click A href "./" "platform-projects"
|
||||||
A --> D["monitoring-zabbix"]
|
click B href "./storage/" "storage"
|
||||||
A --> E["virtualization"]
|
click C href "./clustering/" "clustering"
|
||||||
A --> F["elk-log-analysis"]
|
click D href "./monitoring-zabbix/" "monitoring-zabbix"
|
||||||
|
click E href "./virtualization/" "virtualization"
|
||||||
|
click F href "./elk-log-analysis/" "elk-log-analysis"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Scope
|
## Scope
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is reserved for clustering-focused platform work. It is meant for hi
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["clustering"] --> B["Quorum"]
|
A["clustering"]
|
||||||
A --> C["Failover"]
|
click A href "./" "clustering"
|
||||||
A --> D["Service groups"]
|
|
||||||
A --> E["Operational validation"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is intended for Elastic Stack style log-analysis work. It can hold e
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["elk-log-analysis"] --> B["Ingest"]
|
A["elk-log-analysis"]
|
||||||
A --> C["Parse"]
|
click A href "./" "elk-log-analysis"
|
||||||
A --> D["Search"]
|
|
||||||
A --> E["Visualize"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is reserved for monitoring and alerting work centered on Zabbix-styl
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["monitoring-zabbix"] --> B["Hosts"]
|
A["monitoring-zabbix"]
|
||||||
A --> C["Templates"]
|
click A href "./" "monitoring-zabbix"
|
||||||
A --> D["Triggers"]
|
|
||||||
A --> E["Dashboards"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is intended for storage-oriented platform topics. It can hold higher
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["storage"] --> B["Capacity planning"]
|
A["storage"]
|
||||||
A --> C["Filesystem expansion"]
|
click A href "./" "storage"
|
||||||
A --> D["Block device management"]
|
|
||||||
A --> E["Operational safety"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
@@ -6,10 +6,8 @@ This folder is reserved for virtualization platform topics. It is intended for w
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
flowchart TD
|
flowchart TD
|
||||||
A["virtualization"] --> B["Hypervisors"]
|
A["virtualization"]
|
||||||
A --> C["Guests"]
|
click A href "./" "virtualization"
|
||||||
A --> D["Resource planning"]
|
|
||||||
A --> E["Operational maintenance"]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|||||||
Reference in New Issue
Block a user