118c3b3cfe
``` nns (unknown): 7061fbd31562664b58f422c3dee4acfd70dba8af alphabet 0 (v0.12.1): 2392438eb31100857c0f161c66791872b249aa13 alphabet 1 (v0.12.1): 83ef4226d5d6519ca9c99a5de13b1b5ca223a6ad alphabet 2 (v0.12.1): 6250927beaa9aa5a00171379dcb7187b0c91d17d alphabet 3 (v0.12.1): 1d6a2519ba41a139b2ced1bfd5013938271a7578 alphabet 4 (v0.12.1): b65fc7a3c31cf57a90d7eb1c0e9909e4ca69133c alphabet 5 (v0.12.1): f95b6ff8cd3b027c9911c18115518ad8c5d2f591 alphabet 6 (v0.12.1): 5b17c579bf56884fd68af152432b3b5aee7aee76 audit (v0.12.1): 85fe181f4aa3cbdc94023d97c69001ece0730398 balance (v0.12.1): dc1ec98d9d0c5f9dfade16144defe08cffc5ca55 container (v0.12.1): 1b6e68d299b570e1cb7e86eadfdc06aa2e8e0cc5 neofsid (v0.12.1): 0a64ce753653cc97c0467e1334d9d3678ca8c682 netmap (v0.12.1): 7c5bdb23e36cc7cce95bf42f3ab9e452c2501df1 reputation (v0.12.1): 7ad824fd1eeb1565be2cee3889214b9aa605d2fc ``` Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru> |
||
---|---|---|
.. | ||
docs | ||
internal/modules | ||
main.go | ||
README.md |
NeoFS Admin Tool
Overview
Admin tool provides an easier way to deploy and maintain private installation of NeoFS. Private installation provides a set of N3 consensus nodes, NeoFS Alphabet, and Storage nodes. Admin tool generates consensus keys, initializes side chain, and provides functions to update the network and register new Storage nodes.
Build
To build binary locally, use make bin/neofs-adm
command.
For clean build inside a docker container use make docker/bin/neofs-adm
.
Build docker image with make image-adm
.
At NeoFS private install deployment, neofs-adm requires compiled NeoFS contracts. Find them in the latest release of neofs-contract repository.
Commands
Config
Config section provides init
command that creates configuration file for the
private installation deployment and updates. Config file is optional, all
parameters can be passed by arguments or read from standard input (wallet
passwords).
Config example:
rpc-endpoint: https://address:port # side chain RPC node endpoint
alphabet-wallets: /path # path to consensus node / alphabet wallets storage
network:
max_object_size: 67108864 # max size of single NeoFS object, bytes
epoch_duration: 240 # duration of NeoFS epoch in blocks, consider block generation frequency in side chain
basic_income_rate: 0 # basic income rate, for private consider 0
fee:
audit: 0 # network audit fee, for private installation consider 0
candidate: 0 # inner ring candidate registration fee, for private installation consider 0
container: 0 # container creation fee, for private installation consider 0
container_alias: 0 # container nice-name registration fee, for private installation consider 0
withdraw: 0 # withdraw fee, for private installation consider 0
credentials: # passwords for consensus node / alphabet wallets
az: password1
buky: password2
vedi: password3
glagoli: password4
dobro: password5
yest: password6
zhivete: password7
Morph
Network deployment
-
generate-alphabet
generates a set of wallets for consensus and Alphabet nodes. -
init
initializes side chain by deploying smart contracts and setting provided NeoFS network configuration. -
generate-storage-wallet
generates wallet for the Storage node that is ready for deployment. It also transfers a bit of side chain GAS, so this wallet can be used for NeoFS bootstrap.
Network maintenance
-
force-new-epoch
increments NeoFS epoch number and executes new epoch handlers in NeoFS nodes. -
refill-gas
transfers side chain GAS to the specified wallet. -
update-contracts
updates contracts to a new version.
Container migration
If the network has to be redeployed, these commands will migrate all container meta info. These commands do not migrate actual objects.
-
dump-containers
saves all containers and metadata registered in the container contract to a file. -
restore-containers
restores previously saved containers by their repeated registration in container contract.
Network info
-
dump-config
prints NeoFS network configuration. -
dump-hashes
prints NeoFS contract addresses stored in NNS.
Private network deployment
Read step-by-step guide of private storage deployment in docs.