笔记首页 >> Nornir 配置
配置由一组部分和这些部分的参数组成。您可以使用nornir以编程方式设置配置,方法是传递每个部分的选项字典,使用YAML文件,设置相应的环境变量或将这三个参数组合使用。从低到高的优先顺序是“配置文件”->“环境变量”->“代码”。
使用的示例InitNornir
是:
nr = InitNornir(
core={"num_workers": 20},
logging={"file": "mylogs", "level": "debug"}
)
使用yaml
文件的类似示例:
---
inventory:
plugin: SimpleInventory
options:
host_file: "advanced_filtering/inventory/hosts.yaml"
group_file: "advanced_filtering/inventory/groups.yaml"
Logging日志
默认情况下,Nornir在InitNornir
调用时自动配置日志记录。日志配置可以修改,可用的选项在下面的部分中介绍。如果要使用Python日志记录模块来配置日志记录,请确保将logging.enabled
参数设置False
为以避免潜在的问题。在某些情况下,Nornir将检测到先前的日志记录配置并发出 nornir.core.exceptions.ConflictingConfigurationWarning
接下来,您可以找到每个部分及其相应的选项。
core
raise_on_error
描述 | 如果设置为True ,则至少在host发生故障时,的(nornir.core.Nornir.run )方法将引发异常nornir.core.exceptions.NornirExecutionError |
类型 | boolean |
默认 | False |
需要 | False |
环境变量 | NORNIR_CORE_RAISE_ON_ERROR |
runner
plugin
描述 | 用作Runner的插件。必须注册 |
类型 | string |
默认 | Threaded |
需要 | False |
环境变量 | NORNIR_RUNNER_PLUGIN |
options
描述 | kwargs传递给插件 |
类型 | object |
默认 | {} |
需要 | False |
环境变量 | NORNIR_RUNNER_OPTIONS |
inventory
plugin
描述 | 使用插件。必须注册 |
类型 | string |
默认 | SimpleInventory |
需要 | False |
环境变量 | NORNIR_INVENTORY_PLUGIN |
options
描述 | kwargs传递给插件 |
类型 | object |
默认 | {} |
需要 | False |
环境变量 | NORNIR_INVENTORY_OPTIONS |
transform_function
描述 | 使用插件。必须注册 |
类型 | string |
默认 | |
需要 | False |
环境变量 | NORNIR_INVENTORY_TRANSFORM_FUNCTION |
transform_function_options
描述 | kwargs传递给transform_function |
类型 | object |
默认 | {} |
需要 | False |
环境变量 | NORNIR_INVENTORY_TRANSFORM_FUNCTION_OPTIONS |
ssh
config_file
描述 | ssh配置文件的路径 |
类型 | string |
默认 | ~/.ssh/config |
需要 | False |
环境变量 | NORNIR_SSH_CONFIG_FILE |
logging
enabled
描述 | 是否配置日志记录 |
类型 | boolean |
默认 | None |
需要 | False |
环境变量 | NORNIR_LOGGING_ENABLED |
level
描述 | 记录级别 |
类型 | string |
默认 | INFO |
需要 | False |
环境变量 | NORNIR_LOGGING_LEVEL |
log_file
描述 | 记录文件 |
类型 | string |
默认 | nornir.log |
需要 | False |
环境变量 | NORNIR_LOGGING_FILE |
format
描述 | 记录格式 |
类型 | string |
默认 | %(asctime)s - %(name)12s - %(levelname)8s - %(funcName)10s() - %(message)s |
需要 | False |
环境变量 | NORNIR_LOGGING_FORMAT |
to_console
描述 | 是否登录控制台 |
类型 | boolean |
默认 | False |
需要 | False |
环境变量 | NORNIR_LOGGING_TO_CONSOLE |
loggers
描述 | 记录仪配置 |
类型 | array |
默认 | ['nornir'] |
需要 | False |
环境变量 | NORNIR_LOGGING_LOGGERS |
用户自定义
您可以在此处设置任何对,然后在您的配置对象下即可使用它。<k, v>
nr.config.user_defined.my_app_option
觉得文章有用?
点个广告表达一下你的爱意吧 !