set -ex
virtinstall=0
+labname = $1
#install the packages needed
sudo apt-add-repository ppa:maas-deployers/stable -y
if [ ! -e ./labconfig.yaml ]; then
virtinstall=1
+ cp ../labconfig/default/deployment.yaml ./
cp ../labconfig/default/labconfig.yaml ./
- python deploy.py
fi
+ labname=`grep "lab_location" labconfig.yaml | cut -d ':' -f 2 | sed -e 's/ //'`
+else
+ case "$1" in
+ 'intelpod5' )
+ cp ../labconfig/intel/pod5/labconfig.yaml ./
+ #to be removed later once converted for all labs.
+ python deploy.py
+ ;;
+ 'intelpod6' )
+ cp ../labconfig/intel/pod6/labconfig.yaml ./
+ #to be removed later once converted for all labs.
+ python deploy.py
+ ;;
+ 'intelpod9' )
+ cp ../labconfig/intel/pod6/labconfig.yaml ./
+ #to be removed later once converted for all labs.
+ python deploy.py
+ ;;
+ 'orangepod1' )
+ cp maas/orange/pod1/deployment.yaml ./deployment.yaml
+ ;;
+ 'orangepod2' )
+ cp maas/orange/pod2/deployment.yaml ./deployment.yaml
+ ;;
+ 'attvirpod1' )
+ cp maas/att/virpod1/deployment.yaml ./deployment.yaml
+ ;;
+ 'juniperpod1' )
+ cp maas/juniper/pod1/deployment.yaml ./deployment.yaml
+ ;;
+ 'cengnlynxpod1' )
+ cp maas/cengn_lynx/pod1/deployment.yaml ./deployment.yaml
+ ;;
+ * )
+ virtinstall=1
+ labname = "default"
+ ./cleanvm.sh
+ cp ../labconfig/default/deployment.yaml ./
+ ;;
+ esac
fi
-case "$1" in
- 'intelpod5' )
- cp ../labconfig/intel/pod5/labconfig.yaml ./
- #to be removed later once converted for all labs.
- python deploy.py
- ;;
- 'intelpod6' )
- cp ../labconfig/intel/pod6/labconfig.yaml ./
- #to be removed later once converted for all labs.
- python deploy.py
- ;;
- 'intelpod9' )
- cp ../labconfig/intel/pod6/labconfig.yaml ./
- #to be removed later once converted for all labs.
- python deploy.py
- ;;
- 'orangepod1' )
- cp maas/orange/pod1/deployment.yaml ./deployment.yaml
- ;;
- 'orangepod2' )
- cp maas/orange/pod2/deployment.yaml ./deployment.yaml
- ;;
- 'attvirpod1' )
- cp maas/att/virpod1/deployment.yaml ./deployment.yaml
- ;;
- 'juniperpod1' )
- cp maas/juniper/pod1/deployment.yaml ./deployment.yaml
- ;;
- 'cengnlynxpod1' )
- cp maas/cengn_lynx/pod1/deployment.yaml ./deployment.yaml
- ;;
- 'custom' )
- cp maas/custom/deployment.yaml ./deployment.yaml
- ;;
- * )
- virtinstall=1
- ./cleanvm.sh
- cp maas/default/deployment.yaml ./deployment.yaml
- ;;
-esac
-
-
#make sure no password asked during the deployment.
echo "$USER ALL=(ALL) NOPASSWD:ALL" > 90-joid-init
fi
# Enable vlan interfaces with maas
-case "$1" in
+case "$labname" in
'intelpod5' )
maas refresh
enableautomodebyname eth4 AUTO "10.5.12.0/24" compute || true
+++ /dev/null
-# This file defines the deployment for the MAAS environment which is to be
-# deployed and automated.
-demo-maas:
- maas:
- # Defines the general setup for the MAAS environment, including the
- # username and password for the host as well as the MAAS server.
- user: ubuntu
- password: ubuntu
-
- # Contains the virtual machine parameters for creating the MAAS virtual
- # 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=brAdm,model=virtio', 'bridge=brData,model=virtio', 'bridge=brPublic,model=virtio', 'bridge=brExt,model=virtio']
- memory: 4096
- vcpus: 4
- arch: amd64
- pool: default
- disk_size: 160G
- release: trusty
-
- # Apt http proxy setting(s)
- apt_http_proxy:
-
- apt_sources:
- - ppa:maas/stable
- - ppa:juju/stable
-
- boot_source:
- url: http://maas.ubuntu.com/images/ephemeral-v2/daily/
- keyring_filename: /usr/share/keyrings/ubuntu-cloudimage-keyring.gpg
- exclusive: true
- selections:
- 1:
- release: trusty
- os: ubuntu
- arches: amd64
- subarches: "*"
- labels: daily
- 2:
- release: xenial
- os: ubuntu
- arches: amd64
- subarches: "*"
- labels: daily
-
- # Virsh power settings
- # Specifies the uri and keys to use for virsh power control of the
- # juju virtual machine. If the uri is omitted, the value for the
- # --remote is used. If no power settings are desired, then do not
- # supply the virsh block.
- virsh:
- rsa_priv_key: /home/ubuntu/.ssh/id_rsa
- rsa_pub_key: /home/ubuntu/.ssh/id_rsa.pub
- uri: qemu+ssh://jenkins@10.5.1.1/system
-
- # Defines the IP Address that the configuration script will use to
- # to access the MAAS controller via SSH.
- ip_address: 10.5.1.2
-
- # This section allows the user to set a series of options on the
- # MAAS server itself. The list of config options can be found in
- # the upstream MAAS documentation:
- # - http://maas.ubuntu.com/docs/api.html#maas-server
- settings:
- main_archive: http://us.archive.ubuntu.com/ubuntu
- upstream_dns: 8.8.8.8
- maas_name: intelpod5
- # kernel_opts: "console=tty0 console=ttyS1,115200n8"
- # ntp_server: ntp.ubuntu.com
-
- # This section is used to define the networking parameters for when
- # the node first comes up. It is fed into the meta-data cloud-init
- # configuration and is used to configure the networking piece of the
- # service. The contents of this section are written directly to the
- # /etc/network/interfaces file.
- #
- # Please note, this is slightly different than the
- # node-group-interfaces section below. This will configure the
- # machine's networking params, and the node-group-interfaces will
- # configure the maas node-group interfaces which is used for
- # controlling the dhcp, dns, etc.
- network_config: |
- auto lo
- iface lo inet loopback
-
- auto eth0
- iface eth0 inet static
- address 10.5.1.2
- netmask 255.255.255.0
- network 10.5.1.0
- broadcast 10.5.1.255
- gateway 10.5.1.1
- dns-nameservers 8.8.8.8 10.5.1.2 127.0.0.1
-
- auto eth1
- iface eth1 inet static
- address 10.5.12.2
- netmask 255.255.255.0
-
- auto eth2
- iface eth2 inet static
- address 10.5.15.2
- netmask 255.255.255.0
-
- auto eth3
- iface eth3 inet static
- address 10.2.117.92
- netmask 255.255.255.0
- #auto lo
- #iface lo inet loopback
-
- #auto eth0
- #iface eth0 inet static
- # address 192.168.122.2
- # netmask 255.255.248.0
- # network 192.168.122.0
- # broadcast 192.168.122.255
- # gateway 192.168.122.1
- # dns-nameservers 192.168.122.1 127.0.0.1
-
- # The node-group-interfaces section is used to configure the MAAS
- # network interfaces. Basic configuration is supported, such as which
- # device should be bound, the range of IP addresses, etc.
- # Note: this may contain the special identifiers:
- # ${maas_net} - the first 3 octets of the ipv4 address
- # ${maas_ip} - the ip address of the MAAS controller
- node_group_ifaces:
- - device: eth0
- ip: 10.5.1.2
- subnet_mask: 255.255.255.0
- broadcast_ip: 10.5.1.255
- router_ip: 10.5.1.1
- static_range:
- low: 10.5.1.50
- high: 10.5.1.80
- dynamic_range:
- low: 10.5.1.81
- high: 10.5.1.250
- - device: eth1
- ip: 10.5.12.2
- subnet_mask: 255.255.255.0
- broadcast_ip: 10.5.12.255
- management: 1
- static_range:
- low: 10.5.12.20
- high: 10.5.12.150
- dynamic_range:
- low: 10.5.12.151
- high: 10.5.12.200
- - device: eth2
- ip: 10.5.15.2
- subnet_mask: 255.255.255.0
- broadcast_ip: 10.5.15.255
- router_ip: 10.5.15.254
- management: 1
- static_range:
- low: 10.5.15.20
- high: 10.5.15.150
- dynamic_range:
- low: 10.5.15.151
- high: 10.5.15.200
-
- # Defines the physical nodes which are added to the MAAS cluster
- # controller upon startup of the node.
- nodes:
- - name: node1-control
- tags: control
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:cf:bb:54"
- power:
- type: ipmi
- address: 10.2.117.81
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-#
- - name: node2-control
- tags: control
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:cf:b8:93"
- power:
- type: ipmi
- address: 10.2.117.82
- user: root
- pass: root
- driver: LAN_2_0
-
- - name: node3-control
- tags: control
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:e0:08:7f"
- power:
- type: ipmi
- address: 10.2.117.83
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
- - name: node4-compute
- tags: compute
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:e0:08:b1"
- power:
- type: ipmi
- address: 10.2.117.84
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
- - name: node5-compute
- tags: compute
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:e0:0a:4b"
- power:
- type: ipmi
- address: 10.2.117.85
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
-# - name: jenkins-slave
-# tags: jenkins-slave
-# architecture: amd64/generic
-# mac_addresses:
-# - "52:54:00:f0:5c:53"
-# power:
-# type: virsh
-# address: qemu+ssh://ubuntu@10.4.1.1/system
-
- # Contains the virtual machine parameters for creating the Juju bootstrap
- # node virtual machine
- juju-bootstrap:
- name: bootstrap
- interfaces: ['bridge=brAdm,model=virtio', 'bridge=brPublic,model=virtio', 'bridge=brExt,model=virtio']
- memory: 4096
- vcpus: 4
- arch: amd64
- pool: default
- disk_size: 120G
+++ /dev/null
-default: demo-maas
-
-environments:
-
- # https://juju.ubuntu.com/docs/config-maas.html
- demo-maas:
- type: maas
-
- # maas-server specifies the location of the MAAS server. It must
- # specify the base path.
- #
- maas-server: 'http://10.4.1.2/MAAS'
-
- # maas-oauth holds the OAuth credentials from MAAS.
- #
- maas-oauth: 'HyacKVwxBVE9xwmJW7:CVwUpERLN3fDUbkUra:ETW88KVJxDHQA3kqmZgghUQnzanSFwH4'
-
- # maas-server bootstrap ssh connection options
- #
-
- # bootstrap-timeout time to wait contacting a state server, in seconds.
- bootstrap-timeout: 1800
-
- # 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
-
-
- admin-secret: admin
- default-series: trusty
+++ /dev/null
-# This file defines the deployment for the MAAS environment which is to be
-# deployed and automated.
-demo-maas:
- maas:
- # Defines the general setup for the MAAS environment, including the
- # username and password for the host as well as the MAAS server.
- user: ubuntu
- password: ubuntu
-
- # Contains the virtual machine parameters for creating the MAAS virtual
- # 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=brAdm,model=virtio', 'bridge=brData,model=virtio', 'bridge=brPublic,model=virtio', 'bridge=brExt,model=virtio']
- memory: 4096
- vcpus: 4
- arch: amd64
- pool: default
- disk_size: 160G
- release: trusty
-
- # Apt http proxy setting(s)
- apt_http_proxy:
-
- apt_sources:
- - ppa:maas/stable
- - ppa:juju/stable
-
- boot_source:
- url: http://maas.ubuntu.com/images/ephemeral-v2/daily/
- keyring_filename: /usr/share/keyrings/ubuntu-cloudimage-keyring.gpg
- exclusive: true
- selections:
- 1:
- release: trusty
- os: ubuntu
- arches: amd64
- subarches: "*"
- labels: daily
- 2:
- release: xenial
- os: ubuntu
- arches: amd64
- subarches: "*"
- labels: daily
-
- # Virsh power settings
- # Specifies the uri and keys to use for virsh power control of the
- # juju virtual machine. If the uri is omitted, the value for the
- # --remote is used. If no power settings are desired, then do not
- # supply the virsh block.
- virsh:
- rsa_priv_key: /home/ubuntu/.ssh/id_rsa
- rsa_pub_key: /home/ubuntu/.ssh/id_rsa.pub
- uri: qemu+ssh://jenkins@10.6.1.1/system
-
- # Defines the IP Address that the configuration script will use to
- # to access the MAAS controller via SSH.
- ip_address: 10.6.1.2
-
- # This section allows the user to set a series of options on the
- # MAAS server itself. The list of config options can be found in
- # the upstream MAAS documentation:
- # - http://maas.ubuntu.com/docs/api.html#maas-server
- settings:
- main_archive: http://us.archive.ubuntu.com/ubuntu
- upstream_dns: 8.8.8.8
- maas_name: intelpod6
- # kernel_opts: "console=tty0 console=ttyS1,115200n8"
- # ntp_server: ntp.ubuntu.com
-
- # This section is used to define the networking parameters for when
- # the node first comes up. It is fed into the meta-data cloud-init
- # configuration and is used to configure the networking piece of the
- # service. The contents of this section are written directly to the
- # /etc/network/interfaces file.
- #
- # Please note, this is slightly different than the
- # node-group-interfaces section below. This will configure the
- # machine's networking params, and the node-group-interfaces will
- # configure the maas node-group interfaces which is used for
- # controlling the dhcp, dns, etc.
- network_config: |
- auto lo
- iface lo inet loopback
-
- auto eth0
- iface eth0 inet static
- address 10.6.1.2
- netmask 255.255.255.0
- network 10.6.1.0
- broadcast 10.6.1.255
- gateway 10.6.1.1
- dns-nameservers 8.8.8.8 10.6.1.2 127.0.0.1
-
- auto eth1
- iface eth1 inet static
- address 10.6.12.2
- netmask 255.255.255.0
-
- auto eth2
- iface eth2 inet static
- address 10.6.15.2
- netmask 255.255.255.0
-
- auto eth3
- iface eth3 inet static
- address 10.2.117.107
- netmask 255.255.255.0
- #auto lo
- #iface lo inet loopback
-
- #auto eth0
- #iface eth0 inet static
- # address 192.168.122.2
- # netmask 255.255.248.0
- # network 192.168.122.0
- # broadcast 192.168.122.255
- # gateway 192.168.122.1
- # dns-nameservers 192.168.122.1 127.0.0.1
-
- # The node-group-interfaces section is used to configure the MAAS
- # network interfaces. Basic configuration is supported, such as which
- # device should be bound, the range of IP addresses, etc.
- # Note: this may contain the special identifiers:
- # ${maas_net} - the first 3 octets of the ipv4 address
- # ${maas_ip} - the ip address of the MAAS controller
- node_group_ifaces:
- - device: eth0
- ip: 10.6.1.2
- subnet_mask: 255.255.255.0
- broadcast_ip: 10.6.1.255
- router_ip: 10.6.1.1
- static_range:
- low: 10.6.1.50
- high: 10.6.1.80
- dynamic_range:
- low: 10.6.1.81
- high: 10.6.1.250
- - device: eth1
- ip: 10.6.12.2
- subnet_mask: 255.255.255.0
- broadcast_ip: 10.6.12.255
- management: 1
- static_range:
- low: 10.6.12.20
- high: 10.6.12.150
- dynamic_range:
- low: 10.6.12.151
- high: 10.6.12.200
- - device: eth2
- ip: 10.6.15.2
- subnet_mask: 255.255.255.0
- broadcast_ip: 10.6.15.255
- router_ip: 10.6.15.254
- management: 1
- static_range:
- low: 10.6.15.20
- high: 10.6.15.150
- dynamic_range:
- low: 10.6.15.151
- high: 10.6.15.200
-
- # Defines the physical nodes which are added to the MAAS cluster
- # controller upon startup of the node.
- nodes:
- - name: node1-control
- tags: control
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:d8:ba:46"
- power:
- type: ipmi
- address: 10.2.117.96
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
- - name: node2-control
- tags: control
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:e0:0b:72"
- power:
- type: ipmi
- address: 10.2.117.97
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
- - name: node3-control
- tags: control
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:e0:09:33"
- power:
- type: ipmi
- address: 10.2.117.98
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
- - name: node4-compute
- tags: compute
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:e0:09:fb"
- power:
- type: ipmi
- address: 10.2.117.99
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
- - name: node5-compute
- tags: compute
- architecture: amd64/generic
- mac_addresses:
- - "00:1e:67:cf:bc:f8"
- power:
- type: ipmi
- address: 10.2.117.100
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
-# - name: jenkins-slave
-# tags: jenkins-slave
-# architecture: amd64/generic
-# mac_addresses:
-# - "52:54:00:f0:5c:53"
-# power:
-# type: virsh
-# address: qemu+ssh://ubuntu@10.4.1.1/system
-
- # Contains the virtual machine parameters for creating the Juju bootstrap
- # node virtual machine
- juju-bootstrap:
- name: bootstrap
- interfaces: ['bridge=brAdm,model=virtio', 'bridge=brPublic,model=virtio', 'bridge=brExt,model=virtio']
- memory: 4096
- vcpus: 4
- arch: amd64
- pool: default
- disk_size: 120G
+++ /dev/null
-# This file defines the deployment for the MAAS environment which is to be
-# deployed and automated.
-demo-maas:
- maas:
- # Defines the general setup for the MAAS environment, including the
- # username and password for the host as well as the MAAS server.
- user: ubuntu
- password: ubuntu
-
- # Contains the virtual machine parameters for creating the MAAS virtual
- # 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=brAdm,model=virtio', 'bridge=brData,model=virtio', 'bridge=brPublic,model=virtio', 'bridge=brExt,model=virtio']
- memory: 4096
- vcpus: 4
- arch: amd64
- pool: default
- disk_size: 160G
- release: trusty
-
- # Apt http proxy setting(s)
- apt_http_proxy:
-
- apt_sources:
- - ppa:maas/stable
- - ppa:juju/stable
-
- boot_source:
- url: http://maas.ubuntu.com/images/ephemeral-v2/daily/
- keyring_filename: /usr/share/keyrings/ubuntu-cloudimage-keyring.gpg
- exclusive: true
- selections:
- 1:
- release: trusty
- os: ubuntu
- arches: amd64
- subarches: "*"
- labels: daily
- 2:
- release: xenial
- os: ubuntu
- arches: amd64
- subarches: "*"
- labels: daily
-
- # Virsh power settings
- # Specifies the uri and keys to use for virsh power control of the
- # juju virtual machine. If the uri is omitted, the value for the
- # --remote is used. If no power settings are desired, then do not
- # supply the virsh block.
- virsh:
- rsa_priv_key: /home/ubuntu/.ssh/id_rsa
- rsa_pub_key: /home/ubuntu/.ssh/id_rsa.pub
- uri: qemu+ssh://jenkins@10.9.1.1/system
-
- # Defines the IP Address that the configuration script will use to
- # to access the MAAS controller via SSH.
- ip_address: 10.9.1.2
-
- # This section allows the user to set a series of options on the
- # MAAS server itself. The list of config options can be found in
- # the upstream MAAS documentation:
- # - http://maas.ubuntu.com/docs/api.html#maas-server
- settings:
- main_archive: http://us.archive.ubuntu.com/ubuntu
- upstream_dns: 8.8.8.8
- maas_name: intelpod9
- # kernel_opts: "console=tty0 console=ttyS1,115200n8"
- # ntp_server: ntp.ubuntu.com
-
- # This section is used to define the networking parameters for when
- # the node first comes up. It is fed into the meta-data cloud-init
- # configuration and is used to configure the networking piece of the
- # service. The contents of this section are written directly to the
- # /etc/network/interfaces file.
- #
- # Please note, this is slightly different than the
- # node-group-interfaces section below. This will configure the
- # machine's networking params, and the node-group-interfaces will
- # configure the maas node-group interfaces which is used for
- # controlling the dhcp, dns, etc.
- network_config: |
- auto lo
- iface lo inet loopback
-
- auto eth0
- iface eth0 inet static
- address 10.9.1.2
- netmask 255.255.255.0
- network 10.9.1.0
- broadcast 10.9.1.255
- gateway 10.9.1.1
- dns-nameservers 8.8.8.8 10.9.1.2 127.0.0.1
-
- auto eth1
- iface eth1 inet static
- address 10.9.12.2
- netmask 255.255.255.0
-
- auto eth2
- iface eth2 inet static
- address 10.9.15.2
- netmask 255.255.255.0
-
- auto eth3
- iface eth3 inet static
- address 10.2.117.143
- netmask 255.255.255.0
- #auto lo
- #iface lo inet loopback
-
- #auto eth0
- #iface eth0 inet static
- # address 192.168.122.2
- # netmask 255.255.248.0
- # network 192.168.122.0
- # broadcast 192.168.122.255
- # gateway 192.168.122.1
- # dns-nameservers 192.168.122.1 127.0.0.1
-
- # The node-group-interfaces section is used to configure the MAAS
- # network interfaces. Basic configuration is supported, such as which
- # device should be bound, the range of IP addresses, etc.
- # Note: this may contain the special identifiers:
- # ${maas_net} - the first 3 octets of the ipv4 address
- # ${maas_ip} - the ip address of the MAAS controller
- node_group_ifaces:
- - device: eth0
- ip: 10.9.1.2
- subnet_mask: 255.255.255.0
- broadcast_ip: 10.9.1.255
- router_ip: 10.9.1.1
- static_range:
- low: 10.9.1.50
- high: 10.9.1.80
- dynamic_range:
- low: 10.9.1.81
- high: 10.9.1.250
- - device: eth1
- ip: 10.9.12.2
- subnet_mask: 255.255.255.0
- broadcast_ip: 10.9.12.255
- management: 1
- static_range:
- low: 10.9.12.20
- high: 10.9.12.150
- dynamic_range:
- low: 10.9.12.151
- high: 10.9.12.200
- - device: eth2
- ip: 10.9.15.2
- subnet_mask: 255.255.255.0
- broadcast_ip: 10.9.15.255
- router_ip: 10.9.15.254
- management: 1
- static_range:
- low: 10.9.15.20
- high: 10.9.15.150
- dynamic_range:
- low: 10.9.15.151
- high: 10.9.15.200
-
- # Defines the physical nodes which are added to the MAAS cluster
- # controller upon startup of the node.
- nodes:
- - name: node1-compute
- tags: compute
- architecture: amd64/generic
- mac_addresses:
- - "00:1E:67:D4:30:38"
- power:
- type: ipmi
- address: 10.2.117.142
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
- - name: node2-compute
- tags: compute
- architecture: amd64/generic
- mac_addresses:
- - "00:1E:67:D4:33:A3"
- power:
- type: ipmi
- address: 10.2.117.144
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
- - name: node3-control
- tags: control
- architecture: amd64/generic
- mac_addresses:
- - "00:1E:67:D4:2F:BA"
- power:
- type: ipmi
- address: 10.2.117.146
- user: root
- pass: root
- driver: LAN_2_0
-# sticky_ip_address:
-# mac_address: "38:63:bb:43:b8:9c"
-# requested_address: 192.168.122.5
-
-# - name: jenkins-slave
-# tags: jenkins-slave
-# architecture: amd64/generic
-# mac_addresses:
-# - "52:54:00:f0:5c:53"
-# power:
-# type: virsh
-# address: qemu+ssh://ubuntu@10.4.1.1/system
-
- # Contains the virtual machine parameters for creating the Juju bootstrap
- # node virtual machine
- juju-bootstrap:
- name: bootstrap
- interfaces: ['bridge=brAdm,model=virtio', 'bridge=brPublic,model=virtio', 'bridge=brExt,model=virtio']
- memory: 4096
- vcpus: 4
- arch: amd64
- pool: default
- disk_size: 120G
--- /dev/null
+# This file defines the deployment for the MAAS environment which is to be
+# deployed and automated.
+demo-maas:
+ # Contains the virtual machine parameters for creating the Juju bootstrap
+ # node virtual machine
+ juju-bootstrap:
+ name: bootstrap
+ interfaces: ['bridge=virbr0,model=virtio']
+ memory: 2048
+ vcpus: 2
+ arch: amd64
+ pool: default
+ disk_size: 20G
+# sticky_ip_address:
+# requested_address: 192.168.122.25
+
+ maas:
+ # Defines the general setup for the MAAS environment, including the
+ # username and password for the host as well as the MAAS server.
+ user: ubuntu
+ password: ubuntu
+
+ # Contains the virtual machine parameters for creating the MAAS virtual
+ # server. Here you can configure the name of the virsh domain, the
+ # parameters for how the network is attached.
+ name: opnfv-maas
+ interfaces: ['bridge=virbr0,model=virtio']
+ memory: 4096
+ vcpus: 2
+ arch: amd64
+ pool: default
+ disk_size: 60G
+ release: trusty
+
+ # Apt http proxy setting(s)
+ apt_http_proxy:
+
+ apt_sources:
+ - ppa:maas/stable
+ - ppa:juju/stable
+
+ boot_source:
+ url: http://maas.ubuntu.com/images/ephemeral-v2/releases/
+ keyring_filename: /usr/share/keyrings/ubuntu-cloudimage-keyring.gpg
+ selections:
+ 1:
+ release: xenial
+ os: ubuntu
+ arches: amd64
+ subarches: "*"
+ labels: release
+ # Virsh power settings
+ # Specifies the uri and keys to use for virsh power control of the
+ # juju virtual machine. If the uri is omitted, the value for the
+ # --remote is used. If no power settings are desired, then do not
+ # supply the virsh block.
+ virsh:
+ rsa_priv_key: /home/ubuntu/.ssh/id_rsa
+ rsa_pub_key: /home/ubuntu/.ssh/id_rsa.pub
+ uri: qemu+ssh://ubuntu@192.168.122.1/system
+
+ # Defines the IP Address that the configuration script will use to
+ # to access the MAAS controller via SSH.
+ ip_address: 192.168.122.2
+
+ # This section allows the user to set a series of options on the
+ # MAAS server itself. The list of config options can be found in
+ # the upstream MAAS documentation:
+ # - http://maas.ubuntu.com/docs/api.html#maas-server
+ settings:
+ main_archive: http://us.archive.ubuntu.com/ubuntu
+ upstream_dns: 192.168.122.1
+ maas_name: automaas
+ # kernel_opts: "console=tty0 console=ttyS1,115200n8"
+ ntp_server: ntp.ubuntu.com
+
+ # This section is used to define the networking parameters for when
+ # the node first comes up. It is fed into the meta-data cloud-init
+ # configuration and is used to configure the networking piece of the
+ # service. The contents of this section are written directly to the
+ # /etc/network/interfaces file.
+ #
+ # Please note, this is slightly different than the
+ # node-group-interfaces section below. This will configure the
+ # machine's networking params, and the node-group-interfaces will
+ # configure the maas node-group interfaces which is used for
+ # controlling the dhcp, dns, etc.
+ network_config: |
+ auto lo
+ iface lo inet loopback
+
+ auto eth0
+ iface eth0 inet static
+ address 192.168.122.2
+ netmask 255.255.255.0
+ network 192.168.122.0
+ broadcast 192.168.122.255
+ gateway 192.168.122.1
+ dns-nameservers 192.168.122.1 127.0.0.1
+
+ # See https://maas.ubuntu.com/docs/maascli.html#node-groups for
+ # description and full list of supported options.
+ # NOTE: interfaces are added using the node_group_interfaces section
+ # and only one node_group can be created by this bundle.
+ # Additional node groups can be added post deployment.
+ #node_group:
+ # # This is the cluster DNS name.
+ # name: maas
+
+ # The node-group-interfaces section is used to configure the MAAS
+ # network interfaces. Basic configuration is supported, such as which
+ # device should be bound, the range of IP addresses, etc.
+ # Note: this may contain the special identifiers:
+ # ${maas_net} - the first 3 octets of the ipv4 address
+ # ${maas_ip} - the ip address of the MAAS controller
+ node_group_ifaces:
+ - device: eth0
+ ip: 192.168.122.2
+ subnet_mask: 255.255.255.0
+ broadcast_ip: 192.168.122.255
+ router_ip: 192.168.122.1
+ static_range:
+ low: 192.168.122.101
+ high: 192.168.122.200
+ dynamic_range:
+ low: 192.168.122.25
+ high: 192.168.122.100
+
+ # Physical nodes to be added to the MAAS cluster. Nodes will be
+ # configured, commissioned and put into the Ready state so
+ # they are ready to be deployed to.
+ #nodes:
+ # - name: node1
+ # tags: api
+ # architecture: amd64/generic
+ # mac_addresses:
+ # - "38:63:bb:43:b8:9c"
+ # power:
+ # type: ipmi
+ # address: 10.0.1.1
+ # user: maas
+ # pass: passw0rd
+ # driver: LAN_2_0
+ # sticky_ip_address:
+ # mac_address: "38:63:bb:43:b8:9c"
+ # requested_address: 192.168.122.6
+
- ppa:juju/stable
boot_source:
- url: http://maas.ubuntu.com/images/ephemeral-v2/daily/
+ url: http://maas.ubuntu.com/images/ephemeral-v2/releases/
keyring_filename: /usr/share/keyrings/ubuntu-cloudimage-keyring.gpg
- exclusive: true
selections:
1:
- release: trusty
- os: ubuntu
- arches: amd64
- subarches: "*"
- labels: daily
- 2:
release: xenial
os: ubuntu
arches: amd64
subarches: "*"
- labels: daily
-
+ labels: release
# Virsh power settings
# Specifies the uri and keys to use for virsh power control of the
# juju virtual machine. If the uri is omitted, the value for the
- type: control
architecture: x86_64
pxe_mac_address:
- - "00:1e:67:d8:ba:46"
+ - "00:1e:67:cf:bb:54"
power:
type: ipmi
address: 10.2.117.81
- type: control
architecture: x86_64
pxe_mac_address:
- - "00:1e:67:e0:0b:72"
+ - "00:1e:67:cf:b8:93"
power:
type: ipmi
address: 10.2.117.82