diff options
-rwxr-xr-x | build/overcloud-full.sh | 19 | ||||
-rw-r--r-- | build/variables.sh | 12 | ||||
-rwxr-xr-x | ci/dev_dep_check.sh (renamed from ci/dev_deploy_check.sh) | 21 | ||||
-rw-r--r-- | config/network/network_settings.yaml | 45 | ||||
-rw-r--r-- | config/network/network_settings_v6.yaml | 40 | ||||
-rw-r--r-- | config/network/network_settings_vlans.yaml | 42 | ||||
-rwxr-xr-x | lib/overcloud-deploy-functions.sh | 2 |
7 files changed, 82 insertions, 99 deletions
diff --git a/build/overcloud-full.sh b/build/overcloud-full.sh index 4fd3f1e8..47138258 100755 --- a/build/overcloud-full.sh +++ b/build/overcloud-full.sh @@ -122,7 +122,7 @@ LIBGUESTFS_BACKEND=direct virt-customize \ --run-command "puppet module install cristifalcas/etcd" \ --run-command "yum update -y puppet" \ --install "centos-release-qemu-ev" \ - --run-command "yum update -y qemu-kvm-ev" \ + --run-command "yum update -y qemu-kvm-ev-2.3.0-31.el7_2.21.1.x86_64" \ --run-command "yum remove -y qemu-system-x86" \ --upload ../os-net-config.tar.gz:/usr/lib/python2.7/site-packages \ --run-command "cd /usr/lib/python2.7/site-packages/ && rm -rf os_net_config && tar xzf os-net-config.tar.gz" \ @@ -172,23 +172,6 @@ git am *.patch popd > /dev/null tar czf ovs.tar.gz ovs -# Required packages to redirect stdin with virt-customize -virt_pkg_str="./$libguestfs_pkg " -wget $virt_uri_base/$libguestfs_pkg -for package in ${virt_pkgs[@]}; do - wget "$virt_uri_base/$package" - virt_pkg_str+=" ./$package" -done - -if ! sudo yum -y install ${virt_pkg_str}; then - if [ "$(rpm -q libguestfs)" != "$(rpm -qpf $libguestfs_pkg)" ]; then - echo "ERROR: Failed to update libguestfs" - exit 1 - fi -fi - - - # BUILD NSH OVS LIBGUESTFS_BACKEND=direct virt-customize \ --upload ../build_ovs_nsh.sh:/root/ \ diff --git a/build/variables.sh b/build/variables.sh index 6d657186..0251faf2 100644 --- a/build/variables.sh +++ b/build/variables.sh @@ -36,15 +36,3 @@ fdio_pkgs=( 'vpp-python-api-16.09-release.x86_64.rpm' ) honeycomb_pkg='honeycomb-1.16.9-FINAL.noarch.rpm' - -virt_uri_base=https://people.redhat.com/~rjones/libguestfs-RHEL-7.3-preview -libguestfs_pkg='libguestfs-1.32.7-3.el7.x86_64.rpm' -virt_pkgs=( -'libguestfs-tools-1.32.7-3.el7.noarch.rpm' -'libguestfs-tools-c-1.32.7-3.el7.x86_64.rpm' -'supermin-5.1.16-4.el7.x86_64.rpm' -'supermin5-5.1.16-4.el7.x86_64.rpm' -'supermin-helper-5.1.16-4.el7.x86_64.rpm' -'perl-Sys-Guestfs-1.32.7-3.el7.x86_64.rpm' -'python-libguestfs-1.32.7-3.el7.x86_64.rpm' -) diff --git a/ci/dev_deploy_check.sh b/ci/dev_dep_check.sh index 0ce135ad..a15eb8b9 100755 --- a/ci/dev_deploy_check.sh +++ b/ci/dev_dep_check.sh @@ -51,3 +51,24 @@ easy_install-3.4 jinja2 # TODO(cgoncalves): remove once congress RPM is downloaded from upstream easy_install-3.4 tox + +# Required packages to redirect stdin with virt-customize +virt_uri_base=https://people.redhat.com/~rjones/libguestfs-RHEL-7.3-preview +virt_pkgs=( +'libguestfs-1.32.7-3.el7.x86_64.rpm' +'libguestfs-tools-1.32.7-3.el7.noarch.rpm' +'libguestfs-tools-c-1.32.7-3.el7.x86_64.rpm' +'supermin-5.1.16-4.el7.x86_64.rpm' +'supermin5-5.1.16-4.el7.x86_64.rpm' +'supermin-helper-5.1.16-4.el7.x86_64.rpm' +'perl-Sys-Guestfs-1.32.7-3.el7.x86_64.rpm' +'python-libguestfs-1.32.7-3.el7.x86_64.rpm' +) + +for pkg in ${virt_pkgs[@]}; do + if ! rpm -q ${pkg%-*-*}; then + if ! sudo yum -y install $virt_uri_base/$pkg; then + echo "ERROR: Failed to update $pkg" + fi + fi +done diff --git a/config/network/network_settings.yaml b/config/network/network_settings.yaml index ab9ed962..6cf9ae80 100644 --- a/config/network/network_settings.yaml +++ b/config/network/network_settings.yaml @@ -56,6 +56,7 @@ syslog: server: 10.128.1.24 transport: 'tcp' +# Common network settings networks: # Network configurations admin: # Admin configuration (pxe and jumpstart), enabled: true @@ -67,7 +68,9 @@ networks: # Network configurations ip: 192.0.2.1 # IP to assign to Installer VM on this network usable_ip_range: - 192.0.2.11 - - 192.0.2.99 # Usable ip range, if empty entire range is usable + - 192.0.2.99 # Usable ip range for the overcloud node IPs (including VIPs) and last IP will be + # used for host bridge (i.e. br-admin). If empty entire range is usable. + # Cannot overlap with dhcp_range or introspection_range. gateway: 192.0.2.1 # Gateway (only needed when public_network is disabled) cidr: 192.0.2.0/24 # Subnet in CIDR format 192.168.1.0/24 dhcp_range: @@ -79,14 +82,14 @@ networks: # Network configurations members: # Physical NIC members of this mapping (Single value allowed for interface phys_type) - nic1 controller: # Mapping for controller profile (nodes that will be used as Controller nodes) - phys_type: bond + phys_type: interface members: - nic1 # tenant: # Tenant network configuration enabled: true cidr: 11.0.0.0/24 # Subnet in CIDR format 192.168.1.0/24 - mtu: 64000 # Tenant network MTU + mtu: 1500 # Tenant network MTU overlay_id_range: 2,65535 # Tenant network Overlay segmentation ID range: # VNI, VLAN-ID, etc. segmentation_type: vxlan # Tenant network segmentation type: @@ -106,7 +109,7 @@ networks: # Network configurations external: # Can contain 1 or more external networks - public: # "public" network will be the network the installer VM attaches to enabled: true - mtu: 64000 # Public network MTU + mtu: 1500 # Public network MTU installer_vm: # Network settings for the Installer VM on admin network (note only valid on 'public' external network) nic_type: interface # Indicates if this VM will be bridged to an interface, or to a bond vlan: native @@ -117,10 +120,11 @@ networks: # Network configurations gateway: 192.168.37.1 floating_ip_range: - 192.168.37.200 - - 192.168.37.220 #Range to allocate to floating IPs for the public network with Neutron + - 192.168.37.220 # Range to allocate to floating IPs for the public network with Neutron usable_ip_range: - 192.168.37.10 - - 192.168.37.199 # Usable IP range on the public network, usually this is a shared subnet + - 192.168.37.199 # Usable ip range for the overcloud node IPs (including VIPs) and last IP will be used for host + # bridge (i.e. br-public). If empty entire range is usable. Cannot overlap with dhcp_range or introspection_range. nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) phys_type: interface # Physical interface type (interface or bond) @@ -138,7 +142,7 @@ networks: # Network configurations gateway: 192.168.37.1 - private_cloud: # another external network enabled: false - mtu: 64000 + mtu: 1500 installer_vm: # Network settings for the Installer VM on admin network (note only valid on 'public' external network) nic_type: interface # Indicates if this VM will be bridged to an interface, or to a bond vlan: 101 @@ -149,10 +153,11 @@ networks: # Network configurations gateway: 192.168.38.1 floating_ip_range: - 192.168.38.200 - - 192.168.38.220 #Range to allocate to floating IPs for the public network with Neutron + - 192.168.38.220 # Range to allocate to floating IPs for the public network with Neutron usable_ip_range: - 192.168.38.10 - - 192.168.38.199 # Usable IP range on the public network, usually this is a shared subnet + - 192.168.38.199 # Usable IP range for overcloud nodes (including VIPs), usually this is a shared subnet. + # Cannot overlap with dhcp_range or introspection_range. nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) phys_type: interface # Physical interface type (interface or bond) @@ -173,15 +178,15 @@ networks: # Network configurations storage: # Storage network configuration enabled: true cidr: 12.0.0.0/24 # Subnet in CIDR format - mtu: 64000 # Tenant network MTU + mtu: 1500 # Storage network MTU nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) - phys_type: bond # Physical interface type (interface or bond) + phys_type: interface # Physical interface type (interface or bond) vlan: native # VLAN tag to use with this NIC members: # Physical NIC members of this mapping (Single value allowed for interface phys_type) - nic4 # Note, for Apex you may also use the logical nic name (found by nic order), such as "nic1" controller: # Mapping for controller profile (nodes that will be used as Controller nodes) - phys_type: bond + phys_type: interface vlan: native members: - nic4 @@ -190,31 +195,23 @@ networks: # Network configurations enabled: false cidr: fd00:fd00:fd00:4000::/64 # Subnet in CIDR format vlan: 13 # VLAN tag to use for Overcloud hosts on this network - mtu: 64000 # Tenant network MTU + mtu: 1500 # Api network MTU nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) - phys_type: bond # Physical interface type (interface or bond) + phys_type: interface # Physical interface type (interface or bond) vlan: native # VLAN tag to use with this NIC members: # Physical NIC members of this mapping (Single value allowed for interface phys_type) - nic5 # Note, for Apex you may also use the logical nic name (found by nic order), such as "nic1" controller: # Mapping for controller profile (nodes that will be used as Controller nodes) - phys_type: bond + phys_type: interface vlan: native members: - nic5 -# JOID specific settings -joid: - -# Compass specific settings -compass: - # Apex specific settings apex: networks: admin: introspection_range: - 192.0.2.100 - - 192.0.2.120 # Range used for introspection phase (examining nodes) -# Fuel specific settings -fuel: + - 192.0.2.120 # Range used for introspection phase (examining nodes). This cannot overlap with dhcp_range or usable_ip_range. diff --git a/config/network/network_settings_v6.yaml b/config/network/network_settings_v6.yaml index bfce3ab4..b12614f1 100644 --- a/config/network/network_settings_v6.yaml +++ b/config/network/network_settings_v6.yaml @@ -56,6 +56,7 @@ syslog: server: 10.128.1.24 transport: 'tcp' +# Common network settings networks: # Network configurations admin: # Admin configuration (pxe and jumpstart), enabled: true @@ -67,26 +68,29 @@ networks: # Network configurations ip: 192.0.2.1 # IP to assign to Installer VM on this network usable_ip_range: - 192.0.2.11 - - 192.0.2.99 # Usable ip range, if empty entire range is usable + - 192.0.2.99 # Usable ip range for the overcloud node IPs (including VIPs) and last IP will be + # used for host bridge (i.e. br-admin). + # If empty entire range is usable. Cannot overlap with dhcp_range or introspection_range. gateway: 192.0.2.1 # Gateway (only needed when public_network is disabled) cidr: 192.0.2.0/24 # Subnet in CIDR format 192.168.1.0/24 dhcp_range: - 192.0.2.2 - - 192.0.2.10 # DHCP range for the admin network, if empty it will be automatically provisioned + - 192.0.2.10 # DHCP range for the admin network, if empty it will be automatically provisioned. + # Cannot overlap with usable_ip_range or introspection_range. nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) phys_type: interface # Physical interface type (interface or bond) members: # Physical NIC members of this mapping (Single value allowed for interface phys_type) - nic1 controller: # Mapping for controller profile (nodes that will be used as Controller nodes) - phys_type: bond + phys_type: interface members: - nic1 # tenant: # Tenant network configuration enabled: true cidr: 11.0.0.0/24 # Subnet in CIDR format 192.168.1.0/24 - mtu: 64000 # Tenant network MTU + mtu: 1500 # Tenant network MTU overlay_id_range: 2,65535 # Tenant network Overlay segmentation ID range: # VNI, VLAN-ID, etc. segmentation_type: vxlan # Tenant network segmentation type: @@ -106,7 +110,7 @@ networks: # Network configurations external: # Can contain 1 or more external networks - public: # "public" network will be the network the installer VM attaches to enabled: true - mtu: 64000 # Public network MTU + mtu: 1500 # Public network MTU installer_vm: # Network settings for the Installer VM on admin network (note only valid on 'public' external network) nic_type: interface # Indicates if this VM will be bridged to an interface, or to a bond vlan: native @@ -117,7 +121,7 @@ networks: # Network configurations gateway: 2001:db8::1 floating_ip_range: - 2001:db8:0:0:0:0:0:2 - - 2001:db8:0:0:ffff:ffff:ffff:ffff + - 2001:db8:0:0:ffff:ffff:ffff:ffff # Floating IPs range to assign to the overcloud (External IPs to be NAT'ed to Tenant IP) nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) phys_type: interface # Physical interface type (interface or bond) @@ -137,15 +141,15 @@ networks: # Network configurations storage: # Storage network configuration enabled: true cidr: fd00:fd00:fd00:2000::/64 # Subnet in CIDR format - mtu: 64000 # Tenant network MTU + mtu: 1500 # Storage network MTU nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) - phys_type: bond # Physical interface type (interface or bond) + phys_type: interface # Physical interface type (interface or bond) vlan: native # VLAN tag to use with this NIC members: # Physical NIC members of this mapping (Single value allowed for interface phys_type) - nic4 # Note, for Apex you may also use the logical nic name (found by nic order), such as "nic1" controller: # Mapping for controller profile (nodes that will be used as Controller nodes) - phys_type: bond + phys_type: interface vlan: native members: - nic4 @@ -154,31 +158,23 @@ networks: # Network configurations enabled: true cidr: fd00:fd00:fd00:4000::/64 # Subnet in CIDR format vlan: 13 # VLAN tag to use for Overcloud hosts on this network - mtu: 64000 # Tenant network MTU + mtu: 1500 # Api network MTU nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) - phys_type: bond # Physical interface type (interface or bond) - vlan: native # VLAN tag to use with this NIC + phys_type: interface # Physical interface type (interface or bond) + vlan: native # VLAN tag to use with this NIC members: # Physical NIC members of this mapping (Single value allowed for interface phys_type) - nic5 # Note, for Apex you may also use the logical nic name (found by nic order), such as "nic1" controller: # Mapping for controller profile (nodes that will be used as Controller nodes) - phys_type: bond + phys_type: interface vlan: native members: - nic5 -# JOID specific settings -joid: - -# Compass specific settings -compass: - # Apex specific settings apex: networks: admin: introspection_range: - 192.0.2.100 - - 192.0.2.120 # Range used for introspection phase (examining nodes) -# Fuel specific settings -fuel: + - 192.0.2.120 # Range used for introspection phase (examining nodes). This cannot overlap with dhcp_range or usable_ip_range. diff --git a/config/network/network_settings_vlans.yaml b/config/network/network_settings_vlans.yaml index beeae477..c5143641 100644 --- a/config/network/network_settings_vlans.yaml +++ b/config/network/network_settings_vlans.yaml @@ -56,6 +56,7 @@ syslog: server: 10.128.1.24 transport: 'tcp' +# Common network settings networks: # Network configurations admin: # Admin configuration (pxe and jumpstart), enabled: true @@ -67,26 +68,29 @@ networks: # Network configurations ip: 192.0.2.1 # IP to assign to Installer VM on this network usable_ip_range: - 192.0.2.11 - - 192.0.2.99 # Usable ip range, if empty entire range is usable + - 192.0.2.99 # Usable ip range for the overcloud node IPs (including VIPs) and last IP will be + # used for host bridge (i.e. br-admin). If empty entire range is usable. + # Cannot overlap with dhcp_range. gateway: 192.0.2.1 # Gateway (only needed when public_network is disabled) cidr: 192.0.2.0/24 # Subnet in CIDR format 192.168.1.0/24 dhcp_range: - 192.0.2.2 - - 192.0.2.10 # DHCP range for the admin network, if empty it will be automatically provisioned + - 192.0.2.10 # DHCP range for the admin network, if empty it will be automatically provisioned. + # Cannot overlap with usable_ip_range or introspection_range. nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) phys_type: interface # Physical interface type (interface or bond) members: # Physical NIC members of this mapping (Single value allowed for interface phys_type) - nic1 controller: # Mapping for controller profile (nodes that will be used as Controller nodes) - phys_type: bond + phys_type: interface members: - nic1 # tenant: # Tenant network configuration enabled: true cidr: 11.0.0.0/24 # Subnet in CIDR format 192.168.1.0/24 - mtu: 64000 # Tenant network MTU + mtu: 1500 # Tenant network MTU overlay_id_range: 2,65535 # Tenant network Overlay segmentation ID range: # VNI, VLAN-ID, etc. segmentation_type: vxlan # Tenant network segmentation type: @@ -106,7 +110,7 @@ networks: # Network configurations external: # Can contain 1 or more external networks - public: # "public" network will be the network the installer VM attaches to enabled: true - mtu: 64000 # Public network MTU + mtu: 1500 # Public network MTU installer_vm: # Network settings for the Installer VM on admin network (note only valid on 'public' external network) nic_type: interface # Indicates if this VM will be bridged to an interface, or to a bond vlan: 501 @@ -138,7 +142,7 @@ networks: # Network configurations gateway: 192.168.37.1 - private_cloud: # another external network enabled: false - mtu: 64000 + mtu: 1500 installer_vm: # Network settings for the Installer VM on admin network (note only valid on 'public' external network) nic_type: interface # Indicates if this VM will be bridged to an interface, or to a bond vlan: 501 @@ -152,7 +156,9 @@ networks: # Network configurations - 192.168.38.220 # Range to allocate to floating IPs for the public network with Neutron usable_ip_range: - 192.168.38.10 - - 192.168.38.199 # Usable IP range on the public network, usually this is a shared subnet + - 192.168.38.199 # Usable ip range for the overcloud node IPs (including VIPs) and last IP will be used for host + # bridge (i.e. br-public). If empty entire range is usable. + # Cannot overlap with dhcp_range or introspection_range. nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) phys_type: interface # Physical interface type (interface or bond) @@ -173,15 +179,15 @@ networks: # Network configurations storage: # Storage network configuration enabled: true cidr: 12.0.0.0/24 # Subnet in CIDR format - mtu: 64000 # Tenant network MTU + mtu: 1500 # Storage network MTU nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) - phys_type: bond # Physical interface type (interface or bond) + phys_type: interface # Physical interface type (interface or bond) vlan: 201 # VLAN tag to use with this NIC members: # Physical NIC members of this mapping (Single value allowed for interface phys_type) - nic4 # Note, for Apex you may also use the logical nic name (found by nic order), such as "nic1" controller: # Mapping for controller profile (nodes that will be used as Controller nodes) - phys_type: bond + phys_type: interface vlan: 201 members: - nic4 @@ -189,31 +195,23 @@ networks: # Network configurations api: # API network configuration enabled: false cidr: fd00:fd00:fd00:4000::/64 # Subnet in CIDR format - mtu: 64000 # Tenant network MTU + mtu: 1500 # Api network MTU nic_mapping: # Mapping of network configuration for Overcloud Nodes compute: # Mapping for compute profile (nodes that will be used as Compute nodes) - phys_type: bond # Physical interface type (interface or bond) + phys_type: interface # Physical interface type (interface or bond) vlan: 101 # VLAN tag to use with this NIC members: # Physical NIC members of this mapping (Single value allowed for interface phys_type) - nic5 # Note, for Apex you may also use the logical nic name (found by nic order), such as "nic1" controller: # Mapping for controller profile (nodes that will be used as Controller nodes) - phys_type: bond + phys_type: interface vlan: 101 members: - nic5 -# JOID specific settings -joid: - -# Compass specific settings -compass: - # Apex specific settings apex: networks: admin: introspection_range: - 192.0.2.100 - - 192.0.2.120 # Range used for introspection phase (examining nodes) -# Fuel specific settings -fuel: + - 192.0.2.120 # Range used for introspection phase (examining nodes). This cannot overlap with dhcp_range or usable_ip_range. diff --git a/lib/overcloud-deploy-functions.sh b/lib/overcloud-deploy-functions.sh index a62b00ff..8fe2b85f 100755 --- a/lib/overcloud-deploy-functions.sh +++ b/lib/overcloud-deploy-functions.sh @@ -121,7 +121,7 @@ EOI fi # upgrade ovs into ovs 2.5.90 with NSH function if SFC is enabled - if [ "${deploy_options_array['sfc']}" == 'True' && "${deploy_options_array['dataplane']}" == 'ovs' ]; then + if [[ "${deploy_options_array['sfc']}" == 'True' && "${deploy_options_array['dataplane']}" == 'ovs' ]]; then ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" <<EOI LIBGUESTFS_BACKEND=direct virt-customize --run-command "yum install -y /root/ovs/rpm/rpmbuild/RPMS/x86_64/${ovs_kmod_rpm_name}" \ --run-command "yum upgrade -y /root/ovs/rpm/rpmbuild/RPMS/x86_64/${ovs_rpm_name}" \ |