fix(ansible): apply sysctl tuning required by validator

This commit is contained in:
u1
2026-02-07 00:32:39 +01:00
parent 7f1d1022aa
commit b829a462bc
2 changed files with 30 additions and 0 deletions

View File

@@ -72,6 +72,23 @@
- { path: "{{ solana_log_dir }}", owner: "{{ solana_user }}", group: "{{ solana_group }}", mode: "0750" } - { path: "{{ solana_log_dir }}", owner: "{{ solana_user }}", group: "{{ solana_group }}", mode: "0750" }
- { path: "/opt/solana/bin", owner: "root", group: "root", mode: "0755" } - { path: "/opt/solana/bin", owner: "root", group: "root", mode: "0755" }
- name: Deploy Solana sysctl tuning (network buffers)
ansible.builtin.copy:
dest: /etc/sysctl.d/99-solana-rpc.conf
owner: root
group: root
mode: "0644"
content: |
# Required by agave-validator startup checks
net.core.rmem_max = 134217728
net.core.wmem_max = 134217728
register: solana_sysctl_conf
- name: Apply sysctl tuning when changed
ansible.builtin.command: sysctl --system
changed_when: true
when: solana_sysctl_conf.changed
- name: Deploy tmux config (Ctrl+a prefix) - name: Deploy tmux config (Ctrl+a prefix)
ansible.builtin.copy: ansible.builtin.copy:
src: ../files/operator-dotfiles/tmux.conf src: ../files/operator-dotfiles/tmux.conf
@@ -276,6 +293,18 @@
- solana_validator_bin_stat.stat.exists - solana_validator_bin_stat.stat.exists
- solana_identity_stat.stat.exists - solana_identity_stat.stat.exists
- name: Verify solana-rpc is active
ansible.builtin.command: systemctl is-active {{ solana_rpc_service_name }}
register: solana_rpc_is_active
changed_when: false
retries: 10
delay: 3
until: solana_rpc_is_active.stdout.strip() == "active"
when:
- solana_rpc_manage_service | bool
- solana_validator_bin_stat.stat.exists
- solana_identity_stat.stat.exists
- name: Report skipped solana-rpc start due to missing prerequisites - name: Report skipped solana-rpc start due to missing prerequisites
ansible.builtin.debug: ansible.builtin.debug:
msg: msg:

View File

@@ -10,6 +10,7 @@ Cel etapu: domknąć bootstrap uruchomienia `solana-rpc` jako `solana` przez:
- Rozszerzyć playbook o zadania instalacyjne Agave (idempotentnie). - Rozszerzyć playbook o zadania instalacyjne Agave (idempotentnie).
- Dodać provisioning `identity` jako użytkownik `solana`. - Dodać provisioning `identity` jako użytkownik `solana`.
- Dodać minimalny tuning OS wymagany przez startup check (`sysctl`).
- Utrzymać bezpieczny start: usługa uruchamiana tylko przy komplecie prereq. - Utrzymać bezpieczny start: usługa uruchamiana tylko przy komplecie prereq.
- Wykonać testy powdrożeniowe (`systemd`, port, JSON-RPC). - Wykonać testy powdrożeniowe (`systemd`, port, JSON-RPC).