README.rst updates per yaml config changes
This commit is contained in:
116
README.rst
116
README.rst
@@ -20,88 +20,76 @@ The core aim of this project is to allow fine grained (but extendable)
|
||||
configuration of the networking parameters for a network host. The
|
||||
project consists of:
|
||||
|
||||
* A python library which provides configuration via an object model.
|
||||
|
||||
* A CLI (os-net-config) which provides configuration via a JSON file format.
|
||||
By default os-net-config uses a JSON config file located at
|
||||
/etc/os-net-config/config.json. This can be customized via the
|
||||
* A CLI (os-net-config) which provides configuration via a YAML or JSON
|
||||
file formats. By default os-net-config uses a YAML config file located
|
||||
at /etc/os-net-config/config.yaml. This can be customized via the
|
||||
--config-file CLI option.
|
||||
|
||||
JSON Config Examples
|
||||
* A python library which provides configuration via an object model.
|
||||
|
||||
YAML Config Examples
|
||||
--------------------
|
||||
* Configure an OVS bridge with a single attached interface (port)
|
||||
|
||||
.. code-block:: json
|
||||
.. code-block:: yaml
|
||||
|
||||
{ "network_config": [
|
||||
{
|
||||
"type": "ovs_bridge",
|
||||
"name": "br-ctlplane",
|
||||
"use_dhcp": "true",
|
||||
"members": [
|
||||
{
|
||||
"type": "interface",
|
||||
"name": "em1"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
network_config:
|
||||
-
|
||||
type: ovs_bridge
|
||||
name: br-ctlplane
|
||||
use_dhcp: true
|
||||
ovs_extra:
|
||||
- br-set-external-id br-ctlplane bridge-id br-ctlplane
|
||||
members:
|
||||
-
|
||||
type: interface
|
||||
name: em1
|
||||
|
||||
..
|
||||
|
||||
|
||||
* Configure an OVS bridge on top of an OVS bond
|
||||
|
||||
.. code-block:: json
|
||||
.. code-block:: yaml
|
||||
|
||||
{ "network_config": [
|
||||
{
|
||||
"type": "ovs_bridge",
|
||||
"name": "br-ctlplane",
|
||||
"use_dhcp": "true",
|
||||
"members": [
|
||||
{
|
||||
"type": "ovs_bond",
|
||||
"name": "bond1",
|
||||
"use_dhcp": "true",
|
||||
"members": [
|
||||
{ "type": "interface", "name": "em1" },
|
||||
{ "type": "interface", "name": "em2" }
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
network_config:
|
||||
-
|
||||
type: ovs_bridge
|
||||
name: br-ctlplane
|
||||
use_dhcp: true
|
||||
members:
|
||||
-
|
||||
type: ovs_bond
|
||||
name: bond1
|
||||
members:
|
||||
-
|
||||
type: interface
|
||||
name: em1
|
||||
-
|
||||
type: interface
|
||||
name: em2
|
||||
|
||||
..
|
||||
|
||||
* Configure a tagged VLAN interface on top of an OVS bridge
|
||||
|
||||
.. code-block:: json
|
||||
.. code-block:: yaml
|
||||
|
||||
{ "network_config": [
|
||||
{
|
||||
"type": "ovs_bridge",
|
||||
"name": "br-ctlplane",
|
||||
"members": [
|
||||
{
|
||||
"type": "vlan",
|
||||
"device": "em1",
|
||||
"vlan_id": "16",
|
||||
"addresses": [{
|
||||
"ip_netmask": "192.0.2.1/24"
|
||||
}],
|
||||
"routes": [{
|
||||
"next_hop": "192.0.2.1",
|
||||
"ip_netmask": "192.0.2.1/24"
|
||||
}]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
network_config:
|
||||
-
|
||||
type: ovs_bridge
|
||||
name: br-ctlplane
|
||||
use_dhcp: true
|
||||
members:
|
||||
-
|
||||
type: interface
|
||||
name: em1
|
||||
-
|
||||
type: vlan
|
||||
vlan_id: 16
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: 192.0.2.1/24
|
||||
|
||||
..
|
||||
|
||||
@@ -116,7 +104,7 @@ host system. By default 3 providers are implemented:
|
||||
* ENI: persistent network config format stored in /etc/network/interfaces
|
||||
|
||||
* iproute2: non-persistent provider which implements the config using
|
||||
iproute2, vconfig, etc...
|
||||
iproute2, vconfig, etc... (implementation in progress)
|
||||
|
||||
When using bin/os-net-config the provider is automatically selected based on
|
||||
the host systems perferred persistent network type (ifcfg or ENI). This can
|
||||
|
||||
Reference in New Issue
Block a user