puppetdb node-ttl 未按预期工作
puppetdb node-ttl not working as expected
所以我对 node-ttl 和 node-purge-ttl 应该如何工作有点困惑。我在 database.ini 文件中设置了它们。 node-ttl 设置为 35m,node-purge-ttl 设置为 5m。从 puppetdb 文档我得出结论,使用这些设置,节点将在 35 分钟不活动后过期,例如节点已死,35 分钟内未与主节点签入,5 分钟后节点应从数据库中清除。
但这似乎并没有发生。即使在它被终止 40 多分钟后,该节点仍然在那里看起来很活跃和快乐。但是,db按照gc-interval进行compaction后,节点好像消失了。
我对这个功能的理解是否正确?如果我是,我做错了什么?我使用的是最新版本的 puppetdb 和 puppetserver。
这些是在我的 database.ini 文件中设置的参数:
# How often (in minutes) to compact the database
# gc-interval = 60
gc-interval = 60
# Number of seconds before any SQL query is considered 'slow'; offending
# queries will not be interrupted, but will be logged at the WARN log level.
log-slow-statements = 10
syntax_pgs = true
node-ttl = 35m
node-purge-ttl = 5m
report-ttl = 14d
conn-max-age = 60
conn-keep-alive = 45
conn-lifetime = 0
TTL 设置改变了 gc 进程的行为。当 gc 运行时(每隔 gc-interval 分钟),它会参考这些选项来确定要停用哪些节点以及要直接删除哪些节点。
gc 进程本身负责清理数据,这就是为什么在下一次 gc 发生之前您看不到任何更改的原因。 Quoth the docs: "nodes will be checked for staleness every gc-interval minutes".
所以基本上,你没有做错任何事!只是数据库清理不会立即发生,而是定期进行。
所以我对 node-ttl 和 node-purge-ttl 应该如何工作有点困惑。我在 database.ini 文件中设置了它们。 node-ttl 设置为 35m,node-purge-ttl 设置为 5m。从 puppetdb 文档我得出结论,使用这些设置,节点将在 35 分钟不活动后过期,例如节点已死,35 分钟内未与主节点签入,5 分钟后节点应从数据库中清除。
但这似乎并没有发生。即使在它被终止 40 多分钟后,该节点仍然在那里看起来很活跃和快乐。但是,db按照gc-interval进行compaction后,节点好像消失了。
我对这个功能的理解是否正确?如果我是,我做错了什么?我使用的是最新版本的 puppetdb 和 puppetserver。
这些是在我的 database.ini 文件中设置的参数:
# How often (in minutes) to compact the database
# gc-interval = 60
gc-interval = 60
# Number of seconds before any SQL query is considered 'slow'; offending
# queries will not be interrupted, but will be logged at the WARN log level.
log-slow-statements = 10
syntax_pgs = true
node-ttl = 35m
node-purge-ttl = 5m
report-ttl = 14d
conn-max-age = 60
conn-keep-alive = 45
conn-lifetime = 0
TTL 设置改变了 gc 进程的行为。当 gc 运行时(每隔 gc-interval 分钟),它会参考这些选项来确定要停用哪些节点以及要直接删除哪些节点。
gc 进程本身负责清理数据,这就是为什么在下一次 gc 发生之前您看不到任何更改的原因。 Quoth the docs: "nodes will be checked for staleness every gc-interval minutes".
所以基本上,你没有做错任何事!只是数据库清理不会立即发生,而是定期进行。