18 changed files with 124 additions and 161 deletions
@ -1 +0,0 @@ |
|||||
server=/{{ network_domain }}/{{ dns_server }} |
|
||||
@ -1,36 +0,0 @@ |
|||||
resource "libvirt_network" "ocp_net" { |
|
||||
name = var.cluster_name |
|
||||
mode = "nat" |
|
||||
domain = local.network_domain |
|
||||
addresses = [var.network_ip_range] |
|
||||
autostart = true |
|
||||
|
|
||||
dns { |
|
||||
enabled = true |
|
||||
|
|
||||
hosts { |
|
||||
hostname = "host" |
|
||||
ip = cidrhost(var.network_ip_range, 1) |
|
||||
} |
|
||||
hosts { |
|
||||
hostname = "api" |
|
||||
ip = cidrhost(var.network_ip_range, 4) |
|
||||
} |
|
||||
hosts { |
|
||||
hostname = "api-int" |
|
||||
ip = cidrhost(var.network_ip_range, 4) |
|
||||
} |
|
||||
hosts { |
|
||||
hostname = "etcd" |
|
||||
ip = cidrhost(var.network_ip_range, 4) |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
dhcp { |
|
||||
enabled = true |
|
||||
} |
|
||||
|
|
||||
xml { |
|
||||
xslt = templatefile("${path.module}/templates/network.xslt", { alias = "apps.${local.network_domain}", ip = cidrhost(var.network_ip_range, 4), network_domain = local.network_domain }) |
|
||||
} |
|
||||
} |
|
||||
@ -0,0 +1,25 @@ |
|||||
|
<?xml version="1.0" ?> |
||||
|
<xsl:stylesheet version="1.0" |
||||
|
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> |
||||
|
<xsl:output omit-xml-declaration="yes" indent="yes"/> |
||||
|
|
||||
|
<!-- Target portgroup --> |
||||
|
<xsl:param name="portgroup" select="'lab8'"/> |
||||
|
|
||||
|
<!-- XSLT Identity template --> |
||||
|
<xsl:template match="node()|@*"> |
||||
|
<xsl:copy> |
||||
|
<xsl:apply-templates select="node()|@*"/> |
||||
|
</xsl:copy> |
||||
|
</xsl:template> |
||||
|
|
||||
|
<!-- Put the NIC in the desired portgroup --> |
||||
|
<xsl:template match="/domain/devices/interface/source"> |
||||
|
<xsl:copy> |
||||
|
<xsl:apply-templates select="@*|node()"/> |
||||
|
<xsl:attribute name="portgroup"> |
||||
|
<xsl:value-of select="$portgroup"/> |
||||
|
</xsl:attribute> |
||||
|
</xsl:copy> |
||||
|
</xsl:template> |
||||
|
</xsl:stylesheet> |
||||
@ -1,5 +0,0 @@ |
|||||
export LE_API_HOSTNAME="${api_server}" |
|
||||
export LE_ROUTER_HOSTNAME="${router}" |
|
||||
export DNS_ZONE="${dns_zone}" |
|
||||
export DNS_API_RECORD="api.${cluster_name}" |
|
||||
export DNS_ROUTER_RECORD="*.apps.${cluster_name}" |
|
||||
@ -1,6 +1,4 @@ |
|||||
[hypervisor] |
[hypervisor] |
||||
|
|
||||
[hypervisor:vars] |
[hypervisor:vars] |
||||
network_domain=${network_domain} |
|
||||
dns_server=${dns_server} |
|
||||
nodes=${jsonencode(nodes)} |
nodes=${jsonencode(nodes)} |
||||
@ -1,32 +0,0 @@ |
|||||
<?xml version="1.0" ?> |
|
||||
<xsl:stylesheet version="1.0" |
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" |
|
||||
xmlns:dnsmasq="http://libvirt.org/schemas/network/dnsmasq/1.0"> |
|
||||
<xsl:output omit-xml-declaration="yes" indent="yes"/> |
|
||||
|
|
||||
<!-- Identity transform --> |
|
||||
<xsl:template match="node()|@*"> |
|
||||
<xsl:copy> |
|
||||
<xsl:apply-templates select="node()|@*"/> |
|
||||
</xsl:copy> |
|
||||
</xsl:template> |
|
||||
|
|
||||
<!-- Append custom dnsmasq options to the network element --> |
|
||||
<xsl:template match="/network"> |
|
||||
<xsl:copy> |
|
||||
<xsl:copy-of select="@*"/> |
|
||||
<xsl:copy-of select="node()"/> |
|
||||
<dnsmasq:options> |
|
||||
<!-- fix for the 5s timeout on DNS --> |
|
||||
<!-- see https://www.math.tamu.edu/~comech/tools/linux-slow-dns-lookup/ --> |
|
||||
<dnsmasq:option value="auth-server=${network_domain},"/> |
|
||||
<dnsmasq:option value="auth-zone=${network_domain}"/> |
|
||||
|
|
||||
<!-- Wildcard route --> |
|
||||
<dnsmasq:option value="host-record=lb.${network_domain},${ip}"/> |
|
||||
<dnsmasq:option value="cname=*.apps.${network_domain},lb.${network_domain}"/> |
|
||||
</dnsmasq:options> |
|
||||
</xsl:copy> |
|
||||
</xsl:template> |
|
||||
|
|
||||
</xsl:stylesheet> |
|
||||
@ -1,7 +1,8 @@ |
|||||
base_domain = "PUT_YOUR_DNS_DOMAIN_HERE" |
base_domain = "PUT_YOUR_DNS_DOMAIN_HERE" |
||||
external_mac_address = "02:00:00:00:00:04" |
|
||||
public_cluster_ip = "1.2.3.4" |
public_cluster_ip = "1.2.3.4" |
||||
network_ip_range = "10.10.0.0/24" |
network_ip_range = "192.168.7.0/24" |
||||
|
network_mac_format = "02:01:07:00:07:%02x" |
||||
cluster_name = "__CLUSTER_NAME__" |
cluster_name = "__CLUSTER_NAME__" |
||||
bootstrap_nodes = 1 |
bootstrap_nodes = 1 |
||||
|
worker_nodes = 2 |
||||
acme_account_email = "your.username@redhat.com" |
acme_account_email = "your.username@redhat.com" |
||||
|
|||||
Loading…
Reference in new issue