diff options
Diffstat (limited to 'ci')
-rwxr-xr-x | ci/01-deploybundle.sh | 4 | ||||
-rwxr-xr-x | ci/02-maasdeploy.sh | 12 | ||||
-rwxr-xr-x | ci/maas/cengn_lynx/pod1/deployment.yaml | 211 | ||||
-rw-r--r-- | ci/maas/cengn_lynx/pod1/environments.yaml | 40 |
4 files changed, 267 insertions, 0 deletions
diff --git a/ci/01-deploybundle.sh b/ci/01-deploybundle.sh index 9452d7ae..8164c7e7 100755 --- a/ci/01-deploybundle.sh +++ b/ci/01-deploybundle.sh @@ -50,6 +50,10 @@ case "$3" in # Choose the external port to go out from gateway to use. sed -i -- 's/# "ext-port": "eth1"/ "ext-port": "eth1"/g' ./bundles.yaml ;; + 'cengnlynxpod1' ) + sed -i -- 's/10.4.1.1/10.120.0.1/g' ./bundles.yaml + sed -i -- 's/# "ext-port": "eth1"/ "ext-port": "eth2.1202"/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 fc42574d..cc34e342 100755 --- a/ci/02-maasdeploy.sh +++ b/ci/02-maasdeploy.sh @@ -20,6 +20,9 @@ case "$1" in 'juniperpod1' ) cp maas/juniper/pod1/deployment.yaml ./deployment.yaml ;; + 'cengnlynxpod1' ) + cp maas/cengn_lynx/pod1/deployment.yaml ./deployment.yaml + ;; * ) virtinstall=1 ./cleanvm.sh @@ -194,6 +197,15 @@ case "$1" in ;; 'juniperpod1' ) ;; + 'cengnlynxpod1' ) + maas refresh + crvlanupdsubnet vlan1201 1 "DataNetwork" 1201 2 || true + crvlanupdsubnet vlan1202 2 "PublicNetwork" 1202 3 || true + crnodevlanint $vlan1201 || true + crnodevlanint $vlan1202 || true + enableautomode eth2.1201 AUTO "172.16.121.3/24" compute || true + enableautomode eth2.1201 AUTO "172.16.121.3/24" control || true + ;; esac echo " .... MAAS deployment finished successfully ...." diff --git a/ci/maas/cengn_lynx/pod1/deployment.yaml b/ci/maas/cengn_lynx/pod1/deployment.yaml new file mode 100755 index 00000000..0652dcc9 --- /dev/null +++ b/ci/maas/cengn_lynx/pod1/deployment.yaml @@ -0,0 +1,211 @@ +# This file defines the deployment for the MAAS environment which is to be +# deployed and automated. +cengn-lynx-pod1: + 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-cengn-lynx + # TODO interfaces: ['bridge=brAdm,model=virtio','bridge=brData,model=virtio','bridge=brPublic,model=virtio'] + interfaces: ['bridge=brAdm,model=virtio','bridge=brPublic,model=virtio'] + memory: 4096 + vcpus: 4 + arch: amd64 + pool: default + disk_size: 160G + + # Apt http proxy setting(s) + apt_http_proxy: + + apt_sources: + - ppa:maas/next + - 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@10.120.0.2/system + + # Defines the IP Address that the configuration script will use to + # to access the MAAS controller via SSH. + ip_address: 10.120.0.3 + + # 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: + upstream_dns: 192.168.60.1 + maas_name: cengnlynxpod1 + # 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.120.0.3 + netmask 255.255.255.0 + network 10.120.0.0 + broadcast 10.120.0.255 + gateway 10.120.0.254 + dns-nameservers 192.168.60.1 8.8.8.8 127.0.0.1 + + auto eth1 + iface eth1 inet static + address 172.16.121.3 + netmask 255.255.255.0 + + auto eth2 + iface eth2 inet static + address 172.16.122.3 + netmask 255.255.255.0 + + + # 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.120.0.3 + subnet_mask: 255.255.255.0 + broadcast_ip: 10.120.0.255 + router_ip: 10.120.0.254 + static_range: + low: 10.120.0.20 + high: 10.120.0.100 + dynamic_range: + low: 10.120.0.101 + high: 10.120.0.200 + - device: eth1 + ip: 172.16.121.3 + subnet_mask: 255.255.255.0 + broadcast_ip: 172.16.121.255 + management: 1 + static_range: + low: 172.16.121.20 + high: 172.16.121.100 + dynamic_range: + low: 172.16.121.101 + high: 172.16.121.200 + - device: eth2 + ip: 172.16.122.3 + subnet_mask: 255.255.255.0 + broadcast_ip: 172.16.122.255 + management: 1 + static_range: + low: 172.16.122.20 + high: 172.16.122.100 + dynamic_range: + low: 172.16.122.101 + high: 172.16.122.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: + - "0c:c4:7a:3a:c5:b6" + power: + type: ipmi + address: 192.168.42.72 + user: root + pass: root + driver: LAN_2_0 + + - name: node2-compute + tags: compute + architecture: amd64/generic + mac_addresses: + - "0c:c4:7a:3a:b2:ae" + power: + type: ipmi + address: 192.168.42.40 + user: root + pass: root + driver: LAN_2_0 + + - name: node3-control + tags: control + architecture: amd64/generic + mac_addresses: + - "0c:c4:7a:1f:6f:c0" + power: + type: ipmi + address: 192.168.42.33 + user: root + pass: root + driver: LAN_2_0 + + - name: node4-control + tags: control + architecture: amd64/generic + mac_addresses: + - "0c:c4:7a:31:9d:bc" + power: + type: ipmi + address: 192.168.42.6 + user: root + pass: root + driver: LAN_2_0 + + - name: node5-control + tags: control + architecture: amd64/generic + mac_addresses: + - "00:25:90:fd:2e:48" + power: + type: ipmi + address: 192.168.42.35 + user: root + pass: root + driver: LAN_2_0 + + +# - 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'] + memory: 4096 + vcpus: 4 + arch: amd64 + pool: default + disk_size: 120G diff --git a/ci/maas/cengn_lynx/pod1/environments.yaml b/ci/maas/cengn_lynx/pod1/environments.yaml new file mode 100644 index 00000000..e1b18695 --- /dev/null +++ b/ci/maas/cengn_lynx/pod1/environments.yaml @@ -0,0 +1,40 @@ +default: cengn-lynx-pod1 + +environments: + + # https://juju.ubuntu.com/docs/config-maas.html + cengn-lynx-pod1: + type: maas + + # maas-server specifies the location of the MAAS server. It must + # specify the base path. + # + maas-server: 'http://10.120.0.3:80/MAAS' + + # maas-oauth holds the OAuth credentials from MAAS. + # + maas-oauth: '2RqvWSuUgT6EM9JDZT:QDMascKSWm67p92D6s:VZBhsHPUJs9TD4VPHqTzLrTqT3zPGya4' + + # 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 |