remove redundant documents from /docs
This commit is contained in:
3 files changed
-120
No files matched your search
@@ -1,85 +0,0 @@
|
|||||||
# Experimental etcd support in LND
|
|
||||||
|
|
||||||
With the recent introduction of the `kvdb` interface LND can support multiple
|
|
||||||
database backends allowing experimentation with the storage model as well as
|
|
||||||
improving robustness through e.g. replicating essential data.
|
|
||||||
|
|
||||||
Building on `kvdb` in v0.11.0 we're adding experimental [etcd](https://etcd.io)
|
|
||||||
support to LND. As this is an unstable feature heavily in development, it still
|
|
||||||
has *many* rough edges for the time being. It is therefore highly recommended to
|
|
||||||
not use LND on `etcd` in any kind of production environment especially not
|
|
||||||
on bitcoin mainnet.
|
|
||||||
|
|
||||||
## Building LND with etcd support
|
|
||||||
|
|
||||||
To create a dev build of LND with etcd support use the following command:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
$ make tags="kvdb_etcd"
|
|
||||||
```
|
|
||||||
|
|
||||||
The important tag is the `kvdb_etcd`, without which the binary is built without
|
|
||||||
the etcd driver.
|
|
||||||
|
|
||||||
For development, it is advised to set the `GOFLAGS` environment variable to
|
|
||||||
`"-tags=test"` otherwise `gopls` won't work on code in `channeldb/kvdb/etcd`
|
|
||||||
directory.
|
|
||||||
|
|
||||||
## Running a local etcd instance for testing
|
|
||||||
|
|
||||||
To start your local etcd instance for testing run:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
$ ./etcd \
|
|
||||||
--auto-tls \
|
|
||||||
--advertise-client-urls=https://127.0.0.1:2379 \
|
|
||||||
--listen-client-urls=https://0.0.0.0:2379 \
|
|
||||||
--max-txn-ops=16384 \
|
|
||||||
--max-request-bytes=104857600
|
|
||||||
```
|
|
||||||
|
|
||||||
The large `max-txn-ops` and `max-request-bytes` values are currently required in
|
|
||||||
case of running LND with the full graph in etcd. These parameters have been
|
|
||||||
tested to work with testnet LND.
|
|
||||||
|
|
||||||
## Configuring LND to run on etcd
|
|
||||||
|
|
||||||
To run LND with etcd, additional configuration is needed, specified either
|
|
||||||
through command line flags or in `lnd.conf`.
|
|
||||||
|
|
||||||
Sample command line:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
$ ./lnd-debug \
|
|
||||||
--db.backend=etcd \
|
|
||||||
--db.etcd.host=127.0.0.1:2379 \
|
|
||||||
--db.etcd.certfile=/home/user/etcd/bin/default.etcd/fixtures/client/cert.pem \
|
|
||||||
--db.etcd.keyfile=/home/user/etcd/bin/default.etcd/fixtures/client/key.pem \
|
|
||||||
--db.etcd.insecure_skip_verify
|
|
||||||
```
|
|
||||||
|
|
||||||
Sample `lnd.conf` (with other setting omitted):
|
|
||||||
|
|
||||||
```text
|
|
||||||
[db]
|
|
||||||
db.backend=etcd
|
|
||||||
db.etcd.host=127.0.0.1:2379
|
|
||||||
db.etcd.cerfile=/home/user/etcd/bin/default.etcd/fixtures/client/cert.pem
|
|
||||||
db.etcd.keyfile=/home/user/etcd/bin/default.etcd/fixtures/client/key.pem
|
|
||||||
db.etcd.insecure_skip_verify=true
|
|
||||||
```
|
|
||||||
|
|
||||||
Optionally users can specify `db.etcd.user` and `db.etcd.pass` for db user
|
|
||||||
authentication. If the database is shared, it is possible to separate our data
|
|
||||||
from other users by setting `db.etcd.namespace` to an (already existing) etcd
|
|
||||||
namespace. In order to test without TLS, users are able to set `db.etcd.disabletls`
|
|
||||||
flag to `true`.
|
|
||||||
|
|
||||||
## Migrating existing channel.db to etcd
|
|
||||||
|
|
||||||
This is currently not supported.
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
As mentioned before this is an experimental feature, and with that your data
|
|
||||||
may be lost. Use at your own risk!
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
# NAT Traversal
|
|
||||||
|
|
||||||
`lnd` has support for NAT traversal using a number of different techniques. At
|
|
||||||
the time of writing this documentation, UPnP and NAT-PMP are supported. NAT
|
|
||||||
traversal can be enabled through `lnd`'s `--nat` flag.
|
|
||||||
|
|
||||||
```shell
|
|
||||||
$ lnd ... --nat
|
|
||||||
```
|
|
||||||
|
|
||||||
On startup, `lnd` will try the different techniques until one is found that's
|
|
||||||
supported by your hardware. The underlying dependencies used for these
|
|
||||||
techniques rely on using system-specific binaries in order to detect your
|
|
||||||
gateway device's address. This is needed because we need to be able to reach the
|
|
||||||
gateway device to determine if it supports the specific NAT traversal technique
|
|
||||||
currently being tried. Because of this, due to uncommon setups, it is possible
|
|
||||||
that these binaries are not found in your system. If this is case, `lnd` will
|
|
||||||
exit stating such error.
|
|
||||||
|
|
||||||
As a bonus, `lnd` spawns a background thread that automatically detects IP
|
|
||||||
address changes and propagates the new address update to the rest of the
|
|
||||||
network. This is especially beneficial for users who were provided dynamic IP
|
|
||||||
addresses from their internet service provider.
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
#!/usr/bin/env ruby
|
|
||||||
|
|
||||||
File.open("INSTALL.md", 'r') do |f|
|
|
||||||
f.each_line do |line|
|
|
||||||
forbidden_words = ['Table of contents', 'define', 'pragma']
|
|
||||||
next if !line.start_with?("#") || forbidden_words.any? { |w| line =~ /#{w}/ }
|
|
||||||
|
|
||||||
title = line.gsub("#", "").strip
|
|
||||||
href = title.gsub(" ", "-").downcase
|
|
||||||
puts " " * (line.count("#")-1) + "* [#{title}](\##{href})"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
Reference in new issue
Block a user