Skip to content

Instantly share code, notes, and snippets.

@djkonro
Created March 11, 2018 13:22
Show Gist options
  • Save djkonro/d3c5d7db62db0f96bd6bbe03e74c07d3 to your computer and use it in GitHub Desktop.
Save djkonro/d3c5d7db62db0f96bd6bbe03e74c07d3 to your computer and use it in GitHub Desktop.
virtual5:~/joid/ci$ ./03-maasdeploy.sh virtual
+ source common/tools.sh
++ '[' '!' -z '' ']'
++ readonly _tools_included=true
++ _tools_included=true
+ '[' virtual == help ']'
+ '[' virtual == -h ']'
+ '[' virtual == --help ']'
+ virtinstall=0
+ labname=virtual
+ snapinstall=0
++ cat /etc/lsb-release
++ grep CODENAME
++ cut -d = -f 2
+ opnfvdistro=xenial
+ '[' bionic == xenial ']'
+ '[' '!' -e /home/konrad/.ssh/id_rsa ']'
++ arch
+ NODE_ARCTYPE=x86_64
+ CPU_MODEL=host
+ '[' ppc64le == x86_64 ']'
+ '[' aarch64 == x86_64 ']'
+ NODE_ARCHES=amd64
+ NODE_ARC=amd64/generic
+ echo_info 'Installing and upgrading required packages'
Installing and upgrading required packages
+ sudo apt-get update -y
[sudo] password for konrad:
Hit:1 http://us.archive.ubuntu.com/ubuntu xenial InRelease
Get:2 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]
Hit:3 http://ppa.launchpad.net/juju/stable/ubuntu xenial InRelease
Ign:4 http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/pike InRelease
Get:5 http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/pike Release [7,880 B]
Get:6 http://us.archive.ubuntu.com/ubuntu xenial-updates InRelease [102 kB]
Hit:7 http://ppa.launchpad.net/maas/stable/ubuntu xenial InRelease
Get:8 http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/pike Release.gpg [543 B]
Get:9 http://us.archive.ubuntu.com/ubuntu xenial-backports InRelease [102 kB]
Hit:10 http://ppa.launchpad.net/ubuntu-cloud-archive/newton-staging/ubuntu xenial InRelease
Get:11 http://us.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages [596 kB]
Get:12 http://us.archive.ubuntu.com/ubuntu xenial-updates/universe i386 Packages [551 kB]
Fetched 1,462 kB in 3s (405 kB/s)
Reading package lists... Done
+ sudo apt-get install software-properties-common -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
software-properties-common is already the newest version (0.96.20.7).
The following packages were automatically installed and are no longer required:
archdetect-deb authbind avahi-utils curtin-common dbconfig-common
dbconfig-pgsql fonts-font-awesome fonts-lato formencode-i18n isc-dhcp-server
libconfig-general-perl libcrypt-passwdmd5-perl libdebian-installer4 libecap3
libibverbs1 libirs-export141 libisccfg-export140 libjs-angularjs
libjs-modernizr libjs-sphinxdoc libjs-underscore libjs-yui3-common
libjs-yui3-full libjs-yui3-min libopts25 librdmacm1 libsgutils2-2 ntp
postgresql python-alabaster python-django-common python-sphinx
python-sphinx-rtd-theme python3-alabaster python3-attr python3-babel
python3-blinker python3-bson python3-cffi-backend python3-convoy
python3-crochet python3-crypto python3-cryptography python3-curtin
python3-distro-info python3-django python3-django-maas
python3-django-piston3 python3-djorm-ext-pgarray python3-dnspython
python3-ecdsa python3-formencode python3-httplib2 python3-idna
python3-iso8601 python3-jinja2 python3-jsonschema python3-jwt python3-lxml
python3-maas-client python3-maas-provisioningserver python3-markupsafe
python3-mimeparse python3-netaddr python3-netifaces python3-oauth
python3-oauthlib python3-openssl python3-paramiko python3-pbr
python3-petname python3-pexpect python3-prettytable python3-psycopg2
python3-ptyprocess python3-pyasn1 python3-pyasn1-modules python3-pyparsing
python3-pyvmomi python3-requests python3-seamicroclient
python3-service-identity python3-simplejson python3-simplestreams
python3-sphinx python3-sphinx-rtd-theme python3-sqlparse python3-tempita
python3-twisted python3-txtftp python3-tz python3-urllib3 python3-yaml
python3-zope.interface sg3-utils sphinx-common sphinx-doc
sphinx-rtd-theme-common squid squid-common squid-langpack syslinux-common
tgt ubuntu-cloudimage-keyring
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 473 not upgraded.
+ '[' 0 -eq 0 ']'
+ sudo apt-add-repository ppa:juju/stable -y
gpg: keyring `/tmp/tmplrd7fc4n/secring.gpg' created
gpg: keyring `/tmp/tmplrd7fc4n/pubring.gpg' created
gpg: requesting key C8068B11 from hkp server keyserver.ubuntu.com
gpg: /tmp/tmplrd7fc4n/trustdb.gpg: trustdb created
gpg: key C8068B11: public key "Launchpad Ensemble PPA" imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK
+ sudo apt-add-repository ppa:maas/stable -y
gpg: keyring `/tmp/tmpyej7ofny/secring.gpg' created
gpg: keyring `/tmp/tmpyej7ofny/pubring.gpg' created
gpg: requesting key 684D4A1C from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpyej7ofny/trustdb.gpg: trustdb created
gpg: key 684D4A1C: public key "Launchpad PPA for MAAS" imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK
+ '[' bionic '!=' xenial ']'
+ sudo apt-add-repository cloud-archive:pike -y
Reading package lists...
Building dependency tree...
Reading state information...
ubuntu-cloud-keyring is already the newest version (2012.08.14).
The following packages were automatically installed and are no longer required:
archdetect-deb authbind avahi-utils curtin-common dbconfig-common
dbconfig-pgsql fonts-font-awesome fonts-lato formencode-i18n isc-dhcp-server
libconfig-general-perl libcrypt-passwdmd5-perl libdebian-installer4 libecap3
libibverbs1 libirs-export141 libisccfg-export140 libjs-angularjs
libjs-modernizr libjs-sphinxdoc libjs-underscore libjs-yui3-common
libjs-yui3-full libjs-yui3-min libopts25 librdmacm1 libsgutils2-2 ntp
postgresql python-alabaster python-django-common python-sphinx
python-sphinx-rtd-theme python3-alabaster python3-attr python3-babel
python3-blinker python3-bson python3-cffi-backend python3-convoy
python3-crochet python3-crypto python3-cryptography python3-curtin
python3-distro-info python3-django python3-django-maas
python3-django-piston3 python3-djorm-ext-pgarray python3-dnspython
python3-ecdsa python3-formencode python3-httplib2 python3-idna
python3-iso8601 python3-jinja2 python3-jsonschema python3-jwt python3-lxml
python3-maas-client python3-maas-provisioningserver python3-markupsafe
python3-mimeparse python3-netaddr python3-netifaces python3-oauth
python3-oauthlib python3-openssl python3-paramiko python3-pbr
python3-petname python3-pexpect python3-prettytable python3-psycopg2
python3-ptyprocess python3-pyasn1 python3-pyasn1-modules python3-pyparsing
python3-pyvmomi python3-requests python3-seamicroclient
python3-service-identity python3-simplejson python3-simplestreams
python3-sphinx python3-sphinx-rtd-theme python3-sqlparse python3-tempita
python3-twisted python3-txtftp python3-tz python3-urllib3 python3-yaml
python3-zope.interface sg3-utils sphinx-common sphinx-doc
sphinx-rtd-theme-common squid squid-common squid-langpack syslinux-common
tgt ubuntu-cloudimage-keyring
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 473 not upgraded.
+ '[' aarch64 == x86_64 ']'
+ sudo apt-get update -y
Hit:1 http://us.archive.ubuntu.com/ubuntu xenial InRelease
Hit:2 http://security.ubuntu.com/ubuntu xenial-security InRelease
Hit:3 http://ppa.launchpad.net/juju/stable/ubuntu xenial InRelease
Ign:4 http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/pike InRelease
Hit:5 http://us.archive.ubuntu.com/ubuntu xenial-updates InRelease
Hit:6 http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/pike Release
Hit:7 http://us.archive.ubuntu.com/ubuntu xenial-backports InRelease
Hit:9 http://ppa.launchpad.net/maas/stable/ubuntu xenial InRelease
Hit:10 http://ppa.launchpad.net/ubuntu-cloud-archive/newton-staging/ubuntu xenial InRelease
Reading package lists... Done
+ '[' 0 -eq 1 ']'
+ sudo apt-get install bridge-utils openssh-server bzr git virtinst qemu-kvm libvirt-bin maas maas-region-controller juju python-pip python-psutil python-openstackclient python-congressclient gsutil charm-tools pastebinit python-jinja2 sshpass openssh-server vlan ipmitool jq expect snap -y --allow-unauthenticated
Reading package lists... Done
Building dependency tree
Reading state information... Done
bridge-utils is already the newest version (1.5-9ubuntu1).
pastebinit is already the newest version (1.5-1).
python-jinja2 is already the newest version (2.8-1).
python-psutil is already the newest version (3.4.2-1).
expect is already the newest version (5.45-7).
gsutil is already the newest version (3.1-1).
jq is already the newest version (1.5+dfsg-1).
sshpass is already the newest version (1.05-1).
bzr is already the newest version (2.7.0-2ubuntu3.1).
git is already the newest version (1:2.7.4-0ubuntu1.3).
openssh-server is already the newest version (1:7.2p2-4ubuntu2.4).
vlan is already the newest version (1.9-3.2ubuntu1.16.04.4).
ipmitool is already the newest version (1.8.16-3ubuntu0.1).
python-pip is already the newest version (8.1.1-2ubuntu0.4).
snap is already the newest version (2013-11-29-1ubuntu2.16.04.1).
virtinst is already the newest version (1:1.3.2-3ubuntu1.16.04.4).
libvirt-bin is already the newest version (3.6.0-1ubuntu6.2~cloud0).
python-congressclient is already the newest version (1.8.0-0ubuntu1~cloud0).
python-openstackclient is already the newest version (3.12.0-0ubuntu2~cloud0).
qemu-kvm is already the newest version (1:2.10+dfsg-0ubuntu3.4~cloud0).
juju is already the newest version (1:2.3.4-0ubuntu1~16.04.1~juju1).
charm-tools is already the newest version (2.2.0-0ubuntu1~ubuntu16.04.1~ppa2).
The following additional packages will be installed:
maas-cli maas-common maas-dhcp maas-dns maas-proxy maas-rack-controller
maas-region-api
Suggested packages:
amtterm nmap wsmancli
The following NEW packages will be installed:
maas maas-cli maas-common maas-dhcp maas-dns maas-proxy maas-rack-controller
maas-region-api maas-region-controller
0 upgraded, 9 newly installed, 0 to remove and 473 not upgraded.
Need to get 0 B/1,295 kB of archives.
After this operation, 6,184 kB of additional disk space will be used.
Preconfiguring packages ...
Selecting previously unselected package maas-cli.
(Reading database ... 155390 files and directories currently installed.)
Preparing to unpack .../maas-cli_2.3.0-6434-gd354690-0ubuntu1~16.04.1_all.deb ...
Unpacking maas-cli (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Selecting previously unselected package maas-common.
Preparing to unpack .../maas-common_2.3.0-6434-gd354690-0ubuntu1~16.04.1_all.deb ...
Unpacking maas-common (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Selecting previously unselected package maas-dhcp.
Preparing to unpack .../maas-dhcp_2.3.0-6434-gd354690-0ubuntu1~16.04.1_all.deb ...
Unpacking maas-dhcp (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Selecting previously unselected package maas-rack-controller.
Preparing to unpack .../maas-rack-controller_2.3.0-6434-gd354690-0ubuntu1~16.04.1_all.deb ...
Unpacking maas-rack-controller (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Selecting previously unselected package maas-proxy.
Preparing to unpack .../maas-proxy_2.3.0-6434-gd354690-0ubuntu1~16.04.1_all.deb ...
Unpacking maas-proxy (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Selecting previously unselected package maas-region-api.
Preparing to unpack .../maas-region-api_2.3.0-6434-gd354690-0ubuntu1~16.04.1_all.deb ...
Unpacking maas-region-api (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Selecting previously unselected package maas-dns.
Preparing to unpack .../maas-dns_2.3.0-6434-gd354690-0ubuntu1~16.04.1_all.deb ...
Unpacking maas-dns (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Selecting previously unselected package maas-region-controller.
Preparing to unpack .../maas-region-controller_2.3.0-6434-gd354690-0ubuntu1~16.04.1_all.deb ...
Unpacking maas-region-controller (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Selecting previously unselected package maas.
Preparing to unpack .../maas_2.3.0-6434-gd354690-0ubuntu1~16.04.1_all.deb ...
Unpacking maas (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Setting up maas-cli (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Setting up maas-common (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
adduser: Warning: The home directory `/var/lib/maas' does not belong to the user you are currently creating.
Setting up maas-dhcp (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Setting up maas-rack-controller (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Setting up maas-proxy (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Setting up maas-region-api (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Considering dependency proxy for proxy_http:
Module proxy already enabled
Module proxy_http already enabled
Considering dependency proxy for proxy_wstunnel:
Module proxy already enabled
Module proxy_wstunnel already enabled
Module expires already enabled
Module rewrite already enabled
Setting up maas-dns (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
Setting up maas-region-controller (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
dbconfig-common: writing config to /etc/dbconfig-common/maas-region-controller.conf
Creating config file /etc/dbconfig-common/maas-region-controller.conf with new version
creating postgres user maas: success.
verifying creation of user: success.
creating database maasdb: success.
verifying database maasdb exists: success.
dbconfig-common: flushing administrative password
Operations to perform:
Synchronize unmigrated apps: staticfiles, messages
Apply all migrations: contenttypes, sessions, auth, maasserver, sites, metadataserver, piston3
Synchronizing apps without migrations:
Creating tables...
Running deferred SQL...
Installing custom SQL...
Running migrations:
Rendering model states... DONE
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying auth.0002_auto_20151119_1629... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying piston3.0001_initial... OK
Applying maasserver.0001_initial... OK
Applying metadataserver.0001_initial... OK
Applying maasserver.0002_remove_candidate_name_model... OK
Applying maasserver.0003_add_node_type_to_node... OK
Applying maasserver.0004_migrate_installable_to_node_type... OK
Applying maasserver.0005_delete_installable_from_node... OK
Applying maasserver.0006_add_lease_time_to_staticipaddress... OK
Applying maasserver.0007_create_node_proxy_models... OK
Applying maasserver.0008_use_new_arrayfield... OK
Applying maasserver.0009_remove_routers_field_from_node... OK
Applying maasserver.0010_add_dns_models... OK
Applying maasserver.0011_domain_data... OK
Applying maasserver.0012_drop_dns_fields... OK
Applying maasserver.0013_remove_boot_type_from_node... OK
Applying maasserver.0014_add_region_models... OK
Applying maasserver.0015_add_bmc_model... OK
Applying maasserver.0016_migrate_power_data_node_to_bmc... OK
Applying maasserver.0017_remove_node_power_type... OK
Applying maasserver.0018_add_dnsdata... OK
Applying maasserver.0019_add_iprange... OK
Applying maasserver.0020_nodegroup_to_rackcontroller... OK
Applying maasserver.0021_nodegroupinterface_to_iprange... OK
Applying maasserver.0022_extract_ip_for_bmcs... OK
Applying maasserver.0023_add_ttl_field... OK
Applying maasserver.0024_remove_nodegroupinterface... OK
Applying maasserver.0025_create_node_system_id_sequence... OK
Applying maasserver.0026_create_zone_serial_sequence... OK
Applying maasserver.0027_replace_static_range_with_admin_reserved_ranges... OK
Applying maasserver.0028_update_default_vlan_on_interface_and_subnet... OK
Applying maasserver.0029_add_rdns_mode... OK
Applying maasserver.0030_drop_all_old_funcs... OK
Applying maasserver.0031_add_region_rack_rpc_conn_model... OK
Applying maasserver.0032_loosen_vlan... OK
Applying maasserver.0033_iprange_minor_changes... OK
Applying maasserver.0034_rename_mount_params_as_mount_options... OK
Applying maasserver.0035_convert_ether_wake_to_manual_power_type... OK
Applying maasserver.0036_add_service_model... OK
Applying maasserver.0037_node_last_image_sync... OK
Applying maasserver.0038_filesystem_ramfs_tmpfs_support... OK
Applying maasserver.0039_create_template_and_versionedtextfile_models... OK
Applying maasserver.0040_fix_id_seq... OK
Applying maasserver.0041_change_bmc_on_delete_to_set_null... OK
Applying maasserver.0042_add_routable_rack_controllers_to_bmc... OK
Applying maasserver.0043_dhcpsnippet... OK
Applying maasserver.0044_remove_di_bootresourcefiles... OK
Applying maasserver.0045_add_node_to_filesystem... OK
Applying maasserver.0046_add_bridge_interface_type... OK
Applying maasserver.0047_fix_spelling_of_degraded... OK
Applying maasserver.0048_add_subnet_allow_proxy... OK
Applying maasserver.0049_add_external_dhcp_present_to_vlan... OK
Applying maasserver.0050_modify_external_dhcp_on_vlan... OK
Applying maasserver.0051_space_fabric_unique... OK
Applying maasserver.0052_add_codename_title_eol_to_bootresourcecache... OK
Applying maasserver.0053_add_ownerdata_model... OK
Applying maasserver.0054_controller... OK
Applying maasserver.0055_dns_publications... OK
Applying maasserver.0056_zone_serial_ownership... OK
Applying maasserver.0057_initial_dns_publication... OK
Applying maasserver.0058_bigger_integer_for_dns_publication_serial... OK
Applying maasserver.0056_add_description_to_fabric_and_space... OK
Applying maasserver.0057_merge... OK
Applying maasserver.0059_merge... OK
Applying maasserver.0060_amt_remove_mac_address... OK
Applying maasserver.0061_maas_nodegroup_worker_to_maas... OK
Applying maasserver.0062_fix_bootsource_daily_label... OK
Applying maasserver.0063_remove_orphaned_bmcs_and_ips... OK
Applying maasserver.0064_remove_unneeded_event_triggers... OK
Applying maasserver.0065_larger_osystem_and_distro_series... OK
Applying maasserver.0066_allow_squashfs... OK
Applying maasserver.0067_add_size_to_largefile... OK
Applying maasserver.0068_drop_node_system_id_sequence... OK
Applying maasserver.0069_add_previous_node_status_to_node... OK
Applying maasserver.0070_allow_null_vlan_on_interface... OK
Applying maasserver.0071_ntp_server_to_ntp_servers... OK
Applying maasserver.0072_packagerepository... OK
Applying maasserver.0073_migrate_package_repositories... OK
Applying maasserver.0072_update_status_and_previous_status... OK
Applying maasserver.0074_merge... OK
Applying maasserver.0075_modify_packagerepository... OK
Applying maasserver.0076_interface_discovery_rescue_mode... OK
Applying maasserver.0077_static_routes... OK
Applying maasserver.0078_remove_packagerepository_description... OK
Applying maasserver.0079_add_keysource_model... OK
Applying maasserver.0080_change_packagerepository_url_type... OK
Applying maasserver.0081_allow_larger_bootsourcecache_fields... OK
Applying maasserver.0082_add_kflavor... OK
Applying maasserver.0083_device_discovery... OK
Applying maasserver.0084_add_default_user_to_node_model... OK
Applying maasserver.0085_no_intro_on_upgrade... OK
Applying maasserver.0086_remove_powerpc_from_ports_arches... OK
Applying maasserver.0087_add_completed_intro_to_userprofile... OK
Applying maasserver.0088_remove_node_disable_ipv4... OK
Applying maasserver.0089_active_discovery... OK
Applying maasserver.0090_bootloaders... OK
Applying maasserver.0091_v2_to_v3... OK
Applying maasserver.0092_rolling... OK
Applying maasserver.0093_add_rdns_model... OK
Applying maasserver.0094_add_unmanaged_subnets... OK
Applying maasserver.0095_vlan_relay_vlan... OK
Applying maasserver.0096_set_default_vlan_field... OK
Applying maasserver.0097_node_chassis_storage_hints... OK
Applying maasserver.0098_add_space_to_vlan... OK
Applying maasserver.0099_set_default_vlan_field... OK
Applying maasserver.0100_migrate_spaces_from_subnet_to_vlan... OK
Applying maasserver.0101_filesystem_btrfs_support... OK
Applying maasserver.0102_remove_space_from_subnet... OK
Applying maasserver.0103_notifications... OK
Applying maasserver.0104_notifications_dismissals... OK
Applying metadataserver.0002_script_models... OK
Applying maasserver.0105_add_script_sets_to_node_model... OK
Applying maasserver.0106_testing_status... OK
Applying maasserver.0107_chassis_to_pods... OK
Applying maasserver.0108_generate_bmc_names... OK
Applying maasserver.0109_bmc_names_unique... OK
Applying maasserver.0110_notification_category... OK
Applying maasserver.0111_remove_component_error... OK
Applying maasserver.0112_update_notification... OK
Applying maasserver.0113_set_filepath_limit_to_linux_max... OK
Applying maasserver.0114_node_dynamic_to_creation_type... OK
Applying maasserver.0115_additional_boot_resource_filetypes... OK
Applying maasserver.0116_add_disabled_components_for_mirrors... OK
Applying maasserver.0117_add_iscsi_block_device... OK
Applying maasserver.0118_add_iscsi_storage_pod... OK
Applying maasserver.0119_set_default_vlan_field... OK
Applying maasserver.0120_bootsourcecache_extra... OK
Applying maasserver.0121_relax_staticipaddress_unique_constraint... OK
Applying maasserver.0122_make_virtualblockdevice_uuid_editable... OK
Applying maasserver.0123_make_iprange_comment_default_to_empty_string... OK
Applying maasserver.0124_staticipaddress_address_family_index... OK
Applying maasserver.0125_add_switch_model... OK
Applying maasserver.0126_add_controllerinfo_model... OK
Applying maasserver.0127_nodemetadata... OK
Applying maasserver.0128_events_created_index... OK
Applying maasserver.0129_add_install_rackd_flag... OK
Applying metadataserver.0003_remove_noderesult... OK
Applying metadataserver.0004_aborted_script_status... OK
Applying metadataserver.0005_store_powerstate_on_scriptset_creation... OK
Applying metadataserver.0006_scriptresult_combined_output... OK
Applying metadataserver.0007_migrate-commissioningscripts... OK
Applying metadataserver.0008_remove-commissioningscripts... OK
Applying metadataserver.0009_remove_noderesult_schema... OK
Applying metadataserver.0010_scriptresult_time_and_script_title... OK
Applying metadataserver.0011_script_metadata... OK
Applying metadataserver.0012_store_script_results... OK
Applying metadataserver.0013_scriptresult_physicalblockdevice... OK
Applying metadataserver.0014_rename_dhcp_unconfigured_ifaces... OK
Applying metadataserver.0015_migrate_storage_tests... OK
Applying piston3.0002_auto_20151209_1652... OK
Applying sessions.0001_initial... OK
Applying sites.0001_initial... OK
apache2.service is not a native service, redirecting to systemd-sysv-install
Executing /lib/systemd/systemd-sysv-install is-enabled apache2
Setting up maas (2.3.0-6434-gd354690-0ubuntu1~16.04.1) ...
+ '[' aarch64 == x86_64 ']'
+ sudo -H pip install --upgrade pip
Requirement already up-to-date: pip in /usr/local/lib/python2.7/dist-packages
+ case "$labname" in
+ echo_info 'Using default labconfig for virtual install'
Using default labconfig for virtual install
+ cp ../labconfig/default/labconfig.yaml ./
+ python genDeploymentConfig.py -l labconfig.yaml
+ labname=default
+ virtinstall=1
+ python -c 'import sys, yaml, json; json.dump(yaml.load(sys.stdin), sys.stdout, indent=4)'
+ python -c 'import sys, yaml, json; json.dump(yaml.load(sys.stdin), sys.stdout, indent=4)'
++ grep ' ip_address' deployconfig.yaml
++ cut -d : -f 2
++ sed -e 's/ //'
+ MAAS_IP=192.168.122.1
++ grep maas_name deployconfig.yaml
++ cut -d : -f 2
++ sed -e 's/ //'
+ MAAS_NAME=virtualpod1
+ API_SERVER=http://192.168.122.1:5240/MAAS/api/2.0
+ API_SERVERMAAS=http://192.168.122.1:5240/MAAS/
+ PROFILE=ubuntu
++ grep upstream_dns deployconfig.yaml
++ cut -d : -f 2
++ sed -e 's/ //'
+ MY_UPSTREAM_DNS=8.8.8.8
++ cat /home/konrad/.ssh/id_rsa.pub
+ SSH_KEY='ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCztmksKi32q0czkMZk/YOg/yeGQlJnhaIzTmgSnmK5GTnP3I38PKGeNcuNUlaAKdV5qU5H5GcHBuX0EVoE/IInMq/wzcaO9xsX12cHDzDHCxcBvFdoVsV3v4Sf1kEBsslvx5WiUHTDb9MP1O/WovYcEiTTEMQdGF6qS8znhFwJBDPK1GHSF2khGgzPe1NumPepYj0cBjb72VhfEG3Xs3PA5Wco/pMGYeuK7fB7EhT+f1zfE+dRf9rsc77C3So+jCh+Hr10ZoSm4NxKttDBYEE2lZEdKtmdIvJObmnTk96foMOugdS0U0tJGmiLaqIuspwVptlmhsRZFIWIaug/zrgf konrad@huawei-virtual5'
++ grep main_archive deployconfig.yaml
++ cut -d : -f 2-3
++ sed -e 's/ //'
+ MAIN_ARCHIVE=http://archive.ubuntu.com/ubuntu
+ URL=https://images.maas.io/ephemeral-v3/daily/
+ KEYRING_FILE=/usr/share/keyrings/ubuntu-cloudimage-keyring.gpg
+ SOURCE_ID=1
+ FABRIC_ID=1
+ PRIMARY_RACK_CONTROLLER=192.168.122.1
+ VLAN_UNTTAGED=untagged
+ ./cleanvm.sh
+ source common/tools.sh
++ '[' '!' -z '' ']'
++ readonly _tools_included=true
++ _tools_included=true
+ echo_info 'Cleanup Started...'
Cleanup Started...
++ sudo virsh list --all
+ vm_list=' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' node1-control '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' node2-compute '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' node3-control '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' node4-control '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' node5-compute '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' rack-vir-m1 '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' rack-vir-m2 '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' rack-vir-m3 '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' rack-vir-m4 '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' rack-vir-m1 '
+ continue
+ for vm in node1-control node2-compute node3-control node4-control node5-compute rack-vir-m1 rack-vir-m2 rack-vir-m3 rack-vir-m4 rack-vir-m1 bootstrap
+ echo ' Id Name State
----------------------------------------------------
14 host2 running
15 host1 running
16 host3 running
17 host4 running
18 host5 running'
+ grep -q ' bootstrap '
+ continue
+ echo_info 'Cleanup Finished!'
Cleanup Finished!
+ mkdir /home/konrad/joid_config/
mkdir: cannot create directory ‘/home/konrad/joid_config/’: File exists
+ true
+ '[' -e ./deployconfig.yaml ']'
+ cp ./deployconfig.yaml /home/konrad/joid_config/
+ cp ./labconfig.yaml /home/konrad/joid_config/
+ sudoer_file=/etc/sudoers.d/90-joid-init
+ sudoer_entry='konrad ALL=(ALL) NOPASSWD:ALL'
+ '[' -e /etc/sudoers.d/90-joid-init ']'
+ sudo grep -q 'konrad ALL=(ALL) NOPASSWD:ALL' /etc/sudoers.d/90-joid-init
+ echo_info 'Deployment of MAAS started'
Deployment of MAAS started
+ sudo adduser konrad libvirtd
The user `konrad' is already a member of `libvirtd'.
+ sudo adduser konrad libvirt
The user `konrad' is already a member of `libvirt'.
+ sudo virsh pool-define-as default --type dir --target /var/lib/libvirt/images/
error: Failed to define pool default
error: operation failed: pool 'default' already exists with uuid 7a7da5d7-578f-494f-bece-184e2f20c080
+ true
+ sudo virsh pool-start default
error: Failed to start pool default
error: Requested operation is not valid: storage pool 'default' is already active
+ true
+ sudo virsh pool-autostart default
Pool default marked as autostarted
+ '[' 1 -eq 1 ']'
+ sudo virsh net-dumpxml default
+ sed -i /dhcp/d default-net-org.xml
+ sed -i /range/d default-net-org.xml
+ sudo virsh net-destroy default
Network default destroyed
+ sudo virsh net-define default-net-org.xml
Network default defined from default-net-org.xml
+ sudo virsh net-start default
Network default started
+ rm -f default-net-org.xml
++ pip list --format=columns
++ grep google-api-python-client
++ wc -l
+ '[' 0 == 1 ']'
+ '[' 0 -eq 0 ']'
+ '[' '!' -e /var/lib/maas/.ssh/id_rsa.pub ']'
+ '[' '!' -e /home/konrad/id_rsa_maas.pub ']'
+ sudo -u maas mkdir /var/lib/maas/.ssh/
+ sudo cp /home/konrad/id_rsa_maas /var/lib/maas/.ssh/id_rsa
+ sudo cp /home/konrad/id_rsa_maas.pub /var/lib/maas/.ssh/id_rsa.pub
+ sudo chown maas:maas /var/lib/maas/.ssh/id_rsa
+ sudo chown maas:maas /var/lib/maas/.ssh/id_rsa.pub
+ sudo cat /var/lib/maas/.ssh/id_rsa.pub
+ sudo cat /home/konrad/.ssh/id_rsa.pub
+ '[' 0 -eq 1 ']'
+ sudo maas-rack config --region-url http://192.168.122.1:5240/MAAS
+ sudo maas createadmin --username=ubuntu --email=ubuntu@ubuntu.com --password=ubuntu
++ sudo maas-region apikey --username=ubuntu
+ API_KEY=7UYf3FNfP8Jcuc2BUn:zDjXCXuxMbxdjQHcZY:NVvf6Bns4LA7kSvVXfhbuhWykXkhbvTg
+ configuremaas
+ maas login ubuntu http://192.168.122.1:5240/MAAS/ 7UYf3FNfP8Jcuc2BUn:zDjXCXuxMbxdjQHcZY:NVvf6Bns4LA7kSvVXfhbuhWykXkhbvTg
You are now logged in to the MAAS server at
http://192.168.122.1:5240/MAAS/api/2.0/ with the profile name
'ubuntu'.
For help with the available commands, try:
maas ubuntu --help
+ maas ubuntu maas set-config name=main_archive value=http://archive.ubuntu.com/ubuntu
Success.
Machine-readable output follows:
OK
+ maas ubuntu maas set-config name=upstream_dns value=8.8.8.8
Success.
Machine-readable output follows:
OK
+ maas ubuntu maas set-config name=maas_name value=virtualpod1
Success.
Machine-readable output follows:
OK
+ maas ubuntu maas set-config name=ntp_server value=ntp.ubuntu.com
Success.
Machine-readable output follows:
OK
+ maas ubuntu sshkeys create 'key=ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCztmksKi32q0czkMZk/YOg/yeGQlJnhaIzTmgSnmK5GTnP3I38PKGeNcuNUlaAKdV5qU5H5GcHBuX0EVoE/IInMq/wzcaO9xsX12cHDzDHCxcBvFdoVsV3v4Sf1kEBsslvx5WiUHTDb9MP1O/WovYcEiTTEMQdGF6qS8znhFwJBDPK1GHSF2khGgzPe1NumPepYj0cBjb72VhfEG3Xs3PA5Wco/pMGYeuK7fB7EhT+f1zfE+dRf9rsc77C3So+jCh+Hr10ZoSm4NxKttDBYEE2lZEdKtmdIvJObmnTk96foMOugdS0U0tJGmiLaqIuspwVptlmhsRZFIWIaug/zrgf konrad@huawei-virtual5'
Success.
Machine-readable output follows:
{
"id": 1,
"keysource": null,
"key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCztmksKi32q0czkMZk/YOg/yeGQlJnhaIzTmgSnmK5GTnP3I38PKGeNcuNUlaAKdV5qU5H5GcHBuX0EVoE/IInMq/wzcaO9xsX12cHDzDHCxcBvFdoVsV3v4Sf1kEBsslvx5WiUHTDb9MP1O/WovYcEiTTEMQdGF6qS8znhFwJBDPK1GHSF2khGgzPe1NumPepYj0cBjb72VhfEG3Xs3PA5Wco/pMGYeuK7fB7EhT+f1zfE+dRf9rsc77C3So+jCh+Hr10ZoSm4NxKttDBYEE2lZEdKtmdIvJObmnTk96foMOugdS0U0tJGmiLaqIuspwVptlmhsRZFIWIaug/zrgf konrad@huawei-virtual5"
}
+ for tag in bootstrap compute control storage
+ maas ubuntu tags create name=bootstrap
Success.
Machine-readable output follows:
{
"comment": "",
"name": "bootstrap",
"kernel_opts": "",
"resource_uri": "/MAAS/api/2.0/tags/bootstrap/",
"definition": ""
}
+ for tag in bootstrap compute control storage
+ maas ubuntu tags create name=compute
Success.
Machine-readable output follows:
{
"name": "compute",
"resource_uri": "/MAAS/api/2.0/tags/compute/",
"definition": "",
"kernel_opts": "",
"comment": ""
}
+ for tag in bootstrap compute control storage
+ maas ubuntu tags create name=control
Success.
Machine-readable output follows:
{
"comment": "",
"resource_uri": "/MAAS/api/2.0/tags/control/",
"kernel_opts": "",
"definition": "",
"name": "control"
}
+ for tag in bootstrap compute control storage
+ maas ubuntu tags create name=storage
Success.
Machine-readable output follows:
{
"comment": "",
"definition": "",
"name": "storage",
"kernel_opts": "",
"resource_uri": "/MAAS/api/2.0/tags/storage/"
}
+ maas ubuntu tags create name=opnfv-dpdk 'comment=OPNFV DPDK enablement' 'kernel_opts=hugepagesz=2M hugepages=1024 hugepagesz=1G hugepages=20 default_hugepagesz=1G intel_iommu=on'
Success.
Machine-readable output follows:
{
"comment": "OPNFV DPDK enablement",
"name": "opnfv-dpdk",
"kernel_opts": "hugepagesz=2M hugepages=1024 hugepagesz=1G hugepages=20 default_hugepagesz=1G intel_iommu=on",
"resource_uri": "/MAAS/api/2.0/tags/opnfv-dpdk/",
"definition": ""
}
+ maas ubuntu package-repositories create 'name=Ubuntu Proposed new' url=http://archive.ubuntu.com/ubuntu components=main distributions=xenial-proposed arches=amd64,i386
Success.
Machine-readable output follows:
{
"name": "Ubuntu Proposed new",
"url": "http://archive.ubuntu.com/ubuntu",
"key": "",
"id": 3,
"arches": [
"amd64",
"i386"
],
"disabled_pockets": [],
"components": [
"main"
],
"resource_uri": "/MAAS/api/2.0/package-repositories/3/",
"distributions": [
"xenial-proposed"
],
"disabled_components": [],
"enabled": true
}
+ maas ubuntu space update 0 name=default
Not Found
+ true
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space admin-api'
Creating the space admin-api
+ maas ubuntu spaces create name=admin-api
Success.
Machine-readable output follows:
{
"vlans": [],
"name": "admin-api",
"subnets": [],
"id": 1,
"resource_uri": "/MAAS/api/2.0/spaces/1/"
}
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space internal-api'
Creating the space internal-api
+ maas ubuntu spaces create name=internal-api
Success.
Machine-readable output follows:
{
"vlans": [],
"name": "internal-api",
"subnets": [],
"id": 2,
"resource_uri": "/MAAS/api/2.0/spaces/2/"
}
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space public-api'
Creating the space public-api
+ maas ubuntu spaces create name=public-api
Success.
Machine-readable output follows:
{
"name": "public-api",
"vlans": [],
"id": 3,
"resource_uri": "/MAAS/api/2.0/spaces/3/",
"subnets": []
}
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space storage-access'
Creating the space storage-access
+ maas ubuntu spaces create name=storage-access
Success.
Machine-readable output follows:
{
"vlans": [],
"id": 4,
"name": "storage-access",
"resource_uri": "/MAAS/api/2.0/spaces/4/",
"subnets": []
}
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space storage-cluster'
Creating the space storage-cluster
+ maas ubuntu spaces create name=storage-cluster
Success.
Machine-readable output follows:
{
"name": "storage-cluster",
"vlans": [],
"id": 5,
"resource_uri": "/MAAS/api/2.0/spaces/5/",
"subnets": []
}
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space admin'
Creating the space admin
+ maas ubuntu spaces create name=admin
Success.
Machine-readable output follows:
{
"id": 6,
"name": "admin",
"subnets": [],
"resource_uri": "/MAAS/api/2.0/spaces/6/",
"vlans": []
}
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space tenant-data'
Creating the space tenant-data
+ maas ubuntu spaces create name=tenant-data
Success.
Machine-readable output follows:
{
"id": 7,
"name": "tenant-data",
"subnets": [],
"resource_uri": "/MAAS/api/2.0/spaces/7/",
"vlans": []
}
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space tenant-api'
Creating the space tenant-api
+ maas ubuntu spaces create name=tenant-api
Success.
Machine-readable output follows:
{
"name": "tenant-api",
"vlans": [],
"id": 8,
"resource_uri": "/MAAS/api/2.0/spaces/8/",
"subnets": []
}
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space tenant-public'
Creating the space tenant-public
+ maas ubuntu spaces create name=tenant-public
Success.
Machine-readable output follows:
{
"id": 9,
"name": "tenant-public",
"subnets": [],
"resource_uri": "/MAAS/api/2.0/spaces/9/",
"vlans": []
}
+ for space in admin-api internal-api public-api storage-access storage-cluster admin tenant-data tenant-api tenant-public os-api
+ echo_info 'Creating the space os-api'
Creating the space os-api
+ maas ubuntu spaces create name=os-api
Success.
Machine-readable output follows:
{
"id": 10,
"name": "os-api",
"subnets": [],
"resource_uri": "/MAAS/api/2.0/spaces/10/",
"vlans": []
}
+ maas ubuntu boot-source update 1 url=https://images.maas.io/ephemeral-v3/daily/ keyring_filename=/usr/share/keyrings/ubuntu-cloudimage-keyring.gpg
Success.
Machine-readable output follows:
{
"keyring_filename": "/usr/share/keyrings/ubuntu-cloudimage-keyring.gpg",
"resource_uri": "/MAAS/api/2.0/boot-sources/1/",
"url": "https://images.maas.io/ephemeral-v3/daily/",
"id": 1,
"updated": "2018-03-11T20:24:33.753",
"created": "2018-03-11T20:23:30.406",
"keyring_data": ""
}
+ '[' x86_64 '!=' x86_64 ']'
+ '[' 0 -eq 0 ']'
+ maas ubuntu boot-resources import
Success.
Machine-readable output follows:
Import of boot resources started
++ maas ubuntu boot-resources is-importing
+ '[' true == true ']'
+ sleep 60
++ maas ubuntu boot-resources is-importing
+ '[' true == true ']'
+ sleep 60
++ maas ubuntu boot-resources is-importing
+ '[' true == true ']'
+ sleep 60
++ maas ubuntu boot-resources is-importing
+ '[' true == true ']'
+ sleep 60
++ maas ubuntu boot-resources is-importing
+ '[' true == true ']'
+ sleep 60
++ maas ubuntu boot-resources is-importing
+ '[' false == true ']'
+ sleep 30
+ setupspacenetwork
++ cat labconfig.json
++ jq '.opnfv.spaces[].type'
++ cut -d '"' -f 2
+ nettypes='admin
floating'
+ for type in '$nettypes'
+ config_done=0
++ cat labconfig.json
++ jq '.opnfv.spaces[] | select(.type=="admin").cidr'
++ cut -d '"' -f 2
+ SPACE_CIDR=192.168.122.0/24
++ cat labconfig.json
++ jq '.opnfv.spaces[] | select(.type=="admin").vlan'
++ cut -d '"' -f 2
+ SPACE_VLAN=null
++ cat labconfig.json
++ cut -d '"' -f 2
++ jq '.opnfv.spaces[] | select(.type=="admin").gateway'
+ SPACE_GWAY=192.168.122.1
++ maas ubuntu subnets read
++ jq -r '.[] | select(.cidr=="192.168.122.0/24").vlan.fabric'
+ NET_FABRIC_NAME=fabric-5
+ '[' fabric-5 ']'
+ '[' fabric-5 '!=' null ']'
++ maas ubuntu subnets read
++ jq -r '.[] | select(.cidr=="192.168.122.0/24").vlan.vid'
+ NET_FABRIC_VID=0
++ maas ubuntu fabric read fabric-5
++ jq -r .id
+ NET_FABRIC_ID=5
+ '[' null == null ']'
+ SPACE_VLAN=0
++ maas ubuntu vlans read 5
++ jq -r '.[] | select(.vid=="0").id'
+ NET_VLAN_ID=
++ maas ubuntu vlans read 5
++ jq -r '.[] | select(.vid=="0").vid'
+ NET_VLAN_VID=
+ '[' 192.168.122.1 ']'
+ '[' 192.168.122.1 '!=' null ']'
+ maas ubuntu subnet update 192.168.122.0/24 gateway_ip=192.168.122.1
Success.
Machine-readable output follows:
{
"cidr": "192.168.122.0/24",
"allow_proxy": true,
"managed": true,
"name": "192.168.122.0/24",
"active_discovery": false,
"vlan": {
"primary_rack": null,
"relay_vlan": null,
"dhcp_on": false,
"space": "undefined",
"fabric": "fabric-5",
"fabric_id": 5,
"name": "untagged",
"mtu": 1500,
"secondary_rack": null,
"vid": 0,
"id": 5006,
"resource_uri": "/MAAS/api/2.0/vlans/5006/",
"external_dhcp": null
},
"dns_servers": [],
"space": "undefined",
"rdns_mode": 2,
"id": 6,
"resource_uri": "/MAAS/api/2.0/subnets/6/",
"gateway_ip": "192.168.122.1"
}
+ '[' ']'
+ '[' ']'
++ maas ubuntu vlans create 5 vid=0
++ jq --raw-output .id
+ NET_VLAN_ID=null
+ '[' null ']'
+ '[' null '!=' null ']'
+ case "$type" in
+ JUJU_SPACE=internal-api
+ DHCP=enabled
++ maas ubuntu spaces read
++ jq -r '.[] | select(.name=="internal-api").id'
+ JUJU_SPACE_ID=2
++ maas ubuntu subnets read
++ jq -r '.[] | select(.name=="192.168.122.0/24").vlan.vid'
+ JUJU_VLAN_VID=0
++ maas ubuntu fabric read fabric-5
++ jq -r .id
+ NET_FABRIC_ID=5
+ '[' 5 ']'
+ '[' 5 '!=' null ']'
+ '[' 0 ']'
+ '[' 0 '!=' null ']'
+ maas ubuntu vlan update 5 0 space=2
Success.
Machine-readable output follows:
{
"space": "internal-api",
"name": "untagged",
"fabric": "fabric-5",
"dhcp_on": false,
"primary_rack": null,
"resource_uri": "/MAAS/api/2.0/vlans/5006/",
"secondary_rack": null,
"relay_vlan": null,
"external_dhcp": null,
"id": 5006,
"vid": 0,
"fabric_id": 5,
"mtu": 1500
}
+ '[' admin == admin ']'
+ '[' 5 ']'
+ SUBNET_PREFIX=192.168.122
+ IP_RES_RANGE_LOW=192.168.122.1
+ IP_RES_RANGE_HIGH=192.168.122.39
+ IP_DYNAMIC_RANGE_LOW=192.168.122.40
+ IP_DYNAMIC_RANGE_HIGH=192.168.122.150
+ maas ubuntu ipranges create type=reserved start_ip=192.168.122.1 end_ip=192.168.122.39 'comment=This is a reserved range'
Success.
Machine-readable output follows:
{
"subnet": {
"cidr": "192.168.122.0/24",
"allow_proxy": true,
"managed": true,
"name": "192.168.122.0/24",
"active_discovery": false,
"vlan": {
"primary_rack": null,
"relay_vlan": null,
"dhcp_on": false,
"space": "internal-api",
"fabric": "fabric-5",
"fabric_id": 5,
"name": "untagged",
"mtu": 1500,
"secondary_rack": null,
"vid": 0,
"id": 5006,
"resource_uri": "/MAAS/api/2.0/vlans/5006/",
"external_dhcp": null
},
"dns_servers": [],
"space": "internal-api",
"rdns_mode": 2,
"id": 6,
"resource_uri": "/MAAS/api/2.0/subnets/6/",
"gateway_ip": "192.168.122.1"
},
"comment": "This is a reserved range",
"start_ip": "192.168.122.1",
"user": {
"resource_uri": "/MAAS/api/2.0/users/ubuntu/",
"email": "ubuntu@ubuntu.com",
"username": "ubuntu",
"is_superuser": true
},
"id": 1,
"resource_uri": "/MAAS/api/2.0/ipranges/1/",
"type": "reserved",
"end_ip": "192.168.122.39"
}
+ maas ubuntu ipranges create type=dynamic start_ip=192.168.122.40 end_ip=192.168.122.150 'comment=This is a reserved dynamic range'
Success.
Machine-readable output follows:
{
"subnet": {
"cidr": "192.168.122.0/24",
"allow_proxy": true,
"managed": true,
"name": "192.168.122.0/24",
"active_discovery": false,
"vlan": {
"primary_rack": null,
"relay_vlan": null,
"dhcp_on": false,
"space": "internal-api",
"fabric": "fabric-5",
"fabric_id": 5,
"name": "untagged",
"mtu": 1500,
"secondary_rack": null,
"vid": 0,
"id": 5006,
"resource_uri": "/MAAS/api/2.0/vlans/5006/",
"external_dhcp": null
},
"dns_servers": [],
"space": "internal-api",
"rdns_mode": 2,
"id": 6,
"resource_uri": "/MAAS/api/2.0/subnets/6/",
"gateway_ip": "192.168.122.1"
},
"comment": "This is a reserved dynamic range",
"start_ip": "192.168.122.40",
"user": {
"resource_uri": "/MAAS/api/2.0/users/ubuntu/",
"email": "ubuntu@ubuntu.com",
"username": "ubuntu",
"is_superuser": true
},
"id": 2,
"resource_uri": "/MAAS/api/2.0/ipranges/2/",
"type": "dynamic",
"end_ip": "192.168.122.150"
}
++ maas ubuntu rack-controllers read
++ jq -r '.[0].system_id'
+ PRIMARY_RACK_CONTROLLER=bhtn4c
+ maas ubuntu vlan update 5 0 dhcp_on=True primary_rack=bhtn4c
Success.
Machine-readable output follows:
{
"mtu": 1500,
"fabric": "fabric-5",
"external_dhcp": null,
"relay_vlan": null,
"secondary_rack": null,
"space": "internal-api",
"fabric_id": 5,
"dhcp_on": true,
"resource_uri": "/MAAS/api/2.0/vlans/5006/",
"primary_rack": "bhtn4c",
"id": 5006,
"vid": 0,
"name": "untagged"
}
+ for type in '$nettypes'
+ config_done=0
++ cat labconfig.json
++ jq '.opnfv.spaces[] | select(.type=="floating").cidr'
++ cut -d '"' -f 2
+ SPACE_CIDR=null
++ cat labconfig.json
++ jq '.opnfv.spaces[] | select(.type=="floating").vlan'
++ cut -d '"' -f 2
+ SPACE_VLAN=null
++ cat labconfig.json
++ jq '.opnfv.spaces[] | select(.type=="floating").gateway'
++ cut -d '"' -f 2
+ SPACE_GWAY=null
++ maas ubuntu subnets read
++ jq -r '.[] | select(.cidr=="null").vlan.fabric'
+ NET_FABRIC_NAME=
+ '[' ']'
+ '[' null ']'
+ '[' null '!=' null ']'
+ case "$type" in
+ JUJU_SPACE=tenant-public
+ DHCP=
++ maas ubuntu spaces read
++ jq -r '.[] | select(.name=="tenant-public").id'
+ JUJU_SPACE_ID=9
++ maas ubuntu subnets read
++ jq -r '.[] | select(.name=="null").vlan.vid'
+ JUJU_VLAN_VID=
++ maas ubuntu fabric read
++ jq -r .id
usage: maas ubuntu fabric read [--help] [-d] [-k] id [data [data ...]]
Read fabric.
positional arguments:
id
data
optional arguments:
--help, -h Show this help message and exit.
-d, --debug Display more information about API responses.
-k, --insecure Disable SSL certificate check
Returns 404 if the fabric is not found.
the following arguments are required: id, data
+ NET_FABRIC_ID=
+ '[' ']'
+ '[' floating == admin ']'
+ '[' floating == public ']'
+ '[' floating == osapi ']'
+ '[' ']'
+ '[' 0 -eq 0 ']'
+ sudo sed -i s/localhost/192.168.122.1/g /etc/maas/rackd.conf
+ sudo service maas-rackd restart
+ sudo service maas-regiond restart
+ sleep 120
+ addnodes
+ maas login ubuntu http://192.168.122.1:5240/MAAS/ 7UYf3FNfP8Jcuc2BUn:zDjXCXuxMbxdjQHcZY:NVvf6Bns4LA7kSvVXfhbuhWykXkhbvTg
You are now logged in to the MAAS server at
http://192.168.122.1:5240/MAAS/api/2.0/ with the profile name
'ubuntu'.
For help with the available commands, try:
maas ubuntu --help
+ maas ubuntu maas set-config name=default_min_hwe_kernel value=hwe-16.04-edge
Success.
Machine-readable output follows:
OK
++ maas ubuntu machines read
++ jq -r '.[].system_id'
++ maas ubuntu pods read
++ jq -r '.[].id'
+ podno=
+ maas ubuntu pod delete
usage: maas ubuntu pod delete [--help] [-d] [-k] id [data [data ...]]
Delete a specific Pod.
positional arguments:
id
data
optional arguments:
--help, -h Show this help message and exit.
-d, --debug Display more information about API responses.
-k, --insecure Disable SSL certificate check
Returns 404 if the pod is not found.
Returns 403 if the user does not have permission to delete the pod.
Returns 204 if the pod is successfully deleted.
the following arguments are required: id, data
+ true
++ cat labconfig.json
++ jq -r .opnfv.virshurl
+ VIRSHURL=null
+ '[' null == '' ']'
+ '[' null == null ']'
+ VIRSHIP=192.168.122.1
+ VIRSHURL='qemu+ssh://konrad@192.168.122.1/system '
+ VIRSHHOST=
+ '[' 1 -eq 1 ']'
+ netw=' --network bridge=virbr0,model=virtio'
+ '[' 192.168.122.1 '!=' '' ']'
+ ssh-keygen -F 192.168.122.1
+ echo_info 'Creating and adding bootstrap node'
Creating and adding bootstrap node
+ virt-install --connect qemu+ssh://konrad@192.168.122.1/system --name bootstrap --ram 4098 --cpu host --vcpus 2 --disk size=20,format=qcow2,bus=virtio,cache=directsync,io=native,pool=default --network bridge=virbr0,model=virtio --boot network,hd,menu=off --video virtio --noautoconsole --autostart --accelerate --print-xml
+ tee bootstrap
Error setting up logfile: No write access to directory /home/konrad/.cache/virt-manager
<domain type="kvm">
<name>bootstrap</name>
<uuid>8aa0e75c-c63a-4c5a-9a35-6fb50e720fc9</uuid>
<memory>4196352</memory>
<currentMemory>4196352</currentMemory>
<vcpu>2</vcpu>
<os>
<type arch="x86_64">hvm</type>
<boot dev="network"/>
<boot dev="hd"/>
<bootmenu enable="no"/>
</os>
<features>
<acpi/>
<apic/>
</features>
<cpu mode="host-model"/>
<clock offset="utc">
<timer name="rtc" tickpolicy="catchup"/>
<timer name="pit" tickpolicy="delay"/>
<timer name="hpet" present="no"/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<pm>
<suspend-to-mem enabled="no"/>
<suspend-to-disk enabled="no"/>
</pm>
<devices>
<emulator>/usr/bin/kvm-spice</emulator>
<disk type="file" device="disk">
<driver name="qemu" type="qcow2" cache="directsync" io="native"/>
<source file="/var/lib/libvirt/images/bootstrap.qcow2"/>
<target dev="vda" bus="virtio"/>
</disk>
<controller type="usb" index="0" model="ich9-ehci1"/>
<controller type="usb" index="0" model="ich9-uhci1">
<master startport="0"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci2">
<master startport="2"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci3">
<master startport="4"/>
</controller>
<interface type="bridge">
<source bridge="virbr0"/>
<mac address="52:54:00:d4:98:97"/>
<model type="virtio"/>
</interface>
<input type="mouse" bus="ps2"/>
<graphics type="spice" port="-1" tlsPort="-1" autoport="yes"/>
<console type="pty"/>
<channel type="spicevmc">
<target type="virtio" name="com.redhat.spice.0"/>
</channel>
<sound model="ich6"/>
<video>
<model type="virtio"/>
</video>
<redirdev bus="usb" type="spicevmc"/>
<redirdev bus="usb" type="spicevmc"/>
</devices>
</domain>
+ '[' 1 -eq 1 ']'
++ grep 'mac address' bootstrap
++ head -1
++ cut -d '"' -f 2
+ bootstrapmac=52:54:00:d4:98:97
+ virsh -c qemu+ssh://konrad@192.168.122.1/system define --file bootstrap
Domain bootstrap defined from bootstrap
+ rm -f bootstrap
+ sleep 60
+ maas ubuntu machines create autodetect_nodegroup=yes name=bootstrap tags=bootstrap hostname=bootstrap power_type=virsh mac_addresses=52:54:00:d4:98:97 'power_parameters_power_address=qemu+ssh://konrad@192.168.122.1/system ' architecture=amd64/generic power_parameters_power_id=bootstrap
Success.
Machine-readable output follows:
{
"virtualblockdevice_set": [],
"storage_test_status": 0,
"testing_status": 0,
"volume_groups": [],
"status": 1,
"pod": null,
"architecture": "amd64/generic",
"netboot": true,
"cpu_test_status_name": "Unknown",
"zone": {
"resource_uri": "/MAAS/api/2.0/zones/default/",
"name": "default",
"id": 1,
"description": ""
},
"distro_series": "",
"iscsiblockdevice_set": [],
"commissioning_status_name": "Pending",
"ip_addresses": [],
"osystem": "",
"memory": 0,
"disable_ipv4": false,
"tag_names": [],
"cpu_count": 0,
"status_name": "Commissioning",
"boot_interface": {
"resource_uri": "/MAAS/api/2.0/nodes/htfqmg/interfaces/10/",
"discovered": null,
"id": 10,
"parents": [],
"vlan": null,
"mac_address": "52:54:00:d4:98:97",
"type": "physical",
"links": [],
"tags": [],
"enabled": true,
"name": "eth0",
"children": [],
"system_id": "htfqmg",
"effective_mtu": 1500,
"params": ""
},
"address_ttl": null,
"min_hwe_kernel": "hwe-16.04-edge",
"commissioning_status": 0,
"storage_test_status_name": "Pending",
"storage": 0.0,
"blockdevice_set": [],
"domain": {
"resource_uri": "/MAAS/api/2.0/domains/0/",
"name": "maas",
"id": 0,
"resource_record_count": 0,
"authoritative": true,
"ttl": null
},
"current_installation_result_id": null,
"raids": [],
"node_type": 0,
"physicalblockdevice_set": [],
"swap_size": null,
"fqdn": "bootstrap.maas",
"owner_data": {},
"bcaches": [],
"interface_set": [
{
"resource_uri": "/MAAS/api/2.0/nodes/htfqmg/interfaces/10/",
"discovered": null,
"id": 10,
"parents": [],
"vlan": null,
"mac_address": "52:54:00:d4:98:97",
"type": "physical",
"links": [],
"tags": [],
"enabled": true,
"name": "eth0",
"children": [],
"system_id": "htfqmg",
"effective_mtu": 1500,
"params": ""
}
],
"testing_status_name": "Pending",
"power_type": "virsh",
"special_filesystems": [],
"hostname": "bootstrap",
"resource_uri": "/MAAS/api/2.0/machines/htfqmg/",
"other_test_status": -1,
"boot_disk": null,
"cache_sets": [],
"system_id": "htfqmg",
"hwe_kernel": "",
"status_action": "start commissioning",
"current_testing_result_id": 3,
"memory_test_status_name": "Unknown",
"memory_test_status": -1,
"owner": "ubuntu",
"status_message": "(ubuntu)",
"default_gateways": {
"ipv6": {
"link_id": null,
"gateway_ip": null
},
"ipv4": {
"link_id": null,
"gateway_ip": null
}
},
"cpu_test_status": -1,
"other_test_status_name": "Unknown",
"power_state": "unknown",
"current_commissioning_result_id": 2,
"node_type_name": "Machine"
}
++ maas ubuntu machines read
++ jq -r '.[] | select(.hostname == "bootstrap").system_id'
+ bootstrapid=htfqmg
+ maas ubuntu tag update-nodes bootstrap add=htfqmg
Success.
Machine-readable output follows:
{
"added": 1,
"removed": 0
}
+ '[' 1 -eq 1 ']'
++ cat deployconfig.json
++ jq .opnfv.units
+ units=3
+ '[' 3 -lt 1 ']'
+ units=2
++ cat labconfig.json
++ jq '.lab.racks[].nodes[2].name'
++ cut -d '"' -f 2
+ NODE_NAME=rack-vir-m3
+ virt-install --connect qemu+ssh://konrad@192.168.122.1/system --name rack-vir-m3 --ram 8192 --cpu host --vcpus 4 --disk size=120,format=qcow2,bus=virtio,cache=directsync,io=native,pool=default --network bridge=virbr0,model=virtio --network bridge=virbr0,model=virtio --boot network,hd,menu=off --video virtio --noautoconsole --autostart --accelerate --print-xml
+ tee rack-vir-m3
Error setting up logfile: No write access to directory /home/konrad/.cache/virt-manager
<domain type="kvm">
<name>rack-vir-m3</name>
<uuid>c70bae95-98ad-4892-9286-53c19cae959f</uuid>
<memory>8388608</memory>
<currentMemory>8388608</currentMemory>
<vcpu>4</vcpu>
<os>
<type arch="x86_64">hvm</type>
<boot dev="network"/>
<boot dev="hd"/>
<bootmenu enable="no"/>
</os>
<features>
<acpi/>
<apic/>
</features>
<cpu mode="host-model"/>
<clock offset="utc">
<timer name="rtc" tickpolicy="catchup"/>
<timer name="pit" tickpolicy="delay"/>
<timer name="hpet" present="no"/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<pm>
<suspend-to-mem enabled="no"/>
<suspend-to-disk enabled="no"/>
</pm>
<devices>
<emulator>/usr/bin/kvm-spice</emulator>
<disk type="file" device="disk">
<driver name="qemu" type="qcow2" cache="directsync" io="native"/>
<source file="/var/lib/libvirt/images/rack-vir-m3.qcow2"/>
<target dev="vda" bus="virtio"/>
</disk>
<controller type="usb" index="0" model="ich9-ehci1"/>
<controller type="usb" index="0" model="ich9-uhci1">
<master startport="0"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci2">
<master startport="2"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci3">
<master startport="4"/>
</controller>
<interface type="bridge">
<source bridge="virbr0"/>
<mac address="52:54:00:59:a0:2f"/>
<model type="virtio"/>
</interface>
<interface type="bridge">
<source bridge="virbr0"/>
<mac address="52:54:00:b0:59:82"/>
<model type="virtio"/>
</interface>
<input type="mouse" bus="ps2"/>
<graphics type="spice" port="-1" tlsPort="-1" autoport="yes"/>
<console type="pty"/>
<channel type="spicevmc">
<target type="virtio" name="com.redhat.spice.0"/>
</channel>
<sound model="ich6"/>
<video>
<model type="virtio"/>
</video>
<redirdev bus="usb" type="spicevmc"/>
<redirdev bus="usb" type="spicevmc"/>
</devices>
</domain>
++ grep 'mac address' rack-vir-m3
++ cut -d '"' -f 2
++ head -1
+ nodemac=52:54:00:59:a0:2f
+ virsh -c qemu+ssh://konrad@192.168.122.1/system define --file rack-vir-m3
Domain rack-vir-m3 defined from rack-vir-m3
+ rm -f rack-vir-m3
+ maas ubuntu machines create autodetect_nodegroup=yes name=rack-vir-m3 'tags=control compute' hostname=rack-vir-m3 power_type=virsh mac_addresses=52:54:00:59:a0:2f 'power_parameters_power_address=qemu+ssh://konrad@192.168.122.1/system ' architecture=amd64/generic power_parameters_power_id=rack-vir-m3
Success.
Machine-readable output follows:
{
"virtualblockdevice_set": [],
"storage_test_status": 0,
"testing_status": 0,
"volume_groups": [],
"status": 1,
"pod": null,
"architecture": "amd64/generic",
"netboot": true,
"cpu_test_status_name": "Unknown",
"zone": {
"resource_uri": "/MAAS/api/2.0/zones/default/",
"name": "default",
"id": 1,
"description": ""
},
"distro_series": "",
"iscsiblockdevice_set": [],
"commissioning_status_name": "Pending",
"ip_addresses": [],
"osystem": "",
"memory": 0,
"disable_ipv4": false,
"tag_names": [],
"cpu_count": 0,
"status_name": "Commissioning",
"boot_interface": {
"resource_uri": "/MAAS/api/2.0/nodes/pcktfm/interfaces/11/",
"discovered": null,
"id": 11,
"parents": [],
"vlan": null,
"mac_address": "52:54:00:59:a0:2f",
"type": "physical",
"links": [],
"tags": [],
"enabled": true,
"name": "eth0",
"children": [],
"system_id": "pcktfm",
"effective_mtu": 1500,
"params": ""
},
"address_ttl": null,
"min_hwe_kernel": "hwe-16.04-edge",
"commissioning_status": 0,
"storage_test_status_name": "Pending",
"storage": 0.0,
"blockdevice_set": [],
"domain": {
"resource_uri": "/MAAS/api/2.0/domains/0/",
"name": "maas",
"id": 0,
"resource_record_count": 0,
"authoritative": true,
"ttl": null
},
"current_installation_result_id": null,
"raids": [],
"node_type": 0,
"physicalblockdevice_set": [],
"swap_size": null,
"fqdn": "rack-vir-m3.maas",
"owner_data": {},
"bcaches": [],
"interface_set": [
{
"resource_uri": "/MAAS/api/2.0/nodes/pcktfm/interfaces/11/",
"discovered": null,
"id": 11,
"parents": [],
"vlan": null,
"mac_address": "52:54:00:59:a0:2f",
"type": "physical",
"links": [],
"tags": [],
"enabled": true,
"name": "eth0",
"children": [],
"system_id": "pcktfm",
"effective_mtu": 1500,
"params": ""
}
],
"testing_status_name": "Pending",
"power_type": "virsh",
"special_filesystems": [],
"hostname": "rack-vir-m3",
"resource_uri": "/MAAS/api/2.0/machines/pcktfm/",
"other_test_status": -1,
"boot_disk": null,
"cache_sets": [],
"system_id": "pcktfm",
"hwe_kernel": "",
"status_action": "start commissioning",
"current_testing_result_id": 5,
"memory_test_status_name": "Unknown",
"memory_test_status": -1,
"owner": "ubuntu",
"status_message": "(ubuntu)",
"default_gateways": {
"ipv6": {
"link_id": null,
"gateway_ip": null
},
"ipv4": {
"link_id": null,
"gateway_ip": null
}
},
"cpu_test_status": -1,
"other_test_status_name": "Unknown",
"power_state": "unknown",
"current_commissioning_result_id": 4,
"node_type_name": "Machine"
}
++ maas ubuntu machines read
++ jq -r '.[] | select(.hostname == "rack-vir-m3").system_id'
+ nodeid=pcktfm
+ maas ubuntu tag update-nodes control add=pcktfm
Success.
Machine-readable output follows:
{
"removed": 0,
"added": 1
}
+ maas ubuntu tag update-nodes compute add=pcktfm
Success.
Machine-readable output follows:
{
"added": 1,
"removed": 0
}
+ '[' 2 -lt 1 ']'
+ units=1
++ cat labconfig.json
++ jq '.lab.racks[].nodes[1].name'
++ cut -d '"' -f 2
+ NODE_NAME=rack-vir-m2
+ virt-install --connect qemu+ssh://konrad@192.168.122.1/system --name rack-vir-m2 --ram 8192 --cpu host --vcpus 4 --disk size=120,format=qcow2,bus=virtio,cache=directsync,io=native,pool=default --network bridge=virbr0,mode
+ tee rack-vir-m2
Error setting up logfile: No write access to directory /home/konrad/.cache/virt-manager
<domain type="kvm">
<name>rack-vir-m2</name>
<uuid>c466caea-e383-4ce4-871c-2397a563d2da</uuid>
<memory>8388608</memory>
<currentMemory>8388608</currentMemory>
<vcpu>4</vcpu>
<os>
<type arch="x86_64">hvm</type>
<boot dev="network"/>
<boot dev="hd"/>
<bootmenu enable="no"/>
</os>
<features>
<acpi/>
<apic/>
</features>
<cpu mode="host-model"/>
<clock offset="utc">
<timer name="rtc" tickpolicy="catchup"/>
<timer name="pit" tickpolicy="delay"/>
<timer name="hpet" present="no"/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<pm>
<suspend-to-mem enabled="no"/>
<suspend-to-disk enabled="no"/>
</pm>
<devices>
<emulator>/usr/bin/kvm-spice</emulator>
<disk type="file" device="disk">
<driver name="qemu" type="qcow2" cache="directsync" io="native"/>
<source file="/var/lib/libvirt/images/rack-vir-m2.qcow2"/>
<target dev="vda" bus="virtio"/>
</disk>
<controller type="usb" index="0" model="ich9-ehci1"/>
<controller type="usb" index="0" model="ich9-uhci1">
<master startport="0"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci2">
<master startport="2"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci3">
<master startport="4"/>
</controller>
<interface type="bridge">
<source bridge="virbr0"/>
<mac address="52:54:00:57:3c:40"/>
<model type="virtio"/>
</interface>
<interface type="bridge">
<source bridge="virbr0"/>
<mac address="52:54:00:99:d4:46"/>
<model type="virtio"/>
</interface>
<input type="mouse" bus="ps2"/>
<graphics type="spice" port="-1" tlsPort="-1" autoport="yes"/>
<console type="pty"/>
<channel type="spicevmc">
<target type="virtio" name="com.redhat.spice.0"/>
</channel>
<sound model="ich6"/>
<video>
<model type="virtio"/>
</video>
<redirdev bus="usb" type="spicevmc"/>
<redirdev bus="usb" type="spicevmc"/>
</devices>
</domain>
++ grep 'mac address' rack-vir-m2
++ head -1
++ cut -d '"' -f 2
+ nodemac=52:54:00:57:3c:40
+ virsh -c qemu+ssh://konrad@192.168.122.1/system define --file rack-vir-m2
Domain rack-vir-m2 defined from rack-vir-m2
+ rm -f rack-vir-m2
+ maas ubuntu machines create autodetect_nodegroup=yes name=rack-vir-m2 'tags=control compute' hostname=rack-vir-m2 power_type=virsh mac_addresses=52:54:00:57:3c:40 'power_parameters_power_address=qemu+ssh://konrad@192.168.122.1/system ' architecture=amd64/generic power_parameters_power_id=rack-vir-m2
Success.
Machine-readable output follows:
{
"virtualblockdevice_set": [],
"storage_test_status": 0,
"testing_status": 0,
"volume_groups": [],
"status": 1,
"pod": null,
"architecture": "amd64/generic",
"netboot": true,
"cpu_test_status_name": "Unknown",
"zone": {
"resource_uri": "/MAAS/api/2.0/zones/default/",
"name": "default",
"id": 1,
"description": ""
},
"distro_series": "",
"iscsiblockdevice_set": [],
"commissioning_status_name": "Pending",
"ip_addresses": [],
"osystem": "",
"memory": 0,
"disable_ipv4": false,
"tag_names": [],
"cpu_count": 0,
"status_name": "Commissioning",
"boot_interface": {
"resource_uri": "/MAAS/api/2.0/nodes/ych8b8/interfaces/12/",
"discovered": null,
"id": 12,
"parents": [],
"vlan": null,
"mac_address": "52:54:00:57:3c:40",
"type": "physical",
"links": [],
"tags": [],
"enabled": true,
"name": "eth0",
"children": [],
"system_id": "ych8b8",
"effective_mtu": 1500,
"params": ""
},
"address_ttl": null,
"min_hwe_kernel": "hwe-16.04-edge",
"commissioning_status": 0,
"storage_test_status_name": "Pending",
"storage": 0.0,
"blockdevice_set": [],
"domain": {
"resource_uri": "/MAAS/api/2.0/domains/0/",
"name": "maas",
"id": 0,
"resource_record_count": 0,
"authoritative": true,
"ttl": null
},
"current_installation_result_id": null,
"raids": [],
"node_type": 0,
"physicalblockdevice_set": [],
"swap_size": null,
"fqdn": "rack-vir-m2.maas",
"owner_data": {},
"bcaches": [],
"interface_set": [
{
"resource_uri": "/MAAS/api/2.0/nodes/ych8b8/interfaces/12/",
"discovered": null,
"id": 12,
"parents": [],
"vlan": null,
"mac_address": "52:54:00:57:3c:40",
"type": "physical",
"links": [],
"tags": [],
"enabled": true,
"name": "eth0",
"children": [],
"system_id": "ych8b8",
"effective_mtu": 1500,
"params": ""
}
],
"testing_status_name": "Pending",
"power_type": "virsh",
"special_filesystems": [],
"hostname": "rack-vir-m2",
"resource_uri": "/MAAS/api/2.0/machines/ych8b8/",
"other_test_status": -1,
"boot_disk": null,
"cache_sets": [],
"system_id": "ych8b8",
"hwe_kernel": "",
"status_action": "start commissioning",
"current_testing_result_id": 7,
"memory_test_status_name": "Unknown",
"memory_test_status": -1,
"owner": "ubuntu",
"status_message": "(ubuntu)",
"default_gateways": {
"ipv6": {
"link_id": null,
"gateway_ip": null
},
"ipv4": {
"link_id": null,
"gateway_ip": null
}
},
"cpu_test_status": -1,
"other_test_status_name": "Unknown",
"power_state": "unknown",
"current_commissioning_result_id": 6,
"node_type_name": "Machine"
}
++ maas ubuntu machines read
++ jq -r '.[] | select(.hostname == "rack-vir-m2").system_id'
+ nodeid=ych8b8
+ maas ubuntu tag update-nodes control add=ych8b8
Success.
Machine-readable output follows:
{
"added": 1,
"removed": 0
}
+ maas ubuntu tag update-nodes compute add=ych8b8
Success.
Machine-readable output follows:
{
"removed": 0,
"added": 1
}
+ '[' 1 -lt 1 ']'
+ units=0
++ cat labconfig.json
++ jq '.lab.racks[].nodes[0].name'
++ cut -d '"' -f 2
+ NODE_NAME=rack-vir-m1
+ virt-install --connect qemu+ssh://konrad@192.168.122.1/system --name rack-vir-m1 --ram 8192 --cpu host --vcpus 4 --disk size=120,format=qcow2,bus=virtio,cache=directsync,io=native,pool=default --network bridge=virbr0,model=virtio --network bridge=virbr0,model=virtio --boot network,hd,menu=off --video virtio --noautoconsole --autostart --accelerate --print-xml
+ tee rack-vir-m1
Error setting up logfile: No write access to directory /home/konrad/.cache/virt-manager
<domain type="kvm">
<name>rack-vir-m1</name>
<uuid>e1dfc4c0-2e43-4d79-b60d-780a976ab89e</uuid>
<memory>8388608</memory>
<currentMemory>8388608</currentMemory>
<vcpu>4</vcpu>
<os>
<type arch="x86_64">hvm</type>
<boot dev="network"/>
<boot dev="hd"/>
<bootmenu enable="no"/>
</os>
<features>
<acpi/>
<apic/>
</features>
<cpu mode="host-model"/>
<clock offset="utc">
<timer name="rtc" tickpolicy="catchup"/>
<timer name="pit" tickpolicy="delay"/>
<timer name="hpet" present="no"/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<pm>
<suspend-to-mem enabled="no"/>
<suspend-to-disk enabled="no"/>
</pm>
<devices>
<emulator>/usr/bin/kvm-spice</emulator>
<disk type="file" device="disk">
<driver name="qemu" type="qcow2" cache="directsync" io="native"/>
<source file="/var/lib/libvirt/images/rack-vir-m1.qcow2"/>
<target dev="vda" bus="virtio"/>
</disk>
<controller type="usb" index="0" model="ich9-ehci1"/>
<controller type="usb" index="0" model="ich9-uhci1">
<master startport="0"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci2">
<master startport="2"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci3">
<master startport="4"/>
</controller>
<interface type="bridge">
<source bridge="virbr0"/>
<mac address="52:54:00:5c:73:ae"/>
<model type="virtio"/>
</interface>
<interface type="bridge">
<source bridge="virbr0"/>
<mac address="52:54:00:e5:e3:c4"/>
<model type="virtio"/>
</interface>
<input type="mouse" bus="ps2"/>
<graphics type="spice" port="-1" tlsPort="-1" autoport="yes"/>
<console type="pty"/>
<channel type="spicevmc">
<target type="virtio" name="com.redhat.spice.0"/>
</channel>
<sound model="ich6"/>
<video>
<model type="virtio"/>
</video>
<redirdev bus="usb" type="spicevmc"/>
<redirdev bus="usb" type="spicevmc"/>
</devices>
</domain>
++ grep 'mac address' rack-vir-m1
++ head -1
++ cut -d '"' -f 2
+ nodemac=52:54:00:5c:73:ae
+ virsh -c qemu+ssh://konrad@192.168.122.1/system define --file rack-vir-m1
Domain rack-vir-m1 defined from rack-vir-m1
+ rm -f rack-vir-m1
+ maas ubuntu machines create autodetect_nodegroup=yes name=rack-vir-m1 'tags=control compute' hostname=rack-vir-m1 power_type=virsh mac_addresses=52:54:00:5c:73:ae 'power_parameters_power_address=qemu+ssh://konrad@192.168.122.1/system ' architecture=amd64/generic power_parameters_power_id=rack-vir-m1
Success.
Machine-readable output follows:
{
"fqdn": "rack-vir-m1.maas",
"current_commissioning_result_id": 8,
"current_installation_result_id": null,
"cpu_test_status": -1,
"min_hwe_kernel": "hwe-16.04-edge",
"volume_groups": [],
"architecture": "amd64/generic",
"node_type_name": "Machine",
"testing_status_name": "Pending",
"storage": 0.0,
"zone": {
"resource_uri": "/MAAS/api/2.0/zones/default/",
"id": 1,
"name": "default",
"description": ""
},
"current_testing_result_id": 9,
"netboot": true,
"resource_uri": "/MAAS/api/2.0/machines/adf78p/",
"status_name": "Commissioning",
"testing_status": 0,
"bcaches": [],
"address_ttl": null,
"status_action": "start commissioning",
"interface_set": [
{
"mac_address": "52:54:00:5c:73:ae",
"id": 13,
"links": [],
"enabled": true,
"name": "eth0",
"children": [],
"discovered": null,
"type": "physical",
"params": "",
"effective_mtu": 1500,
"tags": [],
"vlan": null,
"parents": [],
"system_id": "adf78p",
"resource_uri": "/MAAS/api/2.0/nodes/adf78p/interfaces/13/"
}
],
"memory_test_status_name": "Unknown",
"virtualblockdevice_set": [],
"node_type": 0,
"boot_interface": {
"mac_address": "52:54:00:5c:73:ae",
"id": 13,
"links": [],
"enabled": true,
"name": "eth0",
"children": [],
"discovered": null,
"type": "physical",
"params": "",
"effective_mtu": 1500,
"tags": [],
"vlan": null,
"parents": [],
"system_id": "adf78p",
"resource_uri": "/MAAS/api/2.0/nodes/adf78p/interfaces/13/"
},
"blockdevice_set": [],
"memory": 0,
"status_message": "(ubuntu)",
"osystem": "",
"physicalblockdevice_set": [],
"boot_disk": null,
"tag_names": [],
"hostname": "rack-vir-m1",
"iscsiblockdevice_set": [],
"commissioning_status_name": "Pending",
"cpu_count": 0,
"default_gateways": {
"ipv4": {
"link_id": null,
"gateway_ip": null
},
"ipv6": {
"link_id": null,
"gateway_ip": null
}
},
"memory_test_status": -1,
"disable_ipv4": false,
"cache_sets": [],
"special_filesystems": [],
"hwe_kernel": "",
"pod": null,
"commissioning_status": 0,
"other_test_status": -1,
"system_id": "adf78p",
"other_test_status_name": "Unknown",
"domain": {
"id": 0,
"resource_uri": "/MAAS/api/2.0/domains/0/",
"resource_record_count": 0,
"authoritative": true,
"ttl": null,
"name": "maas"
},
"owner": "ubuntu",
"power_type": "virsh",
"ip_addresses": [],
"storage_test_status": 0,
"power_state": "unknown",
"storage_test_status_name": "Pending",
"status": 1,
"owner_data": {},
"cpu_test_status_name": "Unknown",
"swap_size": null,
"raids": [],
"distro_series": ""
}
++ maas ubuntu machines read
++ jq -r '.[] | select(.hostname == "rack-vir-m1").system_id'
+ nodeid=adf78p
+ maas ubuntu tag update-nodes control add=adf78p
Success.
Machine-readable output follows:
{
"removed": 0,
"added": 1
}
+ maas ubuntu tag update-nodes compute add=adf78p
Success.
Machine-readable output follows:
{
"removed": 0,
"added": 1
}
+ '[' 0 -lt 1 ']'
+ maas ubuntu pods create type=virsh 'power_address=qemu+ssh://konrad@192.168.122.1/system ' power_user=konrad
Success.
Machine-readable output follows:
{
"resource_uri": "/MAAS/api/2.0/pods/1/",
"name": "noted-loon",
"capabilities": [
"composable",
"dynamic_local_storage",
"over_commit"
],
"total": {
"local_storage": 1572301627719,
"memory": 193059,
"cores": 48
},
"used": {
"local_storage": 1073741824000,
"memory": 81920,
"cores": 40
},
"available": {
"local_storage": 498559803719,
"memory": 111139,
"cores": 8
},
"architectures": [
"amd64/generic"
],
"id": 1,
"type": "virsh"
}
+ i=0
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 0 minutes elapsed.'
Waiting for nodes to finish commissioning. 0 minutes elapsed.
+ sleep 60
+ i=1
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 1 minutes elapsed.'
Waiting for nodes to finish commissioning. 1 minutes elapsed.
+ sleep 60
+ i=2
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 2 minutes elapsed.'
Waiting for nodes to finish commissioning. 2 minutes elapsed.
+ sleep 60
+ i=3
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 3 minutes elapsed.'
Waiting for nodes to finish commissioning. 3 minutes elapsed.
+ sleep 60
+ i=4
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 4 minutes elapsed.'
Waiting for nodes to finish commissioning. 4 minutes elapsed.
+ sleep 60
+ i=5
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 5 minutes elapsed.'
Waiting for nodes to finish commissioning. 5 minutes elapsed.
+ sleep 60
+ i=6
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 6 minutes elapsed.'
Waiting for nodes to finish commissioning. 6 minutes elapsed.
+ sleep 60
+ i=7
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 7 minutes elapsed.'
Waiting for nodes to finish commissioning. 7 minutes elapsed.
+ sleep 60
+ i=8
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 8 minutes elapsed.'
Waiting for nodes to finish commissioning. 8 minutes elapsed.
+ sleep 60
+ i=9
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 9 minutes elapsed.'
Waiting for nodes to finish commissioning. 9 minutes elapsed.
+ sleep 60
+ i=10
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 10 minutes elapsed.'
Waiting for nodes to finish commissioning. 10 minutes elapsed.
+ sleep 60
+ i=11
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 11 minutes elapsed.'
Waiting for nodes to finish commissioning. 11 minutes elapsed.
+ sleep 60
+ i=12
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 12 minutes elapsed.'
Waiting for nodes to finish commissioning. 12 minutes elapsed.
+ sleep 60
+ i=13
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 13 minutes elapsed.'
Waiting for nodes to finish commissioning. 13 minutes elapsed.
+ sleep 60
+ i=14
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 14 minutes elapsed.'
Waiting for nodes to finish commissioning. 14 minutes elapsed.
+ sleep 60
+ i=15
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 15 minutes elapsed.'
Waiting for nodes to finish commissioning. 15 minutes elapsed.
+ sleep 60
+ i=16
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 16 minutes elapsed.'
Waiting for nodes to finish commissioning. 16 minutes elapsed.
+ sleep 60
+ i=17
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 17 minutes elapsed.'
Waiting for nodes to finish commissioning. 17 minutes elapsed.
+ sleep 60
+ i=18
++ maas ubuntu nodes read
++ grep Failed
+ '[' '' ']'
++ maas ubuntu nodes read
++ grep Commissioning
+ '[' ' "status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",
"status_name": "Commissioning",' ']'
+ echo_info 'Waiting for nodes to finish commissioning. 18 minutes elapsed.'
Waiting for nodes to finish commissioning. 18 minutes elapsed.
+ sleep 60
+ i=19
++ maas ubuntu nodes read
++ grep Failed
+ '[' ' "status_name": "Failed commissioning",
"status_name": "Failed commissioning",
"status_name": "Failed commissioning",
"status_name": "Failed commissioning",
"status_name": "Failed commissioning",' ']'
+ echo 'Error: Some nodes have failed commissioning or testing'
Error: Some nodes have failed commissioning or testing
+ exit 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment