Very minor changes to the config creator for the VFN configurations (vfn.node.yaml). The ID of the VFN needs to be permanent once shared in on-chain discovery info.
This includes txs
tooling for updating on-chain info, plus helpers to print what configs currently exist.
Under profile
include a vfn_ip
field, with the IP address. This will simplify and correctly display networking addresses for the info helpers.
[profile]
account = "foo"
auth_key = "bar"
statement = "baz"
ip = "127.0.0.1"
# NEW FIELD HERE:
vfn_ip = "x.y.z.0"
# install new binaries
cd ~/libra
git fetch
git checkout v5.0.9 -f
make bins install
# On your validator (or wherever your key_store.json lives)
# create settings for the VFN, private fullnode
ol init --vfn
# now copy the vfn.node.yaml file to your fullnode
More details here: Check and change your on-chain config
# what are your keys
ol whoami
# do your keys match what your node is using
ol whoami --check-yaml <path/to/node.yaml>
# what are your current on-chain configs
ol query --val-config
# Update your configs based on what your mnemonic uses
# Note the `-o` which means you are sending this from the "operator" account.
txs -o val-config --val-ip <IP> --vfn-ip <OTHER IP>
# check if those changes persisted and if they are able to be read.
ol query --val-config
This upgrade corrects behavior of vfn.node.yaml config creator, and provides tooling for updating on-chain node discovery information (update IP addresses).
None
A tool was needed to update on-chain discovery (network address) for validators and the validator's VFN fullnode.
- people will change hosting solutions and need to be able to change IP addresses
- Validators are migrating to having separate hosts for validator and fullnodes. All the on-chain discovery must be changed to include the new VFN information.
-
txs
subcommandval-config
which accepts the validator and VFN as arguments. And using mnemonic will submit a tx to change validator configs on-chain. - correct
ol init --vfn
so that the public fullnode ID is permanent, and uses the appropriate key derivation. - cleanup implementation of ValConfigs, so network addresses are consistent.
- Helper to display keys and network info of a mnemonic:
ol whoami
- Helper to display the network IDs used in a node.yaml file:
ol whoami --yaml-path <path>
- clean
onboard
andol init
commands to exist instead of panic. -
onboard val
to ask user to provide IP address of VFN - wizard gets external IP address for user from https://ifconfig.me
- All continuous integration tests passed.
- The diem-code was tested on a "Canary rollout" to three production nodes that were both synced and out of sync.
The Move framework changes are backwards compatible with diem-node
from v5.0.1
Changes to diem-node
is compatible with on-chain state from v5.0.5
.