我有一个简单的程序来添加和删除清漆 3.x 的后端。它以简单的方式完成:有一个python程序接受HTTP请求,用于添加和删除命名服务的后端。它使用 VCL 配置添加和删除特定控制器的后端,然后重新加载清漆的配置。
现在我想知道如何为新的 (4.x) 清漆缓存实现这样的方案。我从文档中看到,控制器已经从 VCL 模块转向 VMOD 可加载对象。在我看来,现在如果不重新启动整个清漆,就不可能即时添加新的后端或导向器。还是我错了?
所以问题是:
- Varnish-cache 4.x是否有任何外部[清漆本身]API来管理配置和控制器?
- 在不重新启动清漆的情况下自动管理 Varnish 4.x 中的控制器的最佳方法是什么?
将控制器移动到 VMOD 是制作您询问的 API 服务的步骤 #1。
编写 VCL 并在更改时加载 VCL 的软件可以像以前一样继续运行。它只是在 4.0 中更改的符号/语法。像往常一样使用带有清漆的 vcl.load/vcl.discard 来执行 #2。