Varnish Controller


Q: Can a deployment be used by several VCLGroups?

A: No, one deployment can only be used by one VCLGroup. However, it can be moved between VCLGroups by first unassigning it and then re-assigning it to a new VCLGroup.

Q: Can a VCLGroup have many deployments?

A: Yes, in order to support deployments to a different set of agents that would never have same tags.

Q: How can I deploy a VCLGroup to multiple groups of agents that don’t share the same tags?

A: With multiple deployments. One deployment could specify the tag ASIA to deploy to agents in Asia, while another deployment could specify the EU tag to deploy to agents in Europe.

Q: Do I need to use Includes for my VCLGroup?

A: No, it is enough to have one MainVCL. Includes are only there to support include statements in the MainVCL and to support other files used by the VCL.

Q: Will tags be automatically assigned to new agents?

A: It depends. If the agent is started with static tags as configuration this is the case. Otherwise the tags must be assigned explicitly via CLI/API.

Q: Will old agents be removed from the system?

A: Agents that no longer report in during a configured amount of time will be marked as down. An agent marked as down can be deleted from the system. But as soon as the same agent reports in to Brainz, it will be added to the system again even if it was previously removed. Agents marked as down will not automatically be removed.

Q: How are agents selected for deployment?

A: Currently a random agent is used for deployment, if it matches the deployment tags. Agent usage/load is not currently included the in selection algorithm. VCLGroups are sticky in the sense that if a VCLGroup is deployed to one agent that goes down and then automatically deployed to a new agent. When the old agent goes up again, the VCLGroup will not move back to previously used agent, it will stick to current one.