Updates for rocky
- Replace git.openstack.org with opendev.org - Update some documentation - Move README.md to README.rst for better rendering - Drop obsolete bootstrap.sh script Change-Id: Ia621986157956cb8f03fabd00741959bd2879affchanges/09/697609/3
parent
ed27001087
commit
70fda6ae3a
11
Berksfile
11
Berksfile
|
@ -1,14 +1,11 @@
|
|||
source 'https://supermarket.chef.io'
|
||||
|
||||
%w(common identity).each do |cookbook|
|
||||
if Dir.exist?("../cookbook-openstack-#{cookbook}")
|
||||
cookbook "openstack-#{cookbook}", path: "../cookbook-openstack-#{cookbook}"
|
||||
%w(-common -identity client).each do |cookbook|
|
||||
if Dir.exist?("../cookbook-openstack#{cookbook}")
|
||||
cookbook "openstack#{cookbook}", path: "../cookbook-openstack#{cookbook}"
|
||||
else
|
||||
cookbook "openstack-#{cookbook}", git: "https://opendev.org/openstack/cookbook-openstack-#{cookbook}"
|
||||
cookbook "openstack#{cookbook}", git: "https://opendev.org/openstack/cookbook-openstack#{cookbook}"
|
||||
end
|
||||
end
|
||||
|
||||
cookbook 'openstackclient',
|
||||
git: 'https://opendev.org/openstack/cookbook-openstackclient'
|
||||
|
||||
metadata
|
||||
|
|
213
README.md
213
README.md
|
@ -1,213 +0,0 @@
|
|||
Team and repository tags
|
||||
========================
|
||||
|
||||
[](http://governance.openstack.org/reference/tags/index.html)
|
||||
|
||||
<!-- Change things from this point on -->
|
||||
|
||||

|
||||
|
||||
Description
|
||||
===========
|
||||
|
||||
This cookbook installs the OpenStack Network service **Neutron** as part of a
|
||||
Chef reference deployment of OpenStack. The
|
||||
https://github.com/openstack/openstack-chef contains documentation for using this cookbook in the context of a full OpenStack deployment.
|
||||
|
||||
More information about the OpenStack Network service is available
|
||||
[here](http://docs.openstack.org/mitaka/config-reference/networking.html)
|
||||
|
||||
Usage
|
||||
=====
|
||||
|
||||
OpenStack Network's design is modular, with plugins available that handle L2 and
|
||||
L3 networking for various hardware vendors and standards.
|
||||
|
||||
Requirements
|
||||
============
|
||||
|
||||
- Chef 12 or higher
|
||||
- chefdk 0.9.0 or higher for testing (also includes berkshelf for cookbook
|
||||
dependency resolution)
|
||||
|
||||
Platform
|
||||
========
|
||||
|
||||
- ubuntu
|
||||
- redhat
|
||||
- centos
|
||||
|
||||
Cookbooks
|
||||
=========
|
||||
|
||||
The following cookbooks are dependencies:
|
||||
|
||||
- 'openstack-common', '>= 14.0.0'
|
||||
- 'openstack-identity', '>= 14.0.0'
|
||||
- 'openstackclient', '>= 0.1.0'
|
||||
|
||||
Attributes
|
||||
==========
|
||||
|
||||
Please see the extensive inline documentation in `attributes/*.rb` for
|
||||
descriptions of all the settable attributes for this cookbook.
|
||||
|
||||
Note that all attributes are in the `default['openstack']` "namespace"
|
||||
|
||||
The usage of attributes to generate the neutron.conf is described in the
|
||||
openstack-common cookbook.
|
||||
|
||||
Recipes
|
||||
=======
|
||||
|
||||
## openstack-network::client
|
||||
- Install the network client packages
|
||||
|
||||
## openstack-network::db_migration
|
||||
- Migrates the neutron database
|
||||
|
||||
## openstack-network::default
|
||||
- Configures common pieces needed for all neutron services and create the
|
||||
neutron.conf
|
||||
|
||||
## openstack-network::dhcp_agent
|
||||
- Installs the DHCP agent
|
||||
|
||||
The configuration for neutron-dhcp-agent is generated from the attributes in
|
||||
using the same template as for the neutron.conf
|
||||
|
||||
```
|
||||
node['openstack']['network_dhcp']['conf']
|
||||
```
|
||||
|
||||
## openstack-network::fwaas
|
||||
**This is a 'work in progress' recipe and is currently not tested**
|
||||
- Installs the Firewall as a Service
|
||||
|
||||
## openstack-network::identity_registration
|
||||
- Registers the OpenStack Network API endpoint and service user with Keystone
|
||||
|
||||
## openstack-network::l3_agent
|
||||
- Installs the L3 agent
|
||||
|
||||
The configuration for neutron-l3-agent is generated from the attributes in using
|
||||
the same template as for the neutron.conf
|
||||
|
||||
```
|
||||
node['openstack']['network_l3']['conf']
|
||||
```
|
||||
|
||||
## openstack-network::lbaas
|
||||
- Installs the Loadbalancer as a Service
|
||||
|
||||
The configuration for neutron-lbaas-agent is generated from the attributes in
|
||||
using the same template as for the neutron.conf
|
||||
|
||||
```
|
||||
node['openstack']['network_lbaas']['conf']
|
||||
```
|
||||
|
||||
## openstack-network::metadata_agent
|
||||
- Installs the metadata agent
|
||||
|
||||
The configuration for neutron-metadata-agent is generated from the attributes in
|
||||
using the same template as for the neutron.conf
|
||||
|
||||
```
|
||||
node['openstack']['network_metadata']['conf']
|
||||
```
|
||||
|
||||
## openstack-network::metering_agent
|
||||
- Installs the metering agent
|
||||
|
||||
The configuration for neutron-metadata-agent is generated from the attributes in
|
||||
using the same template as for the neutron.conf
|
||||
|
||||
```
|
||||
node['openstack']['network_metering']['conf']
|
||||
```
|
||||
|
||||
## openstack-network::ml2_core_plugin
|
||||
- Configure the ml2_core_plugin
|
||||
|
||||
## openstack-network::ml2_linuxbridge
|
||||
- Configure the ml2 linuxbridge plugin
|
||||
|
||||
## openstack-network::ml2_openvswitch
|
||||
- Configure the ml2 openvswitch plugin
|
||||
|
||||
## openstack-network::openvswitch
|
||||
- Installs openvswitch
|
||||
|
||||
## openstack-network::openvswitch_agent
|
||||
- Installs the openvswitch agent
|
||||
|
||||
## openstack-network::plugin_config
|
||||
- Generates all the needed plugin configurations directly from the attributes
|
||||
in:
|
||||
|
||||
```
|
||||
node['openstack']['network']['plugins'][myplugin]
|
||||
```
|
||||
|
||||
The final configuration file is generated exactly like all OpenStack service
|
||||
configuration files (e.g. neutron.conf), but the attribute mentioned above
|
||||
allows you additionally to define the file name and patch with:
|
||||
|
||||
```
|
||||
# this will also generate the path recursively if not already existent
|
||||
node['openstack']['network']['plugins'][myplugin]['path']
|
||||
# this defines the filename for the plugin config (e.g. ml2_conf.ini)
|
||||
node['openstack']['network']['plugins'][myplugin]['filename']
|
||||
```
|
||||
In the examples above, the variable 'myplugin' can be used to generate multiple
|
||||
plugin configurations with different configs and filenames. Please refer to the
|
||||
recipe openstack-network::ml2_openvswitch for an full example on the usage of
|
||||
this attributes.
|
||||
|
||||
## openstack-network::server
|
||||
- Installs the openstack-network API server (currently aka neutron-server)
|
||||
|
||||
## openstack-network::vpnaas
|
||||
This recipe has been removed since it was unmaintained since the pike release
|
||||
and the vpnaas module got completely removed/refactored during the queens
|
||||
release. For rocky there seems to be some kind of vpnaas implementation
|
||||
directly in the l3 agent
|
||||
(https://docs.openstack.org/neutron/rocky/admin/vpnaas-scenario.html), but
|
||||
since the documentation about it is quite sparse right now, there is no recipe
|
||||
for that. If you want to add vpnaas back to this cookbook, please feel free to
|
||||
push a pull request.
|
||||
|
||||
License and Author
|
||||
==================
|
||||
|
||||
| | |
|
||||
|:---------------------|:---------------------------------------------------|
|
||||
| **Authors** | Alan Meadows (<alan.meadows@gmail.com>) |
|
||||
| | Jay Pipes (<jaypipes@gmail.com>) |
|
||||
| | Ionut Artarisi (<iartarisi@suse.cz>) |
|
||||
| | Salman Baset (<sabaset@us.ibm.com>) |
|
||||
| | Jian Hua Geng (<gengjh@cn.ibm.com>) |
|
||||
| | Chen Zhiwei (<zhiwchen@cn.ibm.com>) |
|
||||
| | Mark Vanderwiel(<vanderwl@us.ibm.com>) |
|
||||
| | Eric Zhou(<zyouzhou@cn.ibm.com>) |
|
||||
| | Jan Klare (<j.klare@x-ion.de>) |
|
||||
| | Christoph Albers (<c.albers@x-ion.de>) |
|
||||
| | |
|
||||
| **Copyright** | Copyright (c) 2013, AT&T Services, Inc. |
|
||||
| | Copyright (c) 2013-2014, SUSE Linux GmbH |
|
||||
| | Copyright (c) 2012, Rackspace US, Inc. |
|
||||
| | Copyright (c) 2013-2014, IBM Corp. |
|
||||
| | Copyright (c) 2016, cloudbau GmbH |
|
||||
|
||||
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.
|
|
@ -0,0 +1,262 @@
|
|||
OpenStack Chef Cookbook - network
|
||||
=================================
|
||||
|
||||
.. image:: https://governance.openstack.org/badges/cookbook-openstack-network.svg
|
||||
:target: https://governance.openstack.org/reference/tags/index.html
|
||||
|
||||
Description
|
||||
===========
|
||||
|
||||
This cookbook installs the OpenStack Network service **Neutron** as part
|
||||
of a Chef reference deployment of OpenStack. The `OpenStack chef-repo`_
|
||||
contains documentation for using this cookbook in the context of a full
|
||||
OpenStack deployment. Neutron is currently installed from packages.
|
||||
|
||||
.. _OpenStack chef-repo: https://opendev.org/openstack/openstack-chef
|
||||
|
||||
https://docs.openstack.org/neutron/latest/
|
||||
|
||||
Usage
|
||||
=====
|
||||
|
||||
OpenStack Network's design is modular, with plugins available that
|
||||
handle L2 and L3 networking for various hardware vendors and standards.
|
||||
|
||||
Requirements
|
||||
============
|
||||
|
||||
- Chef 14 or higher
|
||||
- ChefDK 3.2.30 for testing (also includes Berkshelf for cookbook
|
||||
dependency resolution)
|
||||
|
||||
Platform
|
||||
========
|
||||
|
||||
- ubuntu
|
||||
- redhat
|
||||
- centos
|
||||
|
||||
Cookbooks
|
||||
=========
|
||||
|
||||
The following cookbooks are dependencies:
|
||||
|
||||
- 'openstackclient'
|
||||
- 'openstack-common', '>= 18.0.0'
|
||||
- 'openstack-identity', '>= 18.0.0'
|
||||
|
||||
Attributes
|
||||
==========
|
||||
|
||||
Please see the extensive inline documentation in ``attributes/*.rb`` for
|
||||
descriptions of all the settable attributes for this cookbook.
|
||||
|
||||
Note that all attributes are in the ``default['openstack']`` "namespace"
|
||||
|
||||
The usage of attributes to generate the ``neutron.conf`` is described in
|
||||
the openstack-common cookbook.
|
||||
|
||||
Recipes
|
||||
=======
|
||||
|
||||
openstack-network::_bridge_config_example
|
||||
-----------------------------------------
|
||||
|
||||
- Example bridge recipe used in kitchen tests
|
||||
|
||||
openstack-network::db_migration
|
||||
-------------------------------
|
||||
|
||||
- Migrates the neutron database
|
||||
|
||||
openstack-network::default
|
||||
--------------------------
|
||||
|
||||
- Configures common pieces needed for all neutron services and create
|
||||
the ``neutron.conf``
|
||||
|
||||
openstack-network::dhcp_agent
|
||||
-----------------------------
|
||||
|
||||
- Installs the DHCP agent
|
||||
|
||||
The configuration for ``neutron-dhcp-agent`` is generated from the
|
||||
attributes in using the same template as for the ``neutron.conf``
|
||||
|
||||
.. code-block:: ruby
|
||||
|
||||
node['openstack']['network_dhcp']['conf']
|
||||
|
||||
openstack-network::fwaas
|
||||
------------------------
|
||||
|
||||
**This is a 'work in progress' recipe and is currently not tested**
|
||||
|
||||
- Installs the Firewall as a Service
|
||||
|
||||
openstack-network::identity_registration
|
||||
----------------------------------------
|
||||
|
||||
- Registers the OpenStack Network API endpoint and service user with
|
||||
Keystone
|
||||
|
||||
openstack-network::l3_agent
|
||||
---------------------------
|
||||
|
||||
- Installs the L3 agent
|
||||
|
||||
The configuration for ``neutron-l3-agent`` is generated from the
|
||||
attributes in using the same template as for the ``neutron.conf``
|
||||
|
||||
.. code-block:: ruby
|
||||
|
||||
node['openstack']['network_l3']['conf']
|
||||
|
||||
openstack-network::lbaas
|
||||
------------------------
|
||||
|
||||
- Installs the Loadbalancer as a Service
|
||||
|
||||
The configuration for ``neutron-lbaas-agent`` is generated from the
|
||||
attributes in using the same template as for the ``neutron.conf``
|
||||
|
||||
.. code-block:: ruby
|
||||
|
||||
node['openstack']['network_lbaas']['conf']
|
||||
|
||||
openstack-network::metadata_agent
|
||||
---------------------------------
|
||||
|
||||
- Installs the metadata agent
|
||||
|
||||
The configuration for ``neutron-metadata-agent`` is generated from the
|
||||
attributes in using the same template as for the ``neutron.conf``
|
||||
|
||||
.. code-block:: ruby
|
||||
|
||||
node['openstack']['network_metadata']['conf']
|
||||
|
||||
openstack-network::metering_agent
|
||||
---------------------------------
|
||||
|
||||
- Installs the metering agent
|
||||
|
||||
The configuration for ``neutron-metadata-agent`` is generated from the
|
||||
attributes in using the same template as for the ``neutron.conf``
|
||||
|
||||
.. code-block:: ruby
|
||||
|
||||
node['openstack']['network_metering']['conf']
|
||||
|
||||
openstack-network::ml2_core_plugin
|
||||
----------------------------------
|
||||
|
||||
- Configure the ``ml2_core_plugin``
|
||||
|
||||
openstack-network::ml2_linuxbridge
|
||||
----------------------------------
|
||||
|
||||
- Configure the ml2 linuxbridge plugin
|
||||
|
||||
openstack-network::ml2_openvswitch
|
||||
----------------------------------
|
||||
|
||||
- Configure the ml2 openvswitch plugin
|
||||
|
||||
openstack-network::openvswitch
|
||||
------------------------------
|
||||
|
||||
- Installs openvswitch
|
||||
|
||||
openstack-network::openvswitch_agent
|
||||
------------------------------------
|
||||
|
||||
- Installs the openvswitch agent
|
||||
|
||||
openstack-network::plugin_config
|
||||
--------------------------------
|
||||
|
||||
- Generates all the needed plugin configurations directly from the
|
||||
attributes in:
|
||||
|
||||
.. code-block:: ruby
|
||||
|
||||
node['openstack']['network']['plugins'][myplugin]
|
||||
|
||||
The final configuration file is generated exactly like all OpenStack
|
||||
service configuration files (e.g. ``neutron.conf``), but the attribute
|
||||
mentioned above allows you additionally to define the file name and
|
||||
patch with:
|
||||
|
||||
.. code-block:: ruby
|
||||
|
||||
# this will also generate the path recursively if not already existent
|
||||
node['openstack']['network']['plugins'][myplugin]['path']
|
||||
# this defines the filename for the plugin config (e.g. ml2_conf.ini)
|
||||
node['openstack']['network']['plugins'][myplugin]['filename']
|
||||
|
||||
In the examples above, the variable ``myplugin`` can be used to generate
|
||||
multiple plugin configurations with different configs and filenames.
|
||||
Please refer to the recipe ``openstack-network::ml2_openvswitch`` for an
|
||||
full example on the usage of this attributes.
|
||||
|
||||
openstack-network::server
|
||||
-------------------------
|
||||
|
||||
- Installs the openstack-network API server (currently aka
|
||||
neutron-server)
|
||||
|
||||
License and Author
|
||||
==================
|
||||
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Alan Meadows (alan.meadows@gmail.com) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Jay Pipes (jaypipes@gmail.com) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Ionut Artarisi (iartarisi@suse.cz) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Salman Baset (sabaset@us.ibm.com) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Jian Hua Geng (gengjh@cn.ibm.com) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Chen Zhiwei (zhiwchen@cn.ibm.com) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Mark Vanderwiel(vanderwl@us.ibm.com) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Eric Zhou(zyouzhou@cn.ibm.com) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Jan Klare (j.klare@x-ion.de) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Christoph Albers (c.albers@x-ion.de) |
|
||||
+-----------------+--------------------------------------------+
|
||||
| **Authors** | Lance Albertson (lance@osuosl.org) |
|
||||
+-----------------+--------------------------------------------+
|
||||
|
||||
+-----------------+--------------------------------------------------+
|
||||
| **Copyright** | Copyright (c) 2013, AT&T Services, Inc. |
|
||||
+-----------------+--------------------------------------------------+
|
||||
| **Copyright** | Copyright (c) 2013-2014, SUSE Linux GmbH |
|
||||
+-----------------+--------------------------------------------------+
|
||||
| **Copyright** | Copyright (c) 2012, Rackspace US, Inc. |
|
||||
+-----------------+--------------------------------------------------+
|
||||
| **Copyright** | Copyright (c) 2013-2014, IBM Corp. |
|
||||
+-----------------+--------------------------------------------------+
|
||||
| **Copyright** | Copyright (c) 2016, cloudbau GmbH |
|
||||
+-----------------+--------------------------------------------------+
|
||||
| **Copyright** | Copyright (c) 2016-2019, Oregon State University |
|
||||
+-----------------+--------------------------------------------------+
|
||||
|
||||
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.
|
2
Rakefile
2
Rakefile
|
@ -33,7 +33,7 @@ end
|
|||
desc 'All-in-One Neutron build Infra using Common task'
|
||||
task :integration do
|
||||
# Use the common integration task
|
||||
sh %(wget -nv -t 3 -O Rakefile-Common https://raw.githubusercontent.com/openstack/cookbook-openstack-common/master/Rakefile)
|
||||
sh %(wget -nv -t 3 -O Rakefile-Common https://opendev.org/openstack/cookbook-openstack-common/raw/branch/master/Rakefile)
|
||||
load './Rakefile-Common'
|
||||
Rake::Task['common_integration'].invoke
|
||||
end
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
#!/bin/bash -x
|
||||
## This script is for installing all the needed packages on trusty to run the chef tests with 'chef exec rake'.
|
||||
## It relies on the common bootstrap.sh from openstack/cookbook-openstack-common for installing common dependencies.
|
||||
|
||||
wget -nv -t 3 -O common-bootstrap.sh https://raw.githubusercontent.com/openstack/cookbook-openstack-common/master/bootstrap.sh
|
||||
/bin/bash -x common-bootstrap.sh
|
26
metadata.rb
26
metadata.rb
|
@ -3,17 +3,33 @@ maintainer 'openstack-chef'
|
|||
maintainer_email 'openstack-discuss@lists.openstack.org'
|
||||
license 'Apache-2.0'
|
||||
description 'Installs and configures the OpenStack Network API Service and various agents and plugins'
|
||||
long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
|
||||
version '18.0.0'
|
||||
|
||||
recipe 'openstack-network::_bridge_config_example', 'Example bridge recipe used in kitchen tests'
|
||||
recipe 'openstack-network::db_migration', 'Migrates the neutron database'
|
||||
recipe 'openstack-network::default', 'Configures common pieces needed for all neutron services and create the neutron.conf'
|
||||
recipe 'openstack-network::dhcp_agent', 'Installs the DHCP agent'
|
||||
recipe 'openstack-network::fwaas', 'Installs the Firewall as a Service'
|
||||
recipe 'openstack-network::identity_registration', 'Registers the OpenStack Network API endpoint and service user with Keystone'
|
||||
recipe 'openstack-network::l3_agent', 'Installs the L3 agent'
|
||||
recipe 'openstack-network::lbaas', 'Installs the Loadbalancer as a Service'
|
||||
recipe 'openstack-network::metadata_agent', 'Installs the metadata agent'
|
||||
recipe 'openstack-network::metering_agent', 'Installs the metering agent'
|
||||
recipe 'openstack-network::ml2_core_plugin', 'Configure the ml2_core_plugin'
|
||||
recipe 'openstack-network::ml2_linuxbridge', 'Configure the ml2 linuxbridge plugin'
|
||||
recipe 'openstack-network::ml2_openvswitch', 'Configure the ml2 openvswitch plugin'
|
||||
recipe 'openstack-network::openvswitch', 'Installs openvswitch'
|
||||
recipe 'openstack-network::openvswitch_agent', 'Installs the openvswitch agent'
|
||||
recipe 'openstack-network::plugin_config', 'Generates all the needed plugin configurations directly from the attributes'
|
||||
|
||||
%w(ubuntu redhat centos).each do |os|
|
||||
supports os
|
||||
end
|
||||
|
||||
depends 'openstackclient'
|
||||
depends 'openstack-common', '>= 18.0.0'
|
||||
depends 'openstack-identity', '>= 18.0.0'
|
||||
depends 'openstackclient'
|
||||
|
||||
issues_url 'https://launchpad.net/openstack-chef' if respond_to?(:issues_url)
|
||||
source_url 'https://github.com/openstack/cookbook-openstack-network' if respond_to?(:source_url)
|
||||
chef_version '>= 12.5' if respond_to?(:chef_version)
|
||||
issues_url 'https://launchpad.net/openstack-chef'
|
||||
source_url 'https://opendev.org/openstack/cookbook-openstack-network'
|
||||
chef_version '>= 14.0'
|
||||
|
|
Loading…
Reference in New Issue