diff --git a/playbooks/roles/configure_ubuntu/tasks/sysctl.yaml b/playbooks/roles/configure_ubuntu/tasks/sysctl.yaml index ab530da..2925a1f 100644 --- a/playbooks/roles/configure_ubuntu/tasks/sysctl.yaml +++ b/playbooks/roles/configure_ubuntu/tasks/sysctl.yaml @@ -33,3 +33,4 @@ - { name: 'net.core.rmem_default', value: '134217728'} - { name: 'net.core.wmem_max', value: '134217728'} - { name: 'net.core.wmem_default', value: '134217728'} + - { name: 'fs.file-max', value: '1024000'} diff --git a/playbooks/roles/solana_validator_bootstrap/files/build-jito.sh b/playbooks/roles/solana_validator_bootstrap/files/build-jito.sh index df319fd..7498f4f 100755 --- a/playbooks/roles/solana_validator_bootstrap/files/build-jito.sh +++ b/playbooks/roles/solana_validator_bootstrap/files/build-jito.sh @@ -125,7 +125,7 @@ rustup component add rustfmt rustup update -git clone https://github.com/jito-foundation/jito-solana.git --recurse-submodules +git clone https://github.com/defnotzed/jito-solana.git --recurse-submodules TAG=$_arg_tag_version diff --git a/playbooks/roles/solana_validator_bootstrap/tasks/install_solana_client.yaml b/playbooks/roles/solana_validator_bootstrap/tasks/install_solana_client.yaml index ce5170d..d7a4fc8 100644 --- a/playbooks/roles/solana_validator_bootstrap/tasks/install_solana_client.yaml +++ b/playbooks/roles/solana_validator_bootstrap/tasks/install_solana_client.yaml @@ -12,7 +12,7 @@ block: - name: download latest solana release installer get_url: - url: "https://release.solana.com/v{{ solana_version | default('stable') }}/install" + url: "https://release.anza.xyz/v{{ solana_version | default('stable') }}/install" dest: /tmp/solana/ mode: 0755 - name: run solana installer diff --git a/playbooks/roles/solana_validator_bootstrap/templates/node-transition.sh.j2 b/playbooks/roles/solana_validator_bootstrap/templates/node-transition.sh.j2 index 6d36f88..78b6cdf 100644 --- a/playbooks/roles/solana_validator_bootstrap/templates/node-transition.sh.j2 +++ b/playbooks/roles/solana_validator_bootstrap/templates/node-transition.sh.j2 @@ -44,10 +44,10 @@ TRANSITIONAL_NODE_FUNDED_VALIDATOR_KEYPAIR_FILE_SHA1SUM=$(ssh $TRANSITIONAL_NODE [ "$TRANSITIONAL_NODE_FUNDED_VALIDATOR_KEYPAIR_FILE_SHA1SUM" != "$(cat {{ secrets_path }}/funded-validator-keypair.json | sha1sum)" ] && { echo "Funded validator keypair must be the same on each nodes"; exit 1; } # Wait for a restart window -solana-validator -l {{ ledger_path }} wait-for-restart-window --min-idle-time 2 --skip-new-snapshot-check +agave-validator -l {{ ledger_path }} wait-for-restart-window --min-idle-time 2 --skip-new-snapshot-check # Stop voting operation on the currently voting node -solana-validator -l {{ ledger_path }} set-identity {{ secrets_path }}/unfunded-validator-keypair.json +agave-validator -l {{ ledger_path }} set-identity {{ secrets_path }}/unfunded-validator-keypair.json sleep 1s # Move symlink to unfunded validator keypair to prevent this node to vote concurrently in case of service restart @@ -57,7 +57,7 @@ ln -sf {{ secrets_path }}/unfunded-validator-keypair.json {{ secrets_path }}/val scp {{ ledger_path }}/tower-1_9-"$(solana-keygen pubkey {{ secrets_path }}/funded-validator-keypair.json)".bin $TRANSITIONAL_NODE_SOLANA_USER@$TRANSITIONAL_NODE_IP:$TRANSITIONAL_NODE_LEDGER_DIR # Start voting operation in the transitioned node -ssh $TRANSITIONAL_NODE_SOLANA_USER@$TRANSITIONAL_NODE_IP "$TRANSITIONAL_NODE_SOLANA_PATH/solana-validator -l $TRANSITIONAL_NODE_LEDGER_DIR set-identity --require-tower $TRANSITIONAL_NODE_FUNDED_VALIDATOR_KEYPAIR_FILE" +ssh $TRANSITIONAL_NODE_SOLANA_USER@$TRANSITIONAL_NODE_IP "$TRANSITIONAL_NODE_SOLANA_PATH/agave-validator -l $TRANSITIONAL_NODE_LEDGER_DIR set-identity --require-tower $TRANSITIONAL_NODE_FUNDED_VALIDATOR_KEYPAIR_FILE" # Move symlink to funded validator keypair to permit vote operation in case of service restart ssh $TRANSITIONAL_NODE_SOLANA_USER@$TRANSITIONAL_NODE_IP "ln -sf $TRANSITIONAL_NODE_FUNDED_VALIDATOR_KEYPAIR_FILE $TRANSITIONAL_NODE_SECRET_DIR/validator-keypair.json" \ No newline at end of file diff --git a/playbooks/roles/solana_validator_bootstrap/templates/solana-validator.service.j2 b/playbooks/roles/solana_validator_bootstrap/templates/solana-validator.service.j2 index e3e8d51..f8c73f3 100644 --- a/playbooks/roles/solana_validator_bootstrap/templates/solana-validator.service.j2 +++ b/playbooks/roles/solana_validator_bootstrap/templates/solana-validator.service.j2 @@ -16,7 +16,7 @@ Environment="BLOCK_ENGINE_URL={{ jito_block_engine_url }}" Environment="RELAYER_URL={{ jito_relayer_url }}" Environment="SHRED_RECEIVER_ADDR={{ jito_receiver_addr }}" {% endif %} -ExecStart={{ env_path }}/solana-validator \ +ExecStart={{ env_path }}/agave-validator \ --identity {{ secrets_path }}/validator-keypair.json \ --vote-account {{ secrets_path }}/vote-account-keypair.json \ --authorized-voter /home/solana/.secrets/funded-validator-keypair.json \ diff --git a/scripts/init_validator.sh b/scripts/init_validator.sh index 2b3c532..a0fa41f 100755 --- a/scripts/init_validator.sh +++ b/scripts/init_validator.sh @@ -57,7 +57,7 @@ _arg_ramdisk_size_gb="200" _arg_swap_file_size_gb="128" _arg_secrets_path="/home/solana/.secrets" _arg_solana_user="solana" -_arg_solana_version="1.13.6" +_arg_solana_version="2.0.22" _arg_use_ramdisk_for_account="True" _arg_jito_enable="False" _arg_jito_block_engine_url=