BigchainDB配置


每个BigchainDB配置项都有两个地方可以设置,环境变量和配置文件。如:配置文件中的 database.host和环境变量的 BIGCHAINDB_DATABASE_HOST一样。
database.portBIGCHAINDB_DATABASE_PORT
database.keyfile_passphraseBIGCHAINDB_DATABASE_KEYFILE_PASSPHRASE
server.bindBIGCHAINDB_SERVER_BIND

配置项的取值遵循规则:

  1. 先取环境变量的值
  2. 再检查配置文件的值
  3. 都没有值的情况下使用默认值

默认配置文件是$HOME/.bigchaindb,或用命令bigchaindb -c path/to/config_file.json start指定配置文件运行,或指定BIGCHAINDB_CONFIG_PATH变量的值。

database.*

数据库设置,目前只支持MongoDB。

参数说明
database.backend当前只允许localmongodb
database.host数据库主机名
database.port数据库端口
database.nameMongoDB中数据库名,如bigchain
database.connection_timeout数据库连接超时
database.max_tries数据库连接失败重试次数,0为不断重试
database.replicasetMongoDB副本名,默认为null,BigchainDB 2.0+每个BigchainDB节点都有自己的独立MongoDB数据库,不需要复制集
database.ssltruefalse

数据库认证的三种方式:

  1. 没有认证
  2. 用户名/密码认证:
    创建MongoDB用户:
use <database.name>
db.createUser({user: "<database.login>", pwd: "<database.password>", roles: [{role: "readWrite", db: "<database.name>"}]})

database.ca_cert, database.certfile, database.keyfile, database.crlfile, database.keyfile_passphrase使用默认值。

  1. x.509认证
    MongoDB必须是x.509认证。database.ca_cert,database.certfile, database.keyfiledatabase.crlfile 指向CA证书、签名、私钥和认证文件。 database.keyfile_passphrase 是用明文指定的私钥解密密码。
    例子:
    环境变量:
export BIGCHAINDB_DATABASE_BACKEND=localmongodb
export BIGCHAINDB_DATABASE_HOST=localhost
export BIGCHAINDB_DATABASE_PORT=27017
export BIGCHAINDB_DATABASE_NAME=database8
export BIGCHAINDB_DATABASE_CONNECTION_TIMEOUT=5000
export BIGCHAINDB_DATABASE_MAX_TRIES=3

配置文件:

"database": {
    "backend": "localmongodb",
    "host": "localhost",
    "port": 27017,
    "name": "bigchain",
    "connection_timeout": 5000,
    "max_tries": 3,
    "replicaset": null,
    "login": null,
    "password": null
    "ssl": false,
    "ca_cert": null,
    "certfile": null,
    "keyfile": null,
    "crlfile": null,
    "keyfile_passphrase": null,
}

server.*

  • server.bind 默认值0.0.0.0:9984[::]:9984
  • server.loglevel 日志输出级别
  • server.workers 工作进程数量

环境变量:

export BIGCHAINDB_SERVER_BIND=0.0.0.0:9984
export BIGCHAINDB_SERVER_LOGLEVEL=debug
export BIGCHAINDB_SERVER_WORKERS=5

配置文件:

"server": {
    "bind": "0.0.0.0:9984",
    "loglevel": "debug",
    "workers": 5,
}

wsserver.*

用于 WebSocket Event Stream API。
wsserver.schemewswss(ssl),

export BIGCHAINDB_WSSERVER_SCHEME=ws
export BIGCHAINDB_WSSERVER_HOST=0.0.0.0
export BIGCHAINDB_WSSERVER_PORT=9985
"wsserver": {
    "scheme": "wss",
    "host": "0.0.0.0",
    "port": 65000
}

对于wss,如下:

export BIGCHAINDB_WSSERVER_ADVERTISED_SCHEME=wss
export BIGCHAINDB_WSSERVER_ADVERTISED_HOST=mybigchaindb.com
export BIGCHAINDB_WSSERVER_ADVERTISED_PORT=443

或者

"wsserver": {
    "advertised_scheme": "wss",
    "advertised_host": "mybigchaindb.com",
    "advertised_port": 443
}

log.*

{
    "log": {
        "file": "/var/log/bigchaindb.log",
        "error_file": "/var/log/bigchaindb-errors.log",
        "level_console": "info",
        "level_logfile": "info",
        "datefmt_console": "%Y-%m-%d %H:%M:%S",
        "datefmt_logfile": "%Y-%m-%d %H:%M:%S",
        "fmt_console": "%(asctime)s [%(levelname)s] (%(name)s) %(message)s",
        "fmt_logfile": "%(asctime)s [%(levelname)s] (%(name)s) %(message)s",
        "granular_levels": {}
}

tendermint.*

  • tendermint.host
  • tendermint.port
"tendermint": {
    "host": "localhost",
    "port": 26657
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值