Enable GPUs and secondary disks for TdS net, pull external account file (#5031) (#5053)

This commit is contained in:
Dan Albert
2019-07-12 10:17:46 -06:00
committed by GitHub
parent 81dbe3c49b
commit a2e9d8e0bf
4 changed files with 28 additions and 7 deletions

View File

@ -119,6 +119,9 @@ while [[ -n $1 ]]; do
elif [[ $1 = --fullnode-additional-disk-size-gb ]]; then elif [[ $1 = --fullnode-additional-disk-size-gb ]]; then
maybeFullnodeAdditionalDiskSize="$1 $2" maybeFullnodeAdditionalDiskSize="$1 $2"
shift 2 shift 2
elif [[ $1 == --machine-type* ]]; then # Bypass quoted long args for GPUs
shortArgs+=("$1")
shift
else else
usage "Unknown long option: $1" usage "Unknown long option: $1"
fi fi

View File

@ -469,12 +469,23 @@ deploy() {
tds) tds)
( (
set -x set -x
# TODO: Should we spread the few nodes around multiple zones?
EXTERNAL_ACCOUNTS_FILE_URL=https://raw.githubusercontent.com/solana-labs/tour-de-sol/master/stage1/validator.yml
EXTERNAL_ACCOUNTS_FILE=/tmp/validator.yml
wget ${EXTERNAL_ACCOUNTS_FILE_URL} -O ${EXTERNAL_ACCOUNTS_FILE}
# Multiple V100 GPUs are available in us-west1, us-central1 and europe-west4
# shellcheck disable=SC2068 # shellcheck disable=SC2068
# shellcheck disable=SC2086 # shellcheck disable=SC2086
NO_LEDGER_VERIFY=1 \ NO_LEDGER_VERIFY=1 \
NO_VALIDATOR_SANITY=1 \ NO_VALIDATOR_SANITY=1 \
ci/testnet-deploy.sh -p tds-solana-com -C gce ${GCE_ZONE_ARGS[0]} \ ci/testnet-deploy.sh -p tds-solana-com -C gce \
-G "--machine-type n1-standard-16 --accelerator count=2,type=nvidia-tesla-v100" \
-d pd-ssd \
-z us-west1-a \
-z us-central1-a \
-z europe-west4-a \
-t "$CHANNEL_OR_TAG" -n "$GCE_NODE_COUNT" -c 1 -P -u \ -t "$CHANNEL_OR_TAG" -n "$GCE_NODE_COUNT" -c 1 -P -u \
-a tds-solana-com --letsencrypt tds.solana.com \ -a tds-solana-com --letsencrypt tds.solana.com \
--hashes-per-tick auto \ --hashes-per-tick auto \
@ -483,9 +494,10 @@ deploy() {
${maybeStop:+-S} \ ${maybeStop:+-S} \
${maybeDelete:+-D} \ ${maybeDelete:+-D} \
--stake-internal-nodes 1000000000000 \ --stake-internal-nodes 1000000000000 \
--external-accounts-file /tmp/stakes.yml \ --external-accounts-file "$EXTERNAL_ACCOUNTS_FILE" \
--lamports 8589934592000000000 \ --lamports 8589934592000000000 \
--skip-deploy-update --skip-deploy-update \
--fullnode-additional-disk-size-gb 32000
) )
;; ;;

View File

@ -70,11 +70,14 @@ source "$SOLANA_ROOT"/scripts/configure-metrics.sh
SOLANA_RSYNC_CONFIG_DIR=$SOLANA_ROOT/config SOLANA_RSYNC_CONFIG_DIR=$SOLANA_ROOT/config
# Configuration that remains local # Configuration that remains local
SOLANA_CONFIG_DIR=$SOLANA_ROOT/config-local
# If there is a secondary disk, symlink the config-local dir there
SECONDARY_DISK_MOUNT_POINT=/mnt/extra-disk SECONDARY_DISK_MOUNT_POINT=/mnt/extra-disk
if [[ -d $SECONDARY_DISK_MOUNT_POINT ]]; then if [[ -d $SECONDARY_DISK_MOUNT_POINT ]]; then
SOLANA_CONFIG_DIR=$SECONDARY_DISK_MOUNT_POINT/config-local mkdir -p $SECONDARY_DISK_MOUNT_POINT/config-local
else mkdir -p "$SOLANA_ROOT"
SOLANA_CONFIG_DIR=$SOLANA_ROOT/config-local ln -s $SECONDARY_DISK_MOUNT_POINT/config-local "$SOLANA_ROOT"
fi fi
default_arg() { default_arg() {

View File

@ -159,6 +159,9 @@ while [[ -n $1 ]]; do
elif [[ $1 = --fullnode-additional-disk-size-gb ]]; then elif [[ $1 = --fullnode-additional-disk-size-gb ]]; then
fullNodeAdditionalDiskSizeInGb="$2" fullNodeAdditionalDiskSizeInGb="$2"
shift 2 shift 2
elif [[ $1 == --machine-type* ]]; then # Bypass quoted long args for GPUs
shortArgs+=("$1")
shift
else else
usage "Unknown long option: $1" usage "Unknown long option: $1"
fi fi