Detailed explanation of miner configuration file

Lotus Miner configuration file, which details the meaning of the options contained therein.

The Lotus Miner configuration is created after the initialization step in the installation step and is placed in ~ /. When defined lotusminer/config.toml or $lotus_ MINER_ PATH/config. In toml.

In order for any configuration changes to take effect, the miner must be restarted.

API [modified]

You need to change the LAN address of your own intranet

[API]
  # Miner API binding address
  ListenAddress = "/ip4/127.0.0.1/tcp/2345/http"
  # This should be set to an API address that can be seen from the outside
  RemoteListenAddress = "127.0.0.1:2345"
  # General network timeout value
  Timeout = "30s"

As you can see, the listening address is bound to the local loopback interface by default. If you need to open access to the miner API to other machines, you need to set this to the IP address of the network interface to be used, or 0.0.0.0 (indicating "all interfaces"). Note that even if exposed, API access is still protected by JWT tokens.

Configure RemoteListenAddress to be used by other nodes to access the values of this API. Usually, it is the miner's IP address and API port, but depending on your settings (proxy, public IP, etc.), it may be a different IP.

Sealing [modified]

This section controls some behaviors related to sector sealing:
When there are few worker machines, it should be changed, otherwise it cannot be submitted
BatchPreCommits = false
AggregateCommits = false

[Sealing ]

#The upper limit refers to how many industries can wait for more transactions to be packaged before blocking starts at any given time.
#If the miner accepts multiple transactions at the same time, maxwaitdeasectors with the most new departments will be created.
#If multiple MaxWaitDealAssectors transactions are accepted in parallel, only MaxWaitDealAssectors transactions are processed in parallel
#Please note that setting this number too high relative to the transaction uptake rate may lead to inefficient sector packaging
MaxWaitDeassectors=2
#The upper limit of how many sectors can be sealed simultaneously when creating a new CC sector (0 = unlimited)
MaxSealingSectors=0
#When creating a new department with transactions, the upper limit of how many departments can be sealed at the same time (0 = unlimited)
MaxSealingSectorsOrderals=0
#For some time, a newly established department will wait for more transactions to be packaged before it begins to seal.
#A fully filled sector will begin sealing immediately
WaitDealsDelay="6h0m0s"
#Unsealed copies of transaction data are retained regardless of whether the customer requires them to be retained. This makes the miners
#It avoids the relatively high cost of unsealing data at the cost of occupying more storage space in the future
AlwaysKeyUnsealedCopy=true
#Run sector termination before submitting sector proof to the chain
finalizeeEarly=false
#Enable / disable pre commit batch (effective after nv13)
BatchPreCommits=true
#The maximum pre commit batch size is 256 sectors - the batch will be sent immediately above this size
MaxPreCommitBatch=256
#How long does it take to submit a batch after the minimum batch size is exceeded
PreCommitBatchWait="24h0m0s"
#Time buffer to force batch commit before sectors / transactions in the batch begin to expire
PreCommitBatchSlack="3h0m0s"
#Enable / disable commit aggregation (effective after nv13)
AggregateCommits=true
#Minimum batch submission size, no less than 4
MinCommitBatch=4
#Maximum batch commit size up to 819 sectors - batches will be sent immediately above this size
 Maximum submission batch=819
#How long does it take to submit a batch after the minimum batch size is exceeded
CommitBatchWait="24h0m0s"
#Time buffer to force batch submission before the Department / transaction in the batch begins to expire
CommitBatchSlack="1h0m0s"
#The basic cost of the network. If it is lower than this cost, stop performing submission aggregation instead of submitting certificates to the chain separately
AggregateAboveBaseFee=0.00000000015#0.15nanoFIL
TerminateBatchMax =100
TerminateBatchMin  =1
TerminateBatchWait="5mos"

[modified]

AllowAddPiece = false
AllowPreCommit1 = false
AllowPreCommit2 = false
AllowCommit = false
AllowUnseal = false
AllowMyScheduler = false
The storage sector controls whether miners can perform some sealing operations. Depending on the settings and the use of additional sealing workers, you may need to modify some options.

[Storage]
  # Upper bound on how many sectors can be fetched in parallel by the storage system at a time
  ParallelFetchLimit = 10
  # Sealing steps that the miner can perform itself. Sometimes we have a dedicated seal worker to do them and do not want the miner to commit any resources for this.
  AllowAddPiece = true
  AllowPreCommit1 = true
  AllowPreCommit2 = true
  AllowCommit = true
  AllowUnseal = true

cost

The fee section allows you to set gas consumption limits for different messages submitted by miners to the chain:

