Module openvswitch — Inmanta 2017.3dev documentation

# Module openvswitch

> - License: Apache 2.0
> - Version: 0.4
> - Author: Inmanta <code@inmanta.com>
> - Upstream project: https://github.com/inmanta/openvswitch.git

## Entities

entity `openvswitch::Bond`

  Parents: `openvswitch::OVSPort`

  attribute string `lacp_time`='fast'
  attribute string `interfaces`
  attribute bool `lacp`=True
  attribute string `bond_mode`='balance-tcp'
  attribute number `mtu`
  attribute string `trunks`

  The following implements statements select implementations for this entity:

  > - `std::none`

entity `openvswitch::Bridge`

  Parents: `std::Entity`

  A network bridge

  attribute string `name`
  relation openvswitch::Bridge `patch_from` [0:*]

    other end: `openvswitch::Bridge.patch_to [0:*]`

  relation openvswitch::Bridge `patch_to` [0:*]

    other end: `openvswitch::Bridge.patch_from [0:*]`

  relation std::Host `host` [1]

    other end: `std::Host.bridges [0:*]`

  relation openvswitch::OVSPort `ports` [0:*]

    other end: `openvswitch::OVSPort.bridge [1]`

  The following implementations are defined for this entity:

  > - `openvswitch::bridgeUCA`
  > - `openvswitch::bridgeRDO`

  The following implements statements select implementations for this entity:

  > - `openvswitch::bridgeUCA` constraint `std::familyof(host.os,'ubuntu')`
  > - `openvswitch::bridgeRDO` constraint `((std::familyof(host.os,'rhel') and (host.os.version >= 7)) or std::familyof(host.os,'fedora'))`

entity `openvswitch::Interface`

  Parents: `openvswitch::OVSPort`

  attribute number `mtu`
  attribute number `tag`
  attribute ip::ip `netmask`
  attribute ip::ip `ip_address`

  The following implements statements select implementations for this entity:

  > - `std::none`

entity `openvswitch::OVSCommon`

  Parents: `std::Entity`

  Installation and configuration of openvswitch (without adding any switches)

  attribute string `sdn_controller`=''
  relation ip::Host `host` [1]

    other end: `ip::Host.ovs_common [0:1]`

  The following implementations are defined for this entity:

  > - `openvswitch::ovsCommonUCA`
  > - `openvswitch::ovsCommonRDO`
  > - `openvswitch::ovsSDN`

  The following implements statements select implementations for this entity:

  > - `openvswitch::ovsCommonUCA` constraint `std::familyof(host.os,'ubuntu')`
  > - `openvswitch::ovsCommonRDO` constraint `((std::familyof(host.os,'rhel') and (host.os.version >= 7)) or std::familyof(host.os,'fedora'))`
  > - `openvswitch::ovsSDN` constraint `(sdn_controller != '')`

entity `openvswitch::OVSPort`

  Parents: `std::Entity`

  attribute string `name`
  relation openvswitch::Bridge `bridge` [1]

    other end: `openvswitch::Bridge.ports [0:*]`

## Implementations

implementation `openvswitch::bridgeRDO`

implementation `openvswitch::bridgeUCA`

implementation `openvswitch::ovsCommonRDO`

implementation `openvswitch::ovsCommonUCA`

implementation `openvswitch::ovsSDN`