fix(ansible): apply sysctl tuning required by validator
This commit is contained in:
@@ -72,6 +72,23 @@
|
||||
- { path: "{{ solana_log_dir }}", owner: "{{ solana_user }}", group: "{{ solana_group }}", mode: "0750" }
|
||||
- { 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)
|
||||
ansible.builtin.copy:
|
||||
src: ../files/operator-dotfiles/tmux.conf
|
||||
@@ -276,6 +293,18 @@
|
||||
- solana_validator_bin_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
|
||||
ansible.builtin.debug:
|
||||
msg:
|
||||
|
||||
@@ -10,6 +10,7 @@ Cel etapu: domknąć bootstrap uruchomienia `solana-rpc` jako `solana` przez:
|
||||
|
||||
- Rozszerzyć playbook o zadania instalacyjne Agave (idempotentnie).
|
||||
- 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.
|
||||
- Wykonać testy powdrożeniowe (`systemd`, port, JSON-RPC).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user