diff --git a/defaults/main.yml b/defaults/main.yml index e4834569..be6e5484 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -127,8 +127,6 @@ neutron_neutron_conf_overrides: {} neutron_nuage_conf_ini_overrides: {} neutron_openvswitch_agent_ini_overrides: {} neutron_openvswitch_agent_init_overrides: {} -neutron_plumgrid_conf_ini_overrides: {} -neutron_plumlib_ini_overrides: {} # Provide a list of access controls to update the default policy.json with. # These changes will be merged # with the access controls in the default policy.json. E.g. diff --git a/doc/source/app-plumgrid.rst b/doc/source/app-plumgrid.rst deleted file mode 100644 index fd8966f1..00000000 --- a/doc/source/app-plumgrid.rst +++ /dev/null @@ -1,156 +0,0 @@ -============================================ -Scenario - Using the PLUMgrid Neutron plugin -============================================ - -Installing source and host networking -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -#. Clone the PLUMgrid Ansible repository in the ``/opt/`` directory: - - .. code-block:: shell-session - - # git clone -b TAG \ - https://github.com/plumgrid/plumgrid-ansible.git \ - /opt/plumgrid-ansible - - Replace *``TAG``* with the current stable release tag. - -#. PLUMgrid controls networking for the entire cluster. The bridges - ``br-vxlan`` and ``br-vlan`` are present to prevent relevant - containers from exiting with errors on infra hosts. They do not - need to be attached to any host interface or a valid network. - -#. PLUMgrid requires two networks: a `Management` and a `Fabric` - network. The Management network is typically shared through the - standard ``br-mgmt`` bridge and the Fabric network must be - specified in the PLUMgrid configuration file as described below. - The Fabric interface must be untagged and unbridged. - -Neutron configuration -~~~~~~~~~~~~~~~~~~~~~ - -To set up the neutron configuration to install PLUMgrid as the core -neutron plugin, create a userspace variable file named -``/etc/openstack_deploy/user_pg_neutron.yml`` and insert the following -parameters: - -#. Set the ``neutron_plugin_type`` parameter to ``plumgrid``: - - .. code-block:: yaml - - # Neutron Plugins - neutron_plugin_type: plumgrid - -#. In the same file, disable the installation of unnecessary - ``neutron-agents`` in the ``neutron_services`` dictionary by - setting their ``service_en`` parameters to ``False``: - - .. code-block:: yaml - - neutron_metering: False - neutron_l3: False - neutron_lbaas: False - neutron_lbaasv2: False - neutron_vpnaas: False - - -PLUMgrid configuration -~~~~~~~~~~~~~~~~~~~~~~ - -On the deployment host, create a PLUMgrid user variables file using -the sample in ``/opt/plumgrid-ansible/etc/user_pg_vars.yml.example``. -Copy that file to ``/etc/openstack_deploy/user_pg_vars.yml``. You must -configure the following parameters: - -#. Replace ``PG_REPO_HOST`` with a valid repository URL hosting - PLUMgrid packages: - - .. code-block:: yaml - - plumgrid_repo: PG_REPO_HOST - -#. Replace ``INFRA_IPs`` with comma-separated Infrastructure Node IPs - and ``PG_VIP`` with an unallocated IP on the management network. - This IP is used to access the PLUMgrid UI: - - .. code-block:: yaml - - plumgrid_ip: INFRA_IPs - pg_vip: PG_VIP - -#. Replace ``FABRIC_IFC`` with the name of the interface to be used - for PLUMgrid Fabric: - - .. note:: - - PLUMgrid Fabric must be an untagged unbridged raw interface such - as ``eth0``. - - .. code-block:: yaml - - fabric_interface: FABRIC_IFC - -#. Fill in the ``fabric_ifc_override`` and ``mgmt_override`` dicts - with node ``hostname: interface_name`` to override the default - interface names. - -#. Obtain a PLUMgrid License file, rename to ``pg_license`` and place - it under ``/var/lib/plumgrid/pg_license`` on the deployment host. - -Gateway hosts -~~~~~~~~~~~~~ - -PLUMgrid-enabled OpenStack clusters contain one or more gateway nodes -used for providing connectivity with external resources, such as -external networks, bare-metal servers, or network service appliances. -In addition to the `Management` and `Fabric` networks required by -PLUMgrid nodes, gateways require dedicated external interfaces -referred to as ``gateway_devs`` in the configuration files. - -#. Add a ``gateway_hosts`` section to - ``/etc/openstack_deploy/openstack_user_config.yml``: - - .. code-block:: yaml - - gateway_hosts: - gateway1: - ip: GW01_IP_ADDRESS - gateway2: - ip: GW02_IP_ADDRESS - - Replace ``*_IP_ADDRESS`` with the IP address of the ``br-mgmt`` - container management bridge on each Gateway host. - -#. Add a ``gateway_hosts`` section to the end of the PLUMgrid - ``user_pg_vars.yml`` file: - - .. note:: - - This section must contain the hostnames and ``gateway_dev`` - names for each gateway in the cluster. - - .. code-block:: yaml - - gateway_hosts: - - hostname: gateway1 - gateway_devs: - - eth3 - - eth4 - -Installation -~~~~~~~~~~~~ - -#. Run the PLUMgrid playbooks before running the - ``openstack-setup.yml`` playbook: - - .. code-block:: shell-session - - # cd /opt/plumgrid-ansible/plumgrid_playbooks - # openstack-ansible plumgrid_all.yml - -.. note:: - - Contact PLUMgrid at info@plumgrid.com for an Installation Pack. - This pack includes a full trial commercial license, packages, - deployment documentation, and automation scripts for the entire - work flow. diff --git a/doc/source/index.rst b/doc/source/index.rst index e16caf8a..3ad5dbce 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -8,7 +8,6 @@ Neutron role for OpenStack-Ansible configure-network-services.rst app-openvswitch.rst app-nuage.rst - app-plumgrid.rst app-calico.rst :tags: openstack, neutron, cloud, ansible diff --git a/releasenotes/notes/remove-plumgrid-8c86d99999a2ca48.yaml b/releasenotes/notes/remove-plumgrid-8c86d99999a2ca48.yaml new file mode 100644 index 00000000..6420eb16 --- /dev/null +++ b/releasenotes/notes/remove-plumgrid-8c86d99999a2ca48.yaml @@ -0,0 +1,5 @@ +--- +deprecations: + - The plumgrid network provider has been removed. This is being dropped + without a full deprecation cycle because the company, plumgrid, no + longer exists. diff --git a/tasks/neutron_post_install.yml b/tasks/neutron_post_install.yml index 55f49082..babb6442 100644 --- a/tasks/neutron_post_install.yml +++ b/tasks/neutron_post_install.yml @@ -115,11 +115,6 @@ notify: - Restart neutron services -- name: Setup PLUMgrid config - include: plumgrid_config.yml - static: no - when: neutron_plugin_type == 'plumgrid' - - name: Setup Nuage neutron config include: nuage_neutron_config.yml static: no diff --git a/tasks/plumgrid_config.yml b/tasks/plumgrid_config.yml deleted file mode 100644 index fa97756a..00000000 --- a/tasks/plumgrid_config.yml +++ /dev/null @@ -1,64 +0,0 @@ ---- -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -- name: Setup PLUMlib Neutron Config - config_template: - src: plugins/plumgrid/plumlib.ini - dest: "{{ neutron_conf_dir }}/plugins/plumgrid/plumlib.ini" - owner: "{{ neutron_system_user_name }}" - group: "{{ neutron_system_group_name }}" - config_overrides: "{{ neutron_plumlib_ini_overrides }}" - config_type: "ini" - -- name: Place pgrc file - template: - src: plugins/plumgrid/pgrc - dest: "{{ neutron_conf_dir }}/plugins/plumgrid/pgrc" - owner: "{{ neutron_system_user_name }}" - group: "{{ neutron_system_group_name }}" - -- name: Install networking-plumgrid - package: - name: networking-plumgrid - state: "{{ neutron_package_state }}" - update_cache: "{{ (ansible_pkg_mgr == 'apt') | ternary('yes', omit) }}" - cache_valid_time: "{{ (ansible_pkg_mgr == 'apt') | ternary(cache_timeout, omit) }}" - force: "{{ (ansible_pkg_mgr == 'apt') | ternary('yes', omit) }}" - register: install_packages - until: install_packages|success - retries: 5 - delay: 2 - when: - - inventory_hostname in groups[neutron_services['neutron-server']['group']] - -- name: Register networking_plumgrid version - shell: > - dpkg -l | grep networking-plumgrid | awk '{print $3}' - register: np_ver - when: - - inventory_hostname in groups[neutron_services['neutron-server']['group']] - -- name: Link networking-plumgrid files (venv) - file: - src: "{{ item.name }}" - dest: "{{ neutron_venv_lib_dir }}{{ item.name | basename }}" - state: "{{ item.state }}" - force: "yes" - with_items: - - { state: link, name: "/usr/local/lib/python2.7/dist-packages/networking_plumgrid" } - - { state: link, name: "/usr/local/lib/python2.7/dist-packages/networking_plumgrid-{{ np_ver.stdout }}-py2.7.egg-info" } - when: - - neutron_venv_enabled | bool - - inventory_hostname in groups[neutron_services['neutron-server']['group']] - diff --git a/templates/neutron.conf.j2 b/templates/neutron.conf.j2 index 9819e06b..816963ac 100644 --- a/templates/neutron.conf.j2 +++ b/templates/neutron.conf.j2 @@ -206,7 +206,7 @@ auth_version = 3 {% endif %} -{% if neutron_fwaas | bool and neutron_plugin_type != 'plumgrid' %} +{% if neutron_fwaas | bool %} [fwaas] enabled = true driver = neutron_fwaas.services.firewall.drivers.linux.iptables_fwaas.IptablesFwaasDriver diff --git a/templates/plugins/plumgrid/pgrc b/templates/plugins/plumgrid/pgrc deleted file mode 100644 index 0b8e1ff2..00000000 --- a/templates/plugins/plumgrid/pgrc +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh -# {{ ansible_managed }} -export os_auth_url="{{ keystone_service_adminurl }}" -export os_admin_user="{{ keystone_admin_user_name }}" -export os_admin_tenant="{{ keystone_admin_tenant_name }}" -export os_admin_password="{{ keystone_auth_admin_password }}" -export pg_virtual_ip="{{ pg_vip }}" -export pg_username="{{ pg_username }}" -export pg_password="{{ pg_password }}" diff --git a/templates/plugins/plumgrid/plumgrid.ini.j2 b/templates/plugins/plumgrid/plumgrid.ini.j2 deleted file mode 100644 index 7d84d0bc..00000000 --- a/templates/plugins/plumgrid/plumgrid.ini.j2 +++ /dev/null @@ -1,19 +0,0 @@ -#Config file for Neutron PLUMgrid Plugin - -[plumgriddirector] -# This line should point to the PLUMgrid Director Virtual-IP, -# for the PLUMgrid Platform. -director_server={{ pg_vip }} -director_server_port={{ pg_ports['vip_port'] }} -# Authentification parameters for the Director. -# These are the admin credentials to manage and control -# the PLUMgrid Director server. -username={{ pg_username }} -password={{ pg_password }} -servertimeout=70 -connection = mysql+pymysql://{{ neutron_galera_user }}:{{ neutron_container_mysql_password }}@{{ neutron_galera_address }}/{{ neutron_galera_database }}?charset=utf8 - -[l2gateway] -vendor={{ hardware_vendor_type }} -sw_username={{ switch_username }} -sw_password={{ switch_password }} diff --git a/templates/plugins/plumgrid/plumlib.ini b/templates/plugins/plumgrid/plumlib.ini deleted file mode 100644 index c5333b92..00000000 --- a/templates/plugins/plumgrid/plumlib.ini +++ /dev/null @@ -1,57 +0,0 @@ -# Configuration file for the Python PLUMgrid Library -# PLUMgrid spefifc parameters are expected to come -# from /etc/openstack_deploy/user_pg_vars.yml - -[PLUMgridLibrary] -# PLUMlib writes to CDB to save some data. If this flag is set to -# false, PLUMlib will not use CDB utility -cdb_configuration = True - -# Name of the interface plugged on fabric network -fabric_eth = eth1 - -# Security Policy Flag -enable_pg_security = True - -# Reverse Flow Flag -enable_reverse_flow = True - -# Flag to enable/disable virtual appliance creation -vapp_flag = False - -[PLUMgridMetadata] -nova_metadata_ip = {{ pg_metadata_ip }} -nova_metadata_port = {{ pg_metadata_port }} -metadata_proxy_shared_secret = {{ nova_metadata_proxy_secret }} -enable_pg_metadata = {{ enable_pg_metadata }} - -# setting "metadata_ns" to false, will result in -# no metadata namespace created on this node -metadata_ns = True - -# Where to store Neutron state files -state_path = /var/lib/neutron/ - -# Name of proxy used in metadata namespaces -ns_proxy_name = neutron-ns-metadata-proxy - -# PLUMlib supports two metadata modes: tunnel and local -# Note: modes cannot be changed on a running system. This config -# should be done before bringing up the system -metadata_mode = local - -# Use "sudo neutron-rootwrap {{ neutron_conf_dir }}/rootwrap.conf" to use the real -# root filter facility. -# Change to "sudo" to skip the filtering and just run the comand directly -root_helper_name = {{ neutron_bin }}/neutron-rootwrap - -[ConnectorType] -connector_type = {{ pg_connector_type|default('distributed') }} - -[keystone_authtoken] -admin_user = {{ neutron_service_user_name }} -admin_password = {{ neutron_service_password }} -auth_uri = {{ keystone_service_internaluri }}/v3 -admin_tenant_name = {{ neutron_service_project_name }} -identity_version = {{ identity_version|default('v3') }} -user_domain_name = {{ plumlib_user_domain_name|default('Default')}} diff --git a/vars/main.yml b/vars/main.yml index b1db62da..a6cfe909 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -180,10 +180,6 @@ neutron_plugins: plugin_conf_ini_overrides: "{{ neutron_ml2_conf_ini_overrides }}" l3_agent_mode: "legacy" driver_interface: "openvswitch" - plumgrid: - plugin_conf_ini_overrides: "{{ neutron_plumgrid_conf_ini_overrides }}" - plugin_core: networking_plumgrid.neutron.plugins.plugin.NeutronPluginPLUMgridV2 - plugin_ini: plugins/plumgrid/plumgrid.ini nuage: plugin_core: neutron.plugins.nuage.plugin.NuagePlugin plugin_ini: plugins/nuage/nuage.ini