dns.configure_bind
This model component configures bind for each DNSServer.
- Attribute Depends:
topology
- Model Component Dependencies:
Plugin
- class dns.configure_bind_plugin.ConfigureBind(*args, **kwargs)[source]
Bases:
AbstractPlugin
This plugin configures DNS for the experiment.
The plugin walks the graph building zone files for the experiment. It then gives the zone files to the DNS server by passing them to a vm_resource.
Graph attributes read: name interfaces type
Graph attributes set: schedule
- __annotations__ = {}
- __init__(*args, **kwargs)[source]
Constructor for ConfigureDNS
- Parameters:
*args – extra args to pass to AbstractPlugin constructor
**kwargs – extra keyword args to pass to AbstractPlugin constructor
- generate_glue_record(zone_name, base_domain, dns_server)[source]
Creates a glue record for the current zone
Looks for all branches stemming from this point in the tree. Skips any definitions of singular machines.
- generate_records(zones, base_domain)[source]
Creates the records for a single machine in the topology
- get_metadata(zones)[source]
Concatenates glue and a records together to make a single zone file
Once a single file for each zone is generated, pickle and encode them so they can be distributed by the metadata server.
- run(debug='')[source]
Function to invoke the ConfigureDNS plugin.
- Parameters:
debug (str) – Enable debugging information to see everything the parser gathers. Value should be ‘True’ or ‘true’ to enable