diff options
-rwxr-xr-x | ci/01-deploybundle.sh | 4 | ||||
-rwxr-xr-x | ci/02-maasdeploy.sh | 8 | ||||
-rw-r--r-- | ci/maas/custom/deployment.yaml | 137 |
3 files changed, 148 insertions, 1 deletions
diff --git a/ci/01-deploybundle.sh b/ci/01-deploybundle.sh index caa34620..ef5f6594 100755 --- a/ci/01-deploybundle.sh +++ b/ci/01-deploybundle.sh @@ -58,6 +58,10 @@ case "$3" in sed -i -- 's/10.4.1.1/172.16.50.1/g' ./bundles.yaml sed -i -- 's/# ext-port: "eth1"/ ext-port: "eth1"/g' ./bundles.yaml ;; + 'custom' ) + sed -i -- 's/10.4.1.1/192.168.122.1/g' ./bundles.yaml + sed -i -- 's/# ext-port: "eth1"/ ext-port: "eth1"/g' ./bundles.yaml + ;; 'default' ) sed -i -- 's/10.4.1.1/192.168.122.1/g' ./bundles.yaml sed -i -- 's/# ext-port: "eth1"/ ext-port: "eth1"/g' ./bundles.yaml diff --git a/ci/02-maasdeploy.sh b/ci/02-maasdeploy.sh index dc926361..7d4e2fed 100755 --- a/ci/02-maasdeploy.sh +++ b/ci/02-maasdeploy.sh @@ -23,6 +23,9 @@ case "$1" in 'cengnlynxpod1' ) cp maas/cengn_lynx/pod1/deployment.yaml ./deployment.yaml ;; + 'custom' ) + cp maas/custom/deployment.yaml ./deployment.yaml + ;; * ) virtinstall=1 ./cleanvm.sh @@ -68,8 +71,11 @@ sudo virsh pool-autostart default || true sudo apt-add-repository ppa:maas-deployers/stable -y sudo apt-add-repository ppa:juju/stable -y sudo apt-add-repository ppa:maas/stable -y +sudo apt-add-repository ppa:cloud-archive/liberty -y sudo apt-get update -y -sudo apt-get install openssh-server git maas-deployer juju juju-deployer maas-cli python-pip -y +sudo apt-get dist-upgrade -y +sudo apt-get install openssh-server git maas-deployer juju juju-deployer maas-cli python-pip python-openstackclient + sudo pip install shyaml juju init -f diff --git a/ci/maas/custom/deployment.yaml b/ci/maas/custom/deployment.yaml new file mode 100644 index 00000000..9207eebd --- /dev/null +++ b/ci/maas/custom/deployment.yaml @@ -0,0 +1,137 @@ +# 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 + + # Apt http proxy setting(s) + #apt_http_proxy: + + # Package sources. These will be used on the MAAS controller. + apt_sources: + - ppa:maas/stable + - ppa:juju/stable + + # 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 + |