aboutsummaryrefslogtreecommitdiffstats
path: root/README.rst
diff options
context:
space:
mode:
authorDan Prince <dprince@redhat.com>2014-08-26 13:40:18 -0400
committerDan Prince <dprince@redhat.com>2014-08-26 13:42:51 -0400
commitcfda711898a35b06e870e54b93bf37bad1a24746 (patch)
tree03a8860614949e4bf23ee4308e2cc6999ef0baee /README.rst
parent82bfaf3f7b4c7bb000da70b0a6e9cd847eca4a4d (diff)
README.rst updates per yaml config changes
Diffstat (limited to 'README.rst')
-rw-r--r--README.rst122
1 files changed, 55 insertions, 67 deletions
diff --git a/README.rst b/README.rst
index 968f54d..0524d13 100644
--- a/README.rst
+++ b/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
-
- { "network_config": [
- {
- "type": "ovs_bridge",
- "name": "br-ctlplane",
- "use_dhcp": "true",
- "members": [
- {
- "type": "interface",
- "name": "em1"
- }
- ]
- }
- ]
- }
+.. code-block:: yaml
+
+ 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
-
- { "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" }
- ]
- }
- ]
- }
- ]
- }
+.. code-block:: yaml
+
+ 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
-
- { "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"
- }]
- }
- ]
- }
- ]
- }
+.. code-block:: yaml
+
+ 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