[Fees]
  # Maximum fees to pay
  MaxPreCommitGasFee = "0.025 FIL"
  MaxCommitGasFee = "0.05 FIL"
  MaxTerminateGasFee = "0.5 FIL"
  # This is a high-value operation, so the default fee is higher.
  MaxWindowPoStGasFee = "5 FIL"
  MaxPublishDealsFee = "0.05 FIL"
  MaxMarketBalanceAddFee = "0.007 FIL"
  [Fees.MaxPreCommitBatchGasFee]
      Base = "0 FIL"
      PerSector = "0.02 FIL"
  [Fees.MaxCommitBatchGasFee]
      Base = "0 FIL"
      PerSector = "0.03 FIL" 

According to the network congestion, the basic cost of messages may increase or decrease. Your gas limit must be greater than the basic cost of the message to be included. However, when the basic cost is very high, a very large maximum cost will lead to rapid combustion of funds, because the miner will automatically submit messages during normal operation, so please pay attention to this. There is also a need for more funds available than any maximum cost set, even if the actual cost will be much lower than the maximum cost set.

Set the maximum cost you are willing to pay for the encapsulation of each sector, maxprecommitbatchgasfee PerSector/MaxCommitBatchGasFee. Perfector to avoid unexpected high costs.

Note: the current maxcommitbatchgasfee Proof that persector is sufficient to aggregate six sectors. Adjust according to your operation. If the value is too low, the message may wait for a long time in the memory pool. If you don't have enough money, no message will be sent.

address

The address section allows the user to specify other addresses for sending messages. When the network cost is high, this helps to reduce the queue head blocking of important messages. For more details, see the miner's address section.

[Addresses]
  # Addresses to send PreCommit messages from
  PreCommitControl = []
  # Addresses to send Commit messages from
  CommitControl = []
  # Disable the use of the owner address for messages which are sent automatically.
  # This is useful when the owner address is an offline/hardware key
  DisableOwnerFallback = false
  # Disable the use of the worker address for messages for which it's possible to use other control addresses
  DisableWorkerFallback = false


Libp2p

[it seems that it is used for transactions and does not generate external orders, so it should not need to be adjusted] this section configures the miner's embedded Libp2p node. As described in the setting instructions, it is very important to use the public IP and fixed port of the miner to adjust this part:

[Libp2p]
  # Binding address of libp2p host. 0 indicates random port.
  # Type: multi address string array
  ListenAddresses = ["/ip4/0.0.0.0/tcp/0", "/ip6/::/tcp/0"]
  # Insert any address you want to specify
  # Announce to other nodes here. Otherwise, they were guessed.
  # Type: multi address string array
  AnnounceAddresses = []
  # Insert any address to avoid receiving announcements here.
  # Type: multi address string array
  NoAnnounceAddresses = []
  # Connection manager settings to limit the number of links on your machine.
  ConnMgrLow = 150
  ConnMgrHigh = 180
  ConnMgrGrace = "20s"

If the number of established connections exceeds the value set for ConnMgrHigh, the connection manager starts trimming existing connections until the value set for ConnMgrLow is reached. Connections younger than ConnMgrGrace will be retained.

Pubsub

[Pubsub]
  # Normally, you will not run the pubsub boot node, so leave it false
  Bootstrapper = false
  # FIXME
  RemoteTracer = ""
  #DirectPeers specifies a peer with a direct peer protocol. These peers are connected outside the grid and all (valid) messages are forwarded to them unconditionally. The router will maintain an open connection with these peers. Note that peer-to-peer protocols should be mutually beneficial to direct peers configured symmetrically at both ends.
  # Type: multi address peerinfo string array, which must contain peerid (/p2p/12D3K...)
  DirectPeers = []

Dealmaking

This section controls the parameters used to store and retrieve transactions:

[Dealmaking]
  # Miners can accept online transactions
  ConsiderOnlineStorageDeals = true
  # Miners can accept offline transactions
  ConsiderOfflineStorageDeals = true
  # Miners can accept retrieval transactions
  ConsiderOnlineRetrievalDeals = true
  # Miners can accept offline retrieval transactions
  ConsiderOfflineRetrievalDeals = true
  # Miners can accept verified transactions
  ConsiderVerifiedStorageDeals = true
  # Miners can accept unauthenticated transactions
  ConsiderUnverifiedStorageDeals = true
  # CID list of data to reject when making a transaction
  PieceCidBlocklist = []
  # The maximum expected time required to put a transaction into a sealed sector. This includes the time when the transaction needs to be transferred and published. Before allocating to sectors.
  # For more information, see below.
  ExpectedSealDuration = "24h0m0s"
  # When transactions are ready to be published, wait for more time for transactions to be published, and then publish them all as a batch
  PublishMsgPeriod = "1h0m0s"
  # Maximum number of transactions contained in a single published transaction message
  MaxDealsPerPublishMsg = 8

  # Commands for fine-grained evaluation of stored transactions
  Filter = "/absolute/path/to/storage filter program"

  # Commands for fine-grained evaluation of retrieved transactions
  RetrievalFilter = "/absolute/path/to/retrieval filter program"

Keywords: Filecoin

Added by nemesis1931 on Mon, 10 Jan 2022 21:51:51 +0200