forked from TrueCloudLab/frostfs-node
parent
213bbcbf2b
commit
f81ecbe8db
|
@ -1,7 +1,7 @@
|
||||||
# N3 testnet RC1 storage node configuration
|
# N3 testnet RC2 storage node configuration
|
||||||
|
|
||||||
There is a prepared configuration for NeoFS storage node deployment in
|
There is a prepared configuration for NeoFS storage node deployment in
|
||||||
N3 testnet RC1. The easiest way to deploy storage node is to use prepared
|
N3 testnet RC2. The easiest way to deploy storage node is to use prepared
|
||||||
docker image of storage node and run it with docker-compose.
|
docker image of storage node and run it with docker-compose.
|
||||||
|
|
||||||
## Build image
|
## Build image
|
||||||
|
@ -14,12 +14,12 @@ However, if you need to rebuild it for some reason, run
|
||||||
$ make image-storage-testnet
|
$ make image-storage-testnet
|
||||||
...
|
...
|
||||||
Successfully built 80ef4e3c488d
|
Successfully built 80ef4e3c488d
|
||||||
Successfully tagged nspccdev/neofs-storage-testnet:0.18.0-dirty
|
Successfully tagged nspccdev/neofs-storage-testnet:0.20.0-dirty
|
||||||
```
|
```
|
||||||
|
|
||||||
## Deploy node
|
## Deploy node
|
||||||
|
|
||||||
To run storage node in N3 testnet RC1 environment you should deposit GAS assets,
|
To run storage node in N3 testnet RC2 environment you should deposit GAS assets,
|
||||||
update docker-compose file and start the node.
|
update docker-compose file and start the node.
|
||||||
|
|
||||||
### Deposit
|
### Deposit
|
||||||
|
@ -27,55 +27,48 @@ update docker-compose file and start the node.
|
||||||
Storage node holder should deposit assets because it generates a bit of
|
Storage node holder should deposit assets because it generates a bit of
|
||||||
side chain GAS in node's wallet. Side chain GAS used to send bootstrap tx.
|
side chain GAS in node's wallet. Side chain GAS used to send bootstrap tx.
|
||||||
|
|
||||||
First obtain GAS in N3 testnet RC1 chain. You can do that with
|
First obtain GAS in N3 testnet RC2 chain. You can do that with
|
||||||
[faucet](https://neowish.ngd.network/neo3/) service.
|
[faucet](https://neowish.ngd.network) service.
|
||||||
|
|
||||||
|
Then make a deposit by transferring GAS to NeoFS contract in N3 testnet RC2.
|
||||||
|
You can provide scripthash in the `data` argument of transfer tx to make a
|
||||||
|
deposit to specified account. Otherwise deposit is made to tx sender.
|
||||||
|
|
||||||
Then make a deposit by invoking `deposit` method of NeoFS contract in N3 testnet
|
NeoFS contract scripthash in NEO testnet RC2 is `088c76a08c7b4546582fe95df1ba58f61f165645`,
|
||||||
RC1. There are three arguments in this method:
|
so the address is `NSEawP75SPnnH9sRtk18xJbjYGHu2q5m1W`
|
||||||
- scripthash of the wallet
|
|
||||||
- amount of GAS (in decimal)
|
|
||||||
- scripthash of the storage node wallet.
|
|
||||||
|
|
||||||
|
See a deposit example with `neo-go`:
|
||||||
NeoFS contract scripthash in NEO testnet RC1 is `37a32e1bf20ed5141bc5748892a82f14e75a8e22`
|
|
||||||
|
|
||||||
Last argument can be empty if you want to use
|
|
||||||
wallet key as storage node key. See a deposit example with `neo-go`:
|
|
||||||
|
|
||||||
```
|
```
|
||||||
neo-go contract invokefunction -r https://rpc1.n3.nspcc.ru:20331 \
|
neo-go wallet nep17 transfer -w wallet.json -r https://rpc1.n3.nspcc.ru:20331 \
|
||||||
-w wallet.json -a NcrE6C1mvScQpAnFctK1Mw7P7i1buLCKav \
|
--from NXxRAFPqPstaPByndKMHuC8iGcaHgtRY3m \
|
||||||
37a32e1bf20ed5141bc5748892a82f14e75a8e22 \
|
--to NSEawP75SPnnH9sRtk18xJbjYGHu2q5m1W \
|
||||||
deposit \
|
--token GAS \
|
||||||
0cbd9d3c3e3a3d12ff5b8bd0d3a0548c6eeac4b9 \
|
--amount 1
|
||||||
int:1 \
|
|
||||||
bytes: \
|
|
||||||
-- 0cbd9d3c3e3a3d12ff5b8bd0d3a0548c6eeac4b9
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### Configure
|
### Configure
|
||||||
|
|
||||||
Then configure docker-compose.yml file. Change endpoints values. Both of them
|
Then configure docker-compose.yml file. Change endpoints values. Both of them
|
||||||
should contain your public IP.
|
should contain your **public** IP.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
environment:
|
environment:
|
||||||
- NEOFS_NODE_ADDRESS=192.168.140.1:36512
|
- NEOFS_NODE_ADDRESS=65.52.183.157:36512
|
||||||
- NEOFS_GRPC_ENDPOINT=192.168.140.1:36512
|
- NEOFS_GRPC_ENDPOINT=65.52.183.157:36512
|
||||||
```
|
```
|
||||||
|
|
||||||
Also set up your [UN/LOCODE](https://unece.org/trade/cefact/unlocode-code-list-country-and-territory)
|
Set up your [UN/LOCODE](https://unece.org/trade/cefact/unlocode-code-list-country-and-territory)
|
||||||
attribute.
|
attribute.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
environment:
|
environment:
|
||||||
- NEOFS_NODE_ADDRESS=192.168.140.1:36512
|
- NEOFS_NODE_ADDRESS=65.52.183.157:36512
|
||||||
- NEOFS_GRPC_ENDPOINT=192.168.140.1:36512
|
- NEOFS_GRPC_ENDPOINT=65.52.183.157:36512
|
||||||
- NEOFS_NODE_ATTRIBUTE_1=UN-LOCODE:RU LED
|
- NEOFS_NODE_ATTRIBUTE_1=UN-LOCODE:RU LED
|
||||||
```
|
```
|
||||||
|
|
||||||
You can check validity of your UN/LOCODE attribute in
|
You can validate UN/LOCODE attribute in
|
||||||
[NeoFS LOCODE database](https://github.com/nspcc-dev/neofs-locode-db/releases/tag/v0.1.0)
|
[NeoFS LOCODE database](https://github.com/nspcc-dev/neofs-locode-db/releases/tag/v0.1.0)
|
||||||
with neofs-cli.
|
with neofs-cli.
|
||||||
|
|
||||||
|
@ -89,7 +82,7 @@ Coordinates: 59.53, 30.15
|
||||||
```
|
```
|
||||||
|
|
||||||
It is recommended to pass node's key as a file. To do so convert your wallet
|
It is recommended to pass node's key as a file. To do so convert your wallet
|
||||||
WIF to 32-byte hex (via `neofs-cli` for example) and save it in file.
|
WIF to 32-byte hex (via `neofs-cli` for example) and save it to file.
|
||||||
|
|
||||||
```
|
```
|
||||||
// Print WIF in a 32-byte hex format
|
// Print WIF in a 32-byte hex format
|
||||||
|
@ -97,9 +90,9 @@ $ neofs-cli util keyer Kwp4Q933QujZLUCcn39tzY94itNQJS4EjTp28oAMzuxMwabm3p1s
|
||||||
PrivateKey 11ab917cd99170cb8d0d48e78fca317564e6b3aaff7f7058952d6175cdca0f56
|
PrivateKey 11ab917cd99170cb8d0d48e78fca317564e6b3aaff7f7058952d6175cdca0f56
|
||||||
PublicKey 02be8b2e837cab232168f5c3303f1b985818b7583682fb49026b8d2f43df7c1059
|
PublicKey 02be8b2e837cab232168f5c3303f1b985818b7583682fb49026b8d2f43df7c1059
|
||||||
WIF Kwp4Q933QujZLUCcn39tzY94itNQJS4EjTp28oAMzuxMwabm3p1s
|
WIF Kwp4Q933QujZLUCcn39tzY94itNQJS4EjTp28oAMzuxMwabm3p1s
|
||||||
Wallet3.0 NVKYb9UHYv9mf6gY6CkBgR5ZYPhtx5d9sr
|
Wallet3.0 Nfzmk7FAZmEHDhLePdgysQL2FgkJbaEMpQ
|
||||||
ScriptHash3.0 65d667398a35820f421630e49f73d7ea34952e67
|
ScriptHash3.0 dffe39998f50d42f2e06807866161cd0440b4bdc
|
||||||
ScriptHash3.0BE 672e9534ead7739fe43016420f82358a3967d665
|
ScriptHash3.0BE dc4b0b44d01c16667880062e2fd4508f9939fedf
|
||||||
|
|
||||||
// Save 32-byte hex into a file
|
// Save 32-byte hex into a file
|
||||||
$ echo '11ab917cd99170cb8d0d48e78fca317564e6b3aaff7f7058952d6175cdca0f56' | xxd -r -p > my_wallet.key
|
$ echo '11ab917cd99170cb8d0d48e78fca317564e6b3aaff7f7058952d6175cdca0f56' | xxd -r -p > my_wallet.key
|
||||||
|
@ -112,9 +105,10 @@ Then specify path to this file in docker-compose
|
||||||
- ./my_wallet.key:/node.key
|
- ./my_wallet.key:/node.key
|
||||||
```
|
```
|
||||||
|
|
||||||
You also can provide WIF directly with
|
Another way is to provide WIF directly with env in docker-compose.
|
||||||
`NEOFS_NODE_KEY=Kwp4Q933QujZLUCcn39tzY94itNQJS4EjTp28oAMzuxMwabm3p1s`
|
```
|
||||||
env in docker-compose.
|
NEOFS_NODE_KEY=Kwp4Q933QujZLUCcn39tzY94itNQJS4EjTp28oAMzuxMwabm3p1s
|
||||||
|
```
|
||||||
|
|
||||||
### Start
|
### Start
|
||||||
|
|
||||||
|
|
|
@ -20,16 +20,15 @@ morph:
|
||||||
- wss://rpc7.morph.fs.neo.org:40341/ws
|
- wss://rpc7.morph.fs.neo.org:40341/ws
|
||||||
dial_timeout: 20s
|
dial_timeout: 20s
|
||||||
|
|
||||||
bootstrap:
|
|
||||||
periodic:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
accounting:
|
accounting:
|
||||||
scripthash: 2835a2d2a28ffc8866840df7aafda5780c7514a3
|
scripthash: 0fc02c693d59a7cde9926c7fc4bec6af310bda65
|
||||||
container:
|
container:
|
||||||
scripthash: 08ebc0b968cdce2851f1a1d2fe9340e77b1f0f6c
|
scripthash: 16d1dd8b2eaf3bed5c6f469a8748de95a10ee1ed
|
||||||
netmap:
|
netmap:
|
||||||
scripthash: 600270a6fd666dc137fa3e62c9d2606b75aeb298
|
scripthash: 5283a843ee68f8fa9ee664df6b495054be5738d4
|
||||||
|
reputation:
|
||||||
|
scripthash: 3a5e05bae28049d8c1b8f218b0324e63816713c9
|
||||||
|
|
||||||
node:
|
node:
|
||||||
key: /node.key
|
key: /node.key
|
||||||
attribute_0: Deployed:SelfHosted
|
attribute_0: Deployed:SelfHosted
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
version: "2.4"
|
version: "2.4"
|
||||||
services:
|
services:
|
||||||
storage01:
|
storage01:
|
||||||
image: nspccdev/neofs-storage-testnet:0.18.0
|
image: nspccdev/neofs-storage-testnet:0.20.0
|
||||||
container_name: neofs-testnet
|
container_name: neofs-testnet
|
||||||
network_mode: host
|
network_mode: host
|
||||||
restart: always
|
restart: always
|
||||||
|
|
Loading…
Reference in New Issue