summaryrefslogtreecommitdiffstats
path: root/ci/maas
diff options
context:
space:
mode:
authorNarinder Gupta <narinder.gupta@canonical.com>2015-11-07 00:38:58 -0600
committerNarinder Gupta <narinder.gupta@canonical.com>2015-11-07 00:42:36 -0600
commit3ff5b9114e07349bb4a4b5578394bd799950dcf6 (patch)
treebf19af5d90f4a343218b8e260fa20638d2057357 /ci/maas
parentebefaf35b2909bcc41d8ba3917228b7ccba7ce2e (diff)
added ubuntu charm for local deployment charm to configure the
network according to the labs. Change-Id: I103b6dc243f025a4916d1057c247d01ee8f175ee
Diffstat (limited to 'ci/maas')
-rwxr-xr-xci/maas/intel/pod5/deployment.yaml44
-rw-r--r--ci/maas/intel/pod5/environment.yaml36
-rw-r--r--ci/maas/intel/pod5/interfaces.host36
-rwxr-xr-xci/maas/intel/pod5/lxc-add-more-interfaces52
-rwxr-xr-xci/maas/intel/pod6/deployment.yaml54
-rw-r--r--ci/maas/intel/pod6/interfaces.host33
-rwxr-xr-xci/maas/intel/pod6/lxc-add-more-interfaces52
-rw-r--r--ci/maas/orange/pod2/compute-interfaces.host23
-rw-r--r--ci/maas/orange/pod2/control-interfaces.host23
-rwxr-xr-xci/maas/orange/pod2/deployment.yaml2
-rw-r--r--ci/maas/orange/pod2/interfaces.host36
-rwxr-xr-xci/maas/orange/pod2/lxc-add-more-interfaces43
12 files changed, 367 insertions, 67 deletions
diff --git a/ci/maas/intel/pod5/deployment.yaml b/ci/maas/intel/pod5/deployment.yaml
index a44d7a45..bacf6aa5 100755
--- a/ci/maas/intel/pod5/deployment.yaml
+++ b/ci/maas/intel/pod5/deployment.yaml
@@ -11,9 +11,9 @@ demo-maas:
# server. Here you can configure the name of the virsh domain, the
# parameters for how the network is attached.
name: opnfv-maas-intel
- interfaces: ['bridge=br0,model=virtio']
+ interfaces: ['bridge=brAdm,model=virtio','bridge=brData,model=virtio','bridge=brPublic,model=virtio']
memory: 4096
- vcpus: 2
+ vcpus: 4
arch: amd64
pool: default
disk_size: 160G
@@ -74,6 +74,19 @@ demo-maas:
gateway 10.4.0.1
dns-nameservers 10.4.0.2 127.0.0.1
+ auto eth1
+ iface eth1 inet static
+ address 10.4.9.2
+ netmask 255.255.248.0
+ network 10.4.8.0
+ broadcast 10.4.15.255
+
+ auto eth2
+ iface eth2 inet static
+ address 10.2.65.3
+ netmask 255.255.255.0
+ network 10.2.65.0
+ broadcast 10.2.65.255
#auto lo
#iface lo inet loopback
@@ -104,7 +117,28 @@ demo-maas:
dynamic_range:
low: 10.4.1.50
high: 10.4.1.254
-
+ - device: eth1
+ ip: 10.4.9.2
+ subnet_mask: 255.255.255.0
+ broadcast_ip: 10.4.9.255
+ management: 1
+ static_range:
+ low: 10.4.9.20
+ high: 10.4.9.100
+ dynamic_range:
+ low: 10.4.9.101
+ high: 10.4.9.200
+ - device: eth2
+ ip: 10.2.65.3
+ subnet_mask: 255.255.255.0
+ broadcast_ip: 10.2.65.255
+ management: 1
+ static_range:
+ low: 10.2.65.20
+ high: 10.2.65.100
+ dynamic_range:
+ low: 10.2.65.101
+ high: 10.2.65.200
# Defines the physical nodes which are added to the MAAS cluster
# controller upon startup of the node.
nodes:
@@ -193,9 +227,9 @@ demo-maas:
# node virtual machine
juju-bootstrap:
name: bootstrap
- interfaces: ['bridge=br0,model=virtio']
+ interfaces: ['bridge=brAdm,model=virtio','bridge=brData,model=virtio','bridge=brPublic,model=virtio']
memory: 4096
- vcpus: 2
+ vcpus: 4
arch: amd64
pool: default
disk_size: 120G
diff --git a/ci/maas/intel/pod5/environment.yaml b/ci/maas/intel/pod5/environment.yaml
deleted file mode 100644
index e5b539ca..00000000
--- a/ci/maas/intel/pod5/environment.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-default: demo-maas
-environments:
- # https://juju.ubuntu.com/docs/config-maas.html
- maas:
- type: maas
-
- # maas-server specifies the location of the MAAS server. It must
- # specify the base path.
- #
- maas-server: 'http://10.4.1.1/MAAS/'
-
- # maas-oauth holds the OAuth credentials from MAAS.
- #
- maas-oauth: 'c6tcQz4tyS3ALajCtF:sqcWhw8MkxTjUDLZrm:hBhszBLv5EqrY8h6yktFXWUT5825ShvE'
-
- # maas-server bootstrap ssh connection options
- #
-
- # bootstrap-timeout time to wait contacting a state server, in seconds.
- bootstrap-timeout: 1800
- admin-secret: admin
-
- # Whether or not to refresh the list of available updates for an
- # OS. The default option of true is recommended for use in
- # production systems, but disabling this can speed up local
- # deployments for development or testing.
- #
- enable-os-refresh-update: false
-
- # Whether or not to perform OS upgrades when machines are
- # provisioned. The default option of true is recommended for use
- # in production systems, but disabling this can speed up local
- # deployments for development or testing.
- #
- enable-os-upgrade: false
-
diff --git a/ci/maas/intel/pod5/interfaces.host b/ci/maas/intel/pod5/interfaces.host
new file mode 100644
index 00000000..9377814c
--- /dev/null
+++ b/ci/maas/intel/pod5/interfaces.host
@@ -0,0 +1,36 @@
+#### original juju generated part ####
+auto lo
+
+# Primary interface (defining the default route)
+iface eth0 inet manual
+
+# Bridge to use for LXC/KVM containers
+auto juju-br0
+iface juju-br0 inet dhcp
+ bridge_ports eth0
+######################################
+
+auto eth2
+iface eth2 inet manual
+
+auto eth2.721
+iface eth2.721 inet manual
+
+auto brData
+iface brData inet dhcp
+ bridge_ports eth2.721
+ bridge_stp off
+ bridge_fd 0
+ bridge_maxwait 0
+
+# The public network interface
+auto eth2.724
+iface eth2.724 inet manual
+
+auto brPublic
+iface brPublic inet dhcp
+ bridge_ports eth2.724
+ bridge_stp off
+ bridge_fd 0
+ bridge_maxwait 0
+
diff --git a/ci/maas/intel/pod5/lxc-add-more-interfaces b/ci/maas/intel/pod5/lxc-add-more-interfaces
new file mode 100755
index 00000000..c9bca9fd
--- /dev/null
+++ b/ci/maas/intel/pod5/lxc-add-more-interfaces
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+set -e
+set -u
+
+cat <<EOF >> "$LXC_CONFIG_FILE"
+
+## added by juju charm
+lxc.network.type = veth
+lxc.network.flags = up
+lxc.network.link = brData
+lxc.network.name = eth1
+lxc.network.hwaddr = 00:16:3e:$(openssl rand -hex 3| sed 's/\(..\)/\1:/g; s/.$//')
+
+lxc.network.type = veth
+lxc.network.flags = up
+lxc.network.link = brPublic
+lxc.network.name = eth2
+lxc.network.hwaddr = 00:16:3e:$(openssl rand -hex 3| sed 's/\(..\)/\1:/g; s/.$//')
+EOF
+
+USERDATA="$LXC_ROOTFS_PATH/var/lib/cloud/seed/nocloud-net/user-data"
+
+additional_interfaces="
+- |
+ cat <<EOF >> /etc/network/interfaces.d/additional-interfaces
+ ## added by juju charm
+ ## those interfaces will be brought up by the upstart job as /etc/init/additional-interfaces.conf
+ ## LP: #1483932
+ auto eth1
+ iface eth1 inet dhcp
+
+ auto eth2
+ iface eth2 inet dhcp
+ EOF
+- machine_agent=\$(hostname | sed -e 's/^juju-/jujud-/')
+- |
+ cat <<EOF > /etc/init/additional-interfaces.conf
+ ## added by juju charm
+ ## LP: #1483932
+ start on started \${machine_agent}
+
+ script
+ sleep 10
+ ifup -a -i /etc/network/interfaces.d/additional-interfaces
+ end script
+ EOF
+"
+additional_interfaces=$(echo "$additional_interfaces" | sed -e 's/$/\\n/' | tr -d '\n')
+
+sed -i.orig -e "s@^runcmd:@\0$additional_interfaces@" \
+ "$USERDATA"
diff --git a/ci/maas/intel/pod6/deployment.yaml b/ci/maas/intel/pod6/deployment.yaml
index 74c1a004..523f3dd3 100755
--- a/ci/maas/intel/pod6/deployment.yaml
+++ b/ci/maas/intel/pod6/deployment.yaml
@@ -13,7 +13,7 @@ demo-maas:
name: opnfv-maas-intel
interfaces: ['bridge=brAdm,model=virtio', 'bridge=brData,model=virtio', 'bridge=brPublic,model=virtio']
memory: 4096
- vcpus: 2
+ vcpus: 4
arch: amd64
pool: default
disk_size: 160G
@@ -79,10 +79,10 @@ demo-maas:
address 10.4.9.2
netmask 255.255.248.0
-# auto eth2
-# iface eth2 inet static
-# address 10.2.66.3
-# netmask 255.255.255.0
+ auto eth2
+ iface eth2 inet static
+ address 10.2.66.3
+ netmask 255.255.255.0
#auto lo
#iface lo inet loopback
@@ -114,26 +114,28 @@ demo-maas:
dynamic_range:
low: 10.4.1.50
high: 10.4.1.254
-# - device: eth1
-# ip: 10.4.9.2
-# subnet_mask: 255.255.248.0
-# broadcast_ip: 10.4.15.255
-# static_range:
-# low: 10.4.9.20
-# high: 10.4.9.150
-# dynamic_range:
-# low: 10.4.9.151
-# high: 10.4.9.200
-# - device: eth2
-# ip: 10.2.66.3
-# subnet_mask: 255.255.255.0
-# broadcast_ip: 10.2.66.255
-# static_range:
-# low: 10.2.66.20
-# high: 10.2.66.150
-# dynamic_range:
-# low: 10.2.66.151
-# high: 10.2.66.200
+ - device: eth1
+ ip: 10.4.9.2
+ subnet_mask: 255.255.255.0
+ broadcast_ip: 10.4.9.255
+ management: 1
+ static_range:
+ low: 10.4.9.20
+ high: 10.4.9.150
+ dynamic_range:
+ low: 10.4.9.151
+ high: 10.4.9.200
+ - device: eth2
+ ip: 10.2.66.3
+ subnet_mask: 255.255.255.0
+ broadcast_ip: 10.2.66.255
+ management: 1
+ static_range:
+ low: 10.2.66.20
+ high: 10.2.66.150
+ dynamic_range:
+ low: 10.2.66.151
+ high: 10.2.66.200
# Defines the physical nodes which are added to the MAAS cluster
# controller upon startup of the node.
@@ -243,7 +245,7 @@ demo-maas:
name: bootstrap
interfaces: ['bridge=brAdm,model=virtio', 'bridge=brData,model=virtio', 'bridge=brPublic,model=virtio']
memory: 4096
- vcpus: 2
+ vcpus: 4
arch: amd64
pool: default
disk_size: 120G
diff --git a/ci/maas/intel/pod6/interfaces.host b/ci/maas/intel/pod6/interfaces.host
new file mode 100644
index 00000000..86cdd056
--- /dev/null
+++ b/ci/maas/intel/pod6/interfaces.host
@@ -0,0 +1,33 @@
+#### original juju generated part ####
+auto lo
+
+# Primary interface (defining the default route)
+iface eth0 inet manual
+
+# Bridge to use for LXC/KVM containers
+auto juju-br0
+iface juju-br0 inet dhcp
+ bridge_ports eth0
+######################################
+
+auto eth1
+iface eth1 inet manual
+
+auto brData
+iface brData inet dhcp
+ bridge_ports eth1
+ bridge_stp off
+ bridge_fd 0
+ bridge_maxwait 0
+
+# The public network interface
+auto eth2
+iface eth2 inet manual
+
+auto brPublic
+iface brPublic inet dhcp
+ bridge_ports eth2
+ bridge_stp off
+ bridge_fd 0
+ bridge_maxwait 0
+
diff --git a/ci/maas/intel/pod6/lxc-add-more-interfaces b/ci/maas/intel/pod6/lxc-add-more-interfaces
new file mode 100755
index 00000000..c9bca9fd
--- /dev/null
+++ b/ci/maas/intel/pod6/lxc-add-more-interfaces
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+set -e
+set -u
+
+cat <<EOF >> "$LXC_CONFIG_FILE"
+
+## added by juju charm
+lxc.network.type = veth
+lxc.network.flags = up
+lxc.network.link = brData
+lxc.network.name = eth1
+lxc.network.hwaddr = 00:16:3e:$(openssl rand -hex 3| sed 's/\(..\)/\1:/g; s/.$//')
+
+lxc.network.type = veth
+lxc.network.flags = up
+lxc.network.link = brPublic
+lxc.network.name = eth2
+lxc.network.hwaddr = 00:16:3e:$(openssl rand -hex 3| sed 's/\(..\)/\1:/g; s/.$//')
+EOF
+
+USERDATA="$LXC_ROOTFS_PATH/var/lib/cloud/seed/nocloud-net/user-data"
+
+additional_interfaces="
+- |
+ cat <<EOF >> /etc/network/interfaces.d/additional-interfaces
+ ## added by juju charm
+ ## those interfaces will be brought up by the upstart job as /etc/init/additional-interfaces.conf
+ ## LP: #1483932
+ auto eth1
+ iface eth1 inet dhcp
+
+ auto eth2
+ iface eth2 inet dhcp
+ EOF
+- machine_agent=\$(hostname | sed -e 's/^juju-/jujud-/')
+- |
+ cat <<EOF > /etc/init/additional-interfaces.conf
+ ## added by juju charm
+ ## LP: #1483932
+ start on started \${machine_agent}
+
+ script
+ sleep 10
+ ifup -a -i /etc/network/interfaces.d/additional-interfaces
+ end script
+ EOF
+"
+additional_interfaces=$(echo "$additional_interfaces" | sed -e 's/$/\\n/' | tr -d '\n')
+
+sed -i.orig -e "s@^runcmd:@\0$additional_interfaces@" \
+ "$USERDATA"
diff --git a/ci/maas/orange/pod2/compute-interfaces.host b/ci/maas/orange/pod2/compute-interfaces.host
new file mode 100644
index 00000000..28c22feb
--- /dev/null
+++ b/ci/maas/orange/pod2/compute-interfaces.host
@@ -0,0 +1,23 @@
+#### original juju generated part ####
+auto lo
+
+# Primary interface (defining the default route)
+iface eth0 inet manual
+
+# Bridge to use for LXC/KVM containers
+auto juju-br0
+iface juju-br0 inet dhcp
+ bridge_ports eth0
+######################################
+
+#data network for VM on openstack
+auto eth5
+iface eth5 inet manual
+
+auto brData
+iface brData inet dhcp
+ bridge_ports eth5
+ bridge_stp off
+ bridge_fd 0
+ bridge_maxwait 0
+
diff --git a/ci/maas/orange/pod2/control-interfaces.host b/ci/maas/orange/pod2/control-interfaces.host
new file mode 100644
index 00000000..ba8b29cb
--- /dev/null
+++ b/ci/maas/orange/pod2/control-interfaces.host
@@ -0,0 +1,23 @@
+#### original juju generated part ####
+auto lo
+
+# Primary interface (defining the default route)
+iface eth0 inet manual
+
+# Bridge to use for LXC/KVM containers
+auto juju-br0
+iface juju-br0 inet dhcp
+ bridge_ports eth0
+######################################
+
+#data network for VM on openstack
+auto eth3
+iface eth3 inet manual
+
+auto brData
+iface brData inet dhcp
+ bridge_ports eth3
+ bridge_stp off
+ bridge_fd 0
+ bridge_maxwait 0
+
diff --git a/ci/maas/orange/pod2/deployment.yaml b/ci/maas/orange/pod2/deployment.yaml
index 86a3c144..9541a002 100755
--- a/ci/maas/orange/pod2/deployment.yaml
+++ b/ci/maas/orange/pod2/deployment.yaml
@@ -122,6 +122,7 @@ demo-maas:
ip: 192.168.12.5
subnet_mask: 255.255.255.0
broadcast_ip: 192.168.12.255
+ management: 1
static_range:
low: 192.168.12.50
high: 192.168.12.150
@@ -132,6 +133,7 @@ demo-maas:
ip: 192.168.22.5
subnet_mask: 255.255.255.0
broadcast_ip: 192.168.22.255
+ management: 1
static_range:
low: 192.168.22.50
high: 192.168.22.150
diff --git a/ci/maas/orange/pod2/interfaces.host b/ci/maas/orange/pod2/interfaces.host
new file mode 100644
index 00000000..9377814c
--- /dev/null
+++ b/ci/maas/orange/pod2/interfaces.host
@@ -0,0 +1,36 @@
+#### original juju generated part ####
+auto lo
+
+# Primary interface (defining the default route)
+iface eth0 inet manual
+
+# Bridge to use for LXC/KVM containers
+auto juju-br0
+iface juju-br0 inet dhcp
+ bridge_ports eth0
+######################################
+
+auto eth2
+iface eth2 inet manual
+
+auto eth2.721
+iface eth2.721 inet manual
+
+auto brData
+iface brData inet dhcp
+ bridge_ports eth2.721
+ bridge_stp off
+ bridge_fd 0
+ bridge_maxwait 0
+
+# The public network interface
+auto eth2.724
+iface eth2.724 inet manual
+
+auto brPublic
+iface brPublic inet dhcp
+ bridge_ports eth2.724
+ bridge_stp off
+ bridge_fd 0
+ bridge_maxwait 0
+
diff --git a/ci/maas/orange/pod2/lxc-add-more-interfaces b/ci/maas/orange/pod2/lxc-add-more-interfaces
new file mode 100755
index 00000000..a22901a0
--- /dev/null
+++ b/ci/maas/orange/pod2/lxc-add-more-interfaces
@@ -0,0 +1,43 @@
+#!/bin/bash
+
+set -e
+set -u
+
+cat <<EOF >> "$LXC_CONFIG_FILE"
+
+## added by juju charm
+lxc.network.type = veth
+lxc.network.flags = up
+lxc.network.link = brData
+lxc.network.name = eth1
+lxc.network.hwaddr = 00:16:3e:$(openssl rand -hex 3| sed 's/\(..\)/\1:/g; s/.$//')
+EOF
+
+USERDATA="$LXC_ROOTFS_PATH/var/lib/cloud/seed/nocloud-net/user-data"
+
+additional_interfaces="
+- |
+ cat <<EOF >> /etc/network/interfaces.d/additional-interfaces
+ ## added by juju charm
+ ## those interfaces will be brought up by the upstart job as /etc/init/additional-interfaces.conf
+ ## LP: #1483932
+ auto eth1
+ iface eth1 inet dhcp
+ EOF
+- machine_agent=\$(hostname | sed -e 's/^juju-/jujud-/')
+- |
+ cat <<EOF > /etc/init/additional-interfaces.conf
+ ## added by juju charm
+ ## LP: #1483932
+ start on started \${machine_agent}
+
+ script
+ sleep 10
+ ifup -a -i /etc/network/interfaces.d/additional-interfaces
+ end script
+ EOF
+"
+additional_interfaces=$(echo "$additional_interfaces" | sed -e 's/$/\\n/' | tr -d '\n')
+
+sed -i.orig -e "s@^runcmd:@\0$additional_interfaces@" \
+ "$USERDATA"