From adba3af2572ddfb7d7fd1cfdc3947f6249a0e0eb Mon Sep 17 00:00:00 2001 From: Tim Rozet Date: Wed, 28 Mar 2018 13:58:15 -0700 Subject: Updates configs for ODL CSIT deployments For ODL CSIT we want to deploy with: - Minimum services per role - 2 Compute nodes, 1 controller - Single network enabled Change-Id: If611c4c1ff68629670ef15904930124b5786a569 Signed-off-by: Tim Rozet --- apex/overcloud/deploy.py | 2 +- build/csit-environment.yaml | 51 +++-- build/csit-queens-environment.yaml | 88 ++++++++ build/rpm_specs/opnfv-apex.spec | 4 +- config/deploy/os-odl-csit-noha.yaml | 12 -- config/network/network_settings_csit.yaml | 321 ++++++++++++++++++++++++++++++ 6 files changed, 444 insertions(+), 34 deletions(-) create mode 100644 build/csit-queens-environment.yaml delete mode 100644 config/deploy/os-odl-csit-noha.yaml create mode 100644 config/network/network_settings_csit.yaml diff --git a/apex/overcloud/deploy.py b/apex/overcloud/deploy.py index 6b7c2db0..8367ffa2 100644 --- a/apex/overcloud/deploy.py +++ b/apex/overcloud/deploy.py @@ -197,7 +197,7 @@ def create_deploy_cmd(ds, ns, inv, tmp_dir, else: deploy_options.append(os.path.join(con.THT_ENV_DIR, v)) - if ds_opts['ceph']: + if ds_opts['ceph'] and 'csit' not in env_file: prep_storage_env(ds, ns, virtual, tmp_dir) deploy_options.append(os.path.join(con.THT_ENV_DIR, 'storage-environment.yaml')) diff --git a/build/csit-environment.yaml b/build/csit-environment.yaml index 3dcd6d9e..2fc63696 100644 --- a/build/csit-environment.yaml +++ b/build/csit-environment.yaml @@ -3,7 +3,7 @@ # types parameters: -# CloudDomain: + CloudDomain: opnfvlf.org parameter_defaults: GlanceBackend: file @@ -11,26 +11,36 @@ parameter_defaults: NeutronEnableForceMetadata: true NeutronEnableDHCPMetadata: true NeutronEnableIsolatedMetadata: true - OvercloudControlFlavor: control - OvercloudComputeFlavor: compute - controllerImage: overcloud-full ExtraConfig: tripleo::ringbuilder::build_ring: false - nova::nova_public_key: - type: 'ssh-rsa' - replace_public_key: - nova::nova_private_key: - type: 'ssh-rsa' - replace_private_key: - nova::policy::policies: - nova-os_compute_api:servers:show:host_status: - key: 'os_compute_api:servers:show:host_status' - value: 'rule:admin_or_owner' nova::api::default_floating_pool: 'external' + DockerPuppetProcessCount: 10 + NeutronNetworkVLANRanges: 'datacentre:500:525' + SshServerOptions: + HostKey: + - '/etc/ssh/ssh_host_rsa_key' + - '/etc/ssh/ssh_host_ecdsa_key' + - '/etc/ssh/ssh_host_ed25519_key' + SyslogFacility: 'AUTHPRIV' + AuthorizedKeysFile: '.ssh/authorized_keys' + PasswordAuthentication: 'no' + ChallengeResponseAuthentication: 'no' + GSSAPIAuthentication: 'no' + GSSAPICleanupCredentials: 'no' + UsePAM: 'yes' + X11Forwarding: 'yes' + UsePrivilegeSeparation: 'sandbox' + AcceptEnv: + - 'LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES' + - 'LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT' + - 'LC_IDENTIFICATION LC_ALL LANGUAGE' + - 'XMODIFIERS' + Subsystem: 'sftp /usr/libexec/openssh/sftp-server' + UseDNS: 'no' ControllerServices: - OS::TripleO::Services::CACerts - - OS::TripleO::Services::Core - OS::TripleO::Services::Kernel + - OS::TripleO::Services::Docker - OS::TripleO::Services::Keystone - OS::TripleO::Services::GlanceApi - OS::TripleO::Services::GlanceRegistry @@ -39,11 +49,9 @@ parameter_defaults: - OS::TripleO::Services::NeutronMetadataAgent - OS::TripleO::Services::NeutronApi - OS::TripleO::Services::NeutronCorePlugin - - OS::TripleO::Services::RabbitMQ - OS::TripleO::Services::HAproxy - OS::TripleO::Services::Keepalived - OS::TripleO::Services::Memcached - - OS::TripleO::Services::Pacemaker - OS::TripleO::Services::Redis - OS::TripleO::Services::NovaConductor - OS::TripleO::Services::MongoDb @@ -53,26 +61,29 @@ parameter_defaults: - OS::TripleO::Services::NovaConsoleauth - OS::TripleO::Services::NovaVncProxy - OS::TripleO::Services::Ntp + - OS::TripleO::Services::OsloMessagingRpc + - OS::TripleO::Services::OsloMessagingNotify - OS::TripleO::Services::Snmp + - OS::TripleO::Services::Sshd - OS::TripleO::Services::Timezone - - OS::TripleO::Services::Horizon - OS::TripleO::Services::TripleoPackages - OS::TripleO::Services::TripleoFirewall - OS::TripleO::Services::OpenDaylightApi - OS::TripleO::Services::OpenDaylightOvs - - OS::TripleO::Services::VipHosts ComputeServices: - OS::TripleO::Services::CACerts - OS::TripleO::Services::Timezone - OS::TripleO::Services::Ntp - OS::TripleO::Services::Snmp + - OS::TripleO::Services::Sshd - OS::TripleO::Services::NovaCompute - OS::TripleO::Services::NovaLibvirt - OS::TripleO::Services::Kernel + - OS::TripleO::Services::Docker - OS::TripleO::Services::ComputeNeutronCorePlugin - OS::TripleO::Services::ComputeNeutronMetadataAgent + - OS::TripleO::Services::NovaPlacement - OS::TripleO::Services::TripleoPackages - OS::TripleO::Services::TripleoFirewall - OS::TripleO::Services::NeutronSriovAgent - OS::TripleO::Services::OpenDaylightOvs - - OS::TripleO::Services::VipHosts diff --git a/build/csit-queens-environment.yaml b/build/csit-queens-environment.yaml new file mode 100644 index 00000000..f2b7b015 --- /dev/null +++ b/build/csit-queens-environment.yaml @@ -0,0 +1,88 @@ +--- +# Environment file used to list common parameters required for all deployment +# types + +parameters: + CloudDomain: opnfvlf.org + +parameter_defaults: + GlanceBackend: file + CeilometerStoreEvents: true + NeutronEnableForceMetadata: true + NeutronEnableDHCPMetadata: true + NeutronEnableIsolatedMetadata: true + ExtraConfig: + tripleo::ringbuilder::build_ring: false + nova::api::default_floating_pool: 'external' + DockerPuppetProcessCount: 10 + NeutronNetworkVLANRanges: 'datacentre:500:525' + SshServerOptions: + HostKey: + - '/etc/ssh/ssh_host_rsa_key' + - '/etc/ssh/ssh_host_ecdsa_key' + - '/etc/ssh/ssh_host_ed25519_key' + SyslogFacility: 'AUTHPRIV' + AuthorizedKeysFile: '.ssh/authorized_keys' + PasswordAuthentication: 'no' + ChallengeResponseAuthentication: 'no' + GSSAPIAuthentication: 'no' + GSSAPICleanupCredentials: 'no' + UsePAM: 'yes' + X11Forwarding: 'yes' + UsePrivilegeSeparation: 'sandbox' + AcceptEnv: + - 'LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES' + - 'LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT' + - 'LC_IDENTIFICATION LC_ALL LANGUAGE' + - 'XMODIFIERS' + Subsystem: 'sftp /usr/libexec/openssh/sftp-server' + UseDNS: 'no' + ControllerServices: + - OS::TripleO::Services::CACerts + - OS::TripleO::Services::Kernel + - OS::TripleO::Services::Docker + - OS::TripleO::Services::Keystone + - OS::TripleO::Services::GlanceApi + - OS::TripleO::Services::GlanceRegistry + - OS::TripleO::Services::MySQL + - OS::TripleO::Services::NeutronDhcpAgent + - OS::TripleO::Services::NeutronMetadataAgent + - OS::TripleO::Services::NeutronApi + - OS::TripleO::Services::NeutronCorePlugin + - OS::TripleO::Services::RabbitMQ + - OS::TripleO::Services::HAproxy + - OS::TripleO::Services::Keepalived + - OS::TripleO::Services::Memcached + - OS::TripleO::Services::Redis + - OS::TripleO::Services::NovaConductor + - OS::TripleO::Services::MongoDb + - OS::TripleO::Services::NovaApi + - OS::TripleO::Services::NovaMetadata + - OS::TripleO::Services::NovaScheduler + - OS::TripleO::Services::NovaConsoleauth + - OS::TripleO::Services::NovaVncProxy + - OS::TripleO::Services::Ntp + - OS::TripleO::Services::Snmp + - OS::TripleO::Services::Sshd + - OS::TripleO::Services::Timezone + - OS::TripleO::Services::TripleoPackages + - OS::TripleO::Services::TripleoFirewall + - OS::TripleO::Services::OpenDaylightApi + - OS::TripleO::Services::OpenDaylightOvs + ComputeServices: + - OS::TripleO::Services::CACerts + - OS::TripleO::Services::Timezone + - OS::TripleO::Services::Ntp + - OS::TripleO::Services::Snmp + - OS::TripleO::Services::Sshd + - OS::TripleO::Services::NovaCompute + - OS::TripleO::Services::NovaLibvirt + - OS::TripleO::Services::Kernel + - OS::TripleO::Services::Docker + - OS::TripleO::Services::ComputeNeutronCorePlugin + - OS::TripleO::Services::ComputeNeutronMetadataAgent + - OS::TripleO::Services::NovaPlacement + - OS::TripleO::Services::TripleoPackages + - OS::TripleO::Services::TripleoFirewall + - OS::TripleO::Services::NeutronSriovAgent + - OS::TripleO::Services::OpenDaylightOvs diff --git a/build/rpm_specs/opnfv-apex.spec b/build/rpm_specs/opnfv-apex.spec index a718061e..672a28af 100644 --- a/build/rpm_specs/opnfv-apex.spec +++ b/build/rpm_specs/opnfv-apex.spec @@ -45,7 +45,6 @@ install build/bash_completion_apex %{buildroot}%{_sysconfdir}/bash_completion.d/ mkdir -p %{buildroot}%{_sysconfdir}/opnfv-apex/ cp -f %{buildroot}%{_datadir}/opnfv-apex/config/deploy/* %{buildroot}%{_sysconfdir}/opnfv-apex/ cp -f %{buildroot}%{_datadir}/opnfv-apex/config/network/* %{buildroot}%{_sysconfdir}/opnfv-apex/ -rm -f %{buildroot}%{_sysconfdir}/opnfv-apex/os-odl-csit-noha.yaml rm -f %{buildroot}%{_sysconfdir}/opnfv-apex/deploy_settings.yaml mkdir -p %{buildroot}%{_docdir}/opnfv/ @@ -107,6 +106,7 @@ install config/inventory/pod_example_settings.yaml %{buildroot}%{_docdir}/opnfv/ %{_sysconfdir}/opnfv-apex/os-onos-sfc-ha.yaml %{_sysconfdir}/opnfv-apex/os-ocl-nofeature-ha.yaml %{_sysconfdir}/opnfv-apex/network_settings.yaml +%{_sysconfdir}/opnfv-apex/network_settings_csit.yaml %{_sysconfdir}/opnfv-apex/network_settings_vlans.yaml %{_sysconfdir}/opnfv-apex/network_settings_v6.yaml %doc %{_docdir}/opnfv/LICENSE.rst @@ -119,6 +119,8 @@ install config/inventory/pod_example_settings.yaml %{buildroot}%{_docdir}/opnfv/ %doc %{_docdir}/opnfv/inventory.yaml.example %changelog +* Fri May 25 2018 Tim Rozet - 7.0-1 + Adds CSIT network settings file * Wed May 02 2018 Tim Rozet - 7.0-0 Updates master with new version and deploy settings * Tue Apr 17 2018 Feng Pan - 6.0-4 diff --git a/config/deploy/os-odl-csit-noha.yaml b/config/deploy/os-odl-csit-noha.yaml deleted file mode 100644 index 634b6cb5..00000000 --- a/config/deploy/os-odl-csit-noha.yaml +++ /dev/null @@ -1,12 +0,0 @@ ---- -global_params: - ha_enabled: false - -deploy_options: - sdn_controller: opendaylight - odl_version: nitrogen - tacker: false - congress: false - sfc: false - vpn: false - ceph: false diff --git a/config/network/network_settings_csit.yaml b/config/network/network_settings_csit.yaml new file mode 100644 index 00000000..8eec0f65 --- /dev/null +++ b/config/network/network_settings_csit.yaml @@ -0,0 +1,321 @@ +--- +# This configuration file defines Network Environment for a +# Baremetal Deployment of OPNFV. It contains default values +# for 5 following networks: +# +# - admin +# - tenant* +# - external* +# - storage* +# - api* +# *) optional networks +# +# Optional networks will be consolidated with the admin network +# if not explicitly configured. +# +# See short description of the networks in the comments below. +# +# "admin" is the short name for Control Plane Network. +# This network should be IPv4 even it is an IPv6 deployment +# IPv6 does not have PXE boot support. +# During OPNFV deployment it is used for node provisioning which will require +# PXE booting as well as running a DHCP server on this network. Be sure to +# disable any other DHCP/TFTP server on this network. +# +# "tenant" is the network used for tenant traffic. +# +# "external" is the network which should have internet or external +# connectivity. External OpenStack networks will be configured to egress this +# network. There can be multiple external networks, but only one assigned as +# "public" which OpenStack public API's will register. +# +# "storage" is the network for storage I/O. +# +# "api" is an optional network for splitting out OpenStack service API +# communication. This should be used for IPv6 deployments. + + +# Meta data for the network configuration +network-config-metadata: + title: LF-POD-1 Network config + version: 0.1 + created: Mon Dec 28 2015 + comment: None + +# DNS Settings +dns-domain: opnfvlf.org +dns-search: opnfvlf.org +dns_nameservers: + - 8.8.8.8 + - 8.8.4.4 +# NTP servers +ntp: + - 0.se.pool.ntp.org + - 1.se.pool.ntp.org +# Syslog server +syslog: + server: 10.128.1.24 + transport: 'tcp' + +# http(s) proxy settings added to /etc/environment of uc and oc nodes +# http_proxy: http://proxy.server:8080 +# https_proxy: https://proxy.server:8081 + +# Common network settings +networks: + # Admin configuration (pxe and jumpstart) + admin: + enabled: true + # Network settings for the Installer VM on admin network + installer_vm: + # Indicates if this VM will be bridged to an interface, or to a bond + nic_type: interface + # Interfaces to bridge for installer VM (use multiple values for bond) + members: + - em1 + # VLAN tag to use for this network on Installer VM, native means none + vlan: native + # IP to assign to Installer VM on this network + ip: 192.0.2.1 + # Usable ip range for the overcloud node IPs (including VIPs) + # Last IP is used for host bridge (i.e. br-admin). + # If empty entire range is usable. + # Cannot overlap with dhcp_range or introspection_range. + overcloud_ip_range: + - 192.0.2.51 + - 192.0.2.99 + # Gateway (only needed when public_network is disabled) + gateway: 192.0.2.1 + # Subnet in CIDR format 192.168.1.0/24 + cidr: 192.0.2.0/24 + # DHCP range for the admin network, automatically provisioned if empty + dhcp_range: + - 192.0.2.2 + - 192.0.2.50 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + phys_type: interface + # Physical NIC members (Single value allowed for phys_type: interface) + members: + - eth0 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + phys_type: interface + members: + - eth0 + + # Tenant network configuration + tenant: + enabled: false + # Subnet in CIDR format 192.168.1.0/24 + cidr: 11.0.0.0/24 + # Tenant network MTU + mtu: 1500 + # Tenant network Overlay segmentation ID range: + # VNI, VLAN-ID, etc. + overlay_id_range: 2,65535 + + # Tenant network segmentation type: + # vlan, vxlan, gre + segmentation_type: vxlan + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface/bond) + phys_type: interface + # UIO driver to use for DPDK scenarios. + # The value is ignored for non-DPDK scenarios. + uio_driver: uio_pci_generic + # VLAN tag to use with this NIC + vlan: native + # Physical NIC members of this mapping + # Single value allowed for phys_type: interface + members: + # Note logical name like nic1 not valid for fdio deployment yet. + - eth1 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + # Physical interface type (interface/bond) + phys_type: interface + vlan: native + # Note: logicial names like nic1 are not valid for fdio deployment yet. + members: + - eth1 + + # Can contain 1 or more external networks + external: + - public: + enabled: false + # Public network MTU + mtu: 1500 + # Network settings for the Installer VM on external network + # (note only valid on 'public' external network) + installer_vm: + # Indicates if this VM will be bridged to an interface, or to a bond + nic_type: interface + vlan: native + # Interfaces to bridge for installer VM (use multiple values for bond) + members: + - em1 + # IP to assign to Installer VM on this network + ip: 192.168.37.1 + cidr: 192.168.37.0/24 + gateway: 192.168.37.1 + # Range to allocate to floating IPs for the public network with Neutron + floating_ip_range: + - 192.168.37.200 + - 192.168.37.220 + # Usable ip range for the overcloud node IPs (including VIPs) + # 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. + overcloud_ip_range: + - 192.168.37.10 + - 192.168.37.199 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + phys_type: interface + # VLAN tag to use with this NIC + vlan: native + # Physical NIC members of this mapping + # Single value allowed for phys_type: interface + members: + - eth2 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + phys_type: interface + vlan: native + members: + - eth2 + # External network to be created in OpenStack by Services tenant + external_overlay: + name: Public_internet + type: flat + gateway: 192.168.37.1 + # another external network + # This is an example and not yet supported + - private_cloud: + enabled: false + mtu: 1500 + # Network settings for the Installer VM on external network + # note only valid on 'public' external network + installer_vm: + # Indicates if this VM will be bridged to an interface, or to a bond + nic_type: interface + vlan: 101 + # Interfaces to bridge for installer VM (use multiple values for bond) + members: + - em1 + # IP to assign to Installer VM on this network + ip: 192.168.38.1 + cidr: 192.168.38.0/24 + gateway: 192.168.38.1 + # Range to allocate to floating IPs for the public network with Neutron + floating_ip_range: + - 192.168.38.200 + - 192.168.38.220 + # Usable IP range for overcloud nodes (including VIPs)i + # usually this is a shared subnet. + # Cannot overlap with dhcp_range or introspection_range. + overcloud_ip_range: + - 192.168.38.10 + - 192.168.38.199 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + phys_type: interface + # VLAN tag to use with this NIC + vlan: 101 + # Physical NIC members of this mappingi + # Single value allowed for phys_type: interface + # Note: logical names like nic1 are not valid for fdio deployment yet. + members: + - eth3 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + phys_type: interface + vlan: 101 + members: + - eth3 + # External network to be created in OpenStack by Services tenant + external_overlay: + name: private_cloud + type: vlan + segmentation_id: 101 + gateway: 192.168.38.1 + + # Storage network configuration + storage: + enabled: false + # Subnet in CIDR format + cidr: 12.0.0.0/24 + # Storage network MTU + mtu: 1500 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + phys_type: interface + # VLAN tag to use with this NIC + vlan: native + # Physical NIC members of this mapping + # Single value allowed for phys_type: interface + members: + # Note logical names like nic1 not valid for fdio deployment yet. + - eth3 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + phys_type: interface + vlan: native + members: + - eth3 + + api: + # API network configuration + enabled: false + # Subnet in CIDR format + cidr: fd00:fd00:fd00:4000::/64 + # VLAN tag to use for Overcloud hosts on this network + vlan: 13 + # Api network MTU + mtu: 1500 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + phys_type: interface + # VLAN tag to use with this NIC + vlan: native + # Physical NIC members of this mapping + # Single value allowed for phys_type: interface + # Note logical names like nic1 not valid for fdio deployment yet. + members: + - eth4 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + phys_type: interface + vlan: native + members: + - eth4 + +# Apex specific settings +apex: + networks: + admin: + # Range used for introspection phase (examining nodes). + # This cannot overlap with dhcp_range or overcloud_ip_range. + # for the overcloud default external network + introspection_range: + - 192.0.2.100 + - 192.0.2.120 -- cgit 1.2.3-korg