feat(ansible): add minimal doc-rpc sol bootstrap playbook
This commit is contained in:
9
ansible/ansible.cfg
Normal file
9
ansible/ansible.cfg
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
[defaults]
|
||||||
|
inventory = inventory/hosts.ini
|
||||||
|
host_key_checking = False
|
||||||
|
stdout_callback = yaml
|
||||||
|
interpreter_python = auto_silent
|
||||||
|
retry_files_enabled = False
|
||||||
|
|
||||||
|
[ssh_connection]
|
||||||
|
pipelining = True
|
||||||
2
ansible/inventory/hosts.ini
Normal file
2
ansible/inventory/hosts.ini
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
[sol_rpc]
|
||||||
|
mevnode ansible_host=mevnode ansible_user=root
|
||||||
27
ansible/playbooks/doc-rpc-sol-min.yml
Normal file
27
ansible/playbooks/doc-rpc-sol-min.yml
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
- name: Minimal check for doc/rpc Sol host
|
||||||
|
hosts: sol_rpc
|
||||||
|
gather_facts: true
|
||||||
|
become: false
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- name: Validate Ansible transport
|
||||||
|
ansible.builtin.ping:
|
||||||
|
|
||||||
|
- name: Show host basics
|
||||||
|
ansible.builtin.debug:
|
||||||
|
msg:
|
||||||
|
- "inventory_hostname={{ inventory_hostname }}"
|
||||||
|
- "ansible_host={{ ansible_host | default('n/a') }}"
|
||||||
|
- "hostname={{ ansible_facts['hostname'] | default('n/a') }}"
|
||||||
|
- "os_family={{ ansible_facts['os_family'] | default('n/a') }}"
|
||||||
|
- "kernel={{ ansible_facts['kernel'] | default('n/a') }}"
|
||||||
|
|
||||||
|
- name: Read uptime
|
||||||
|
ansible.builtin.command: uptime
|
||||||
|
register: uptime_cmd
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: Print uptime
|
||||||
|
ansible.builtin.debug:
|
||||||
|
var: uptime_cmd.stdout
|
||||||
23
doc/etap-001-doc-rpc-sol-ansible.md
Normal file
23
doc/etap-001-doc-rpc-sol-ansible.md
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
# Etap 001: Ansible bootstrap + minimalny playbook (`doc/rpc` Sol)
|
||||||
|
|
||||||
|
Cel etapu: uruchomić pierwszy, bezpieczny playbook Ansible dla hosta RPC (`mevnode`) zgodnie z kierunkiem z `doc/rpc/*`.
|
||||||
|
|
||||||
|
## Zakres
|
||||||
|
|
||||||
|
1. Sprawdzić i zainstalować Ansible na VPS (control node), jeśli brak.
|
||||||
|
2. Dodać minimalną strukturę Ansible w `trade-iac`:
|
||||||
|
- inventory dla `mevnode`,
|
||||||
|
- minimalny playbook testowy (bez zmian destrukcyjnych).
|
||||||
|
3. Wykonać playbook z VPS i zweryfikować wynik.
|
||||||
|
|
||||||
|
## Założenia
|
||||||
|
|
||||||
|
- VPS ma działający alias SSH `mevnode` (lub `mvnode`) do hosta bare-metal.
|
||||||
|
- Wdrożenie docelowe będzie wykonywane z VPS (nie z k3s).
|
||||||
|
- Ten etap nie wdraża jeszcze pełnej konfiguracji Solana; to tylko bootstrap i test ścieżki IaC.
|
||||||
|
|
||||||
|
## Kryteria akceptacji
|
||||||
|
|
||||||
|
- `ansible-playbook --version` działa na VPS.
|
||||||
|
- Playbook kończy się statusem success dla grupy `sol_rpc`.
|
||||||
|
- Wynik zawiera podstawowe fakty hosta i potwierdzenie łączności Ansible.
|
||||||
Reference in New Issue
Block a user