Update developer references 'networking' section

Developer References "networking" section is out of date
and must be adapted to the new code base.
Furthermore it fixes some typos.

Change-Id: I57fab662e20973e89bf99079fa194d5e5035e6d9
This commit is contained in:
Bertrand Lallau 2018-06-07 11:04:28 +02:00 committed by Pete Birley
parent a68070990d
commit ae71d5ff7d

View File

@ -54,7 +54,7 @@ should be configured in :code:`neutron.conf`:
# Example: router, qos, trunk, metering. # Example: router, qos, trunk, metering.
# If other SDN implement L3 or other services, it should be configured # If other SDN implement L3 or other services, it should be configured
# here # here
service_plugin = router service_plugins = router
All of the above configs are endpoints or path to the specific class All of the above configs are endpoints or path to the specific class
implementing the interface. You can see the endpoints to class mapping in implementing the interface. You can see the endpoints to class mapping in
@ -129,20 +129,16 @@ for the L2 agent daemonset:
.. code-block:: yaml .. code-block:: yaml
dependencies: dependencies:
dhcp: dynamic:
services: targeted:
- service: oslo_messaging openvswitch:
endpoint: internal dhcp:
- service: network pod:
endpoint: internal # this should be set to corresponding neutron L2 agent
- service: compute - requireSameNode: true
endpoint: internal labels:
pod: application: neutron
# this should be set to corresponding neutron L2 agent component: neutron-ovs-agent
- requireSameNode: true
labels:
application: neutron
component: neutron-ovs-agent
There is also a need for DHCP agent to pass ovs agent config file There is also a need for DHCP agent to pass ovs agent config file
(in :code:`neutron/templates/bin/_neutron-dhcp-agent.sh.tpl`): (in :code:`neutron/templates/bin/_neutron-dhcp-agent.sh.tpl`):
@ -150,11 +146,12 @@ There is also a need for DHCP agent to pass ovs agent config file
.. code-block:: bash .. code-block:: bash
exec neutron-dhcp-agent \ exec neutron-dhcp-agent \
--config-file /etc/neutron/neutron.conf \ --config-file /etc/neutron/neutron.conf \
--config-file /etc/neutron/dhcp_agent.ini \ --config-file /etc/neutron/dhcp_agent.ini \
--config-file /etc/neutron/plugins/ml2/ml2_conf.ini \ --config-file /etc/neutron/metadata_agent.ini \
{{- if eq .Values.network.backend "ovs" }} \ --config-file /etc/neutron/plugins/ml2/ml2_conf.ini
--config-file /etc/neutron/plugins/ml2/openvswitch_agent.ini {{- if ( has "openvswitch" .Values.network.backend ) }} \
--config-file /etc/neutron/plugins/ml2/openvswitch_agent.ini
{{- end }} {{- end }}
This requirement is OVS specific, the `ovsdb_connection` string is defined This requirement is OVS specific, the `ovsdb_connection` string is defined
@ -176,7 +173,7 @@ All dependencies described in neutron-dhcp-agent are valid here.
If the SDN implements its own version of L3 networking, neutron-l3-agent If the SDN implements its own version of L3 networking, neutron-l3-agent
should not be started. should not be started.
neutron-metadata-agent service is scheduled to run on nodes with the label neutron-l3-agent service is scheduled to run on nodes with the label
`openstack-control-plane=enabled`. `openstack-control-plane=enabled`.
neutron-metadata-agent neutron-metadata-agent
@ -199,9 +196,10 @@ a new configuration option is added:
.. code-block:: yaml .. code-block:: yaml
network: network:
# the networking backend that can be used: # provide what type of network wiring will be used
# ovs, linuxbridge, calico, odl, ovn # possible options: openvswitch, linuxbridge, sriov
backend: ovs backend:
- openvswitch
This option will allow to configure the Neutron services in proper way, by This option will allow to configure the Neutron services in proper way, by
checking what is the actual backed set in :code:`neutron/values.yaml`. checking what is the actual backed set in :code:`neutron/values.yaml`.
@ -220,19 +218,23 @@ Kubernetes resources should be deployed:
daemonset_lb_agent: false daemonset_lb_agent: false
daemonset_metadata_agent: true daemonset_metadata_agent: true
daemonset_ovs_agent: true daemonset_ovs_agent: true
daemonset_sriov_agent: true
deployment_server: true deployment_server: true
ingress_server: true ingress_server: true
job_bootstrap: true job_bootstrap: true
job_db_init: true job_db_init: true
job_db_sync: true job_db_sync: true
job_db_drop: false job_db_drop: false
job_image_repo_sync: true
job_ks_endpoints: true job_ks_endpoints: true
job_ks_service: true job_ks_service: true
job_ks_user: true job_ks_user: true
job_rabbit_init: true
pdb_server: true pdb_server: true
pod_rally_test: true pod_rally_test: true
secret_db: true secret_db: true
secret_keystone: true secret_keystone: true
secret_rabbitmq: true
service_ingress_server: true service_ingress_server: true
service_server: true service_server: true
@ -274,7 +276,7 @@ it may be used with other technologies that are leveraging the OVS technology,
such as OVN or ODL. such as OVN or ODL.
Configuration of OVS is done via configuration scripts Configuration of OVS is done via configuration scripts
`neutron/templates/bin/_openvswitch-vswitchd.sh.tpl`. The script is configuring `openvswitch/templates/bin/_openvswitch-vswitchd.sh.tpl`. The script is configuring
the external network bridge and sets up any bridge mappings defined in the external network bridge and sets up any bridge mappings defined in
:code:`network.auto_bridge_add`. :code:`network.auto_bridge_add`.
@ -283,11 +285,12 @@ than the default loopback mechanism.
.. code-block:: bash .. code-block:: bash
exec /usr/sbin/ovs-vswitchd unix:/run/openvswitch/db.sock \ exec /usr/sbin/ovs-vswitchd unix:${OVS_SOCKET} \
-vconsole:emer \ -vconsole:emer \
-vconsole:err \ -vconsole:err \
-vconsole:info \ -vconsole:info \
--mlockall --pidfile=${OVS_PID} \
--mlockall
Linuxbridge Linuxbridge
~~~~~~~~~~~ ~~~~~~~~~~~
@ -300,7 +303,7 @@ network virtualization technology) at the same time.
neutron-lb-agent neutron-lb-agent
++++++++++++++++ ++++++++++++++++
This daemonset includes the linuxbridge Neutron agent with bridge-utilis and This daemonset includes the linuxbridge Neutron agent with bridge-utils and
ebtables utilities installed. This is all that is needed, since linuxbridge ebtables utilities installed. This is all that is needed, since linuxbridge
uses native kernel libraries. uses native kernel libraries.
@ -319,24 +322,29 @@ and use this `neutron/values.yaml` override:
network: network:
backend: linuxbridge backend: linuxbridge
dependencies: dependencies:
dhcp: dynamic:
pod: targeted:
- requireSameNode: true linuxbridge:
labels: dhcp:
application: neutron pod:
component: neutron-lb-agent - requireSameNode: true
metadata: labels:
pod: application: neutron
- requireSameNode: true component: neutron-lb-agent
labels: l3:
application: neutron pod:
component: neutron-lb-agent - requireSameNode: true
l3: labels:
pod: application: neutron
- requireSameNode: true component: neutron-lb-agent
labels: metadata:
application: neutron pod:
component: neutron-lb-agent - requireSameNode: true
labels:
application: neutron
component: neutron-lb-agent
lb_agent:
pod: null
conf: conf:
neutron: neutron:
DEFAULT DEFAULT