Last active
August 29, 2015 14:24
-
-
Save michalskalski/36f2c21d52d28f7bf107 to your computer and use it in GitHub Desktop.
odl mdsal cluster
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
odl-cluster-data { | |
bounded-mailbox { | |
mailbox-type = "org.opendaylight.controller.cluster.common.actor.MeteredBoundedMailbox" | |
mailbox-capacity = 1000 | |
mailbox-push-timeout-time = 100ms | |
} | |
metric-capture-enabled = true | |
akka { | |
loglevel = "INFO" | |
loggers = ["akka.event.slf4j.Slf4jLogger"] | |
actor { | |
provider = "akka.cluster.ClusterActorRefProvider" | |
serializers { | |
java = "akka.serialization.JavaSerializer" | |
proto = "akka.remote.serialization.ProtobufSerializer" | |
readylocal = "org.opendaylight.controller.cluster.datastore.messages.ReadyLocalTransactionSerializer" | |
} | |
serialization-bindings { | |
"com.google.protobuf.Message" = proto | |
"org.opendaylight.controller.cluster.datastore.messages.ReadyLocalTransaction" = readylocal | |
} | |
default-dispatcher { | |
# Setting throughput to 1 makes the dispatcher fair. It processes 1 message from | |
# the mailbox before moving on to the next mailbox | |
throughput = 1 | |
} | |
default-mailbox { | |
# When not using a BalancingDispatcher it is recommended that we use the SingleConsumerOnlyUnboundedMailbox | |
# as it is the most efficient for multiple producer/single consumer use cases | |
mailbox-type="akka.dispatch.SingleConsumerOnlyUnboundedMailbox" | |
} | |
} | |
remote { | |
log-remote-lifecycle-events = off | |
netty.tcp { | |
hostname = "192.168.0.6" | |
port = 2550 | |
maximum-frame-size = 419430400 | |
send-buffer-size = 52428800 | |
receive-buffer-size = 52428800 | |
} | |
} | |
cluster { | |
seed-nodes = ["akka.tcp://opendaylight-cluster-data@192.168.0.6:2550","akka.tcp://opendaylight-cluster-data@192.168.0.7:2550","akka.tcp://opendaylight-cluster-data@192.168.0.8:2550"] | |
auto-down-unreachable-after = 300s | |
roles = [ | |
"node-33" | |
] | |
} | |
persistence { | |
# By default the snapshots/journal directories live in KARAF_HOME. You can choose to put it somewhere else by | |
# modifying the following two properties. The directory location specified may be a relative or absolute path. | |
# The relative path is always relative to KARAF_HOME. | |
# snapshot-store.local.dir = "target/snapshots" | |
# journal.leveldb.dir = "target/journal" | |
} | |
} | |
} | |
odl-cluster-rpc { | |
bounded-mailbox { | |
mailbox-type = "org.opendaylight.controller.cluster.common.actor.MeteredBoundedMailbox" | |
mailbox-capacity = 1000 | |
mailbox-push-timeout-time = 100ms | |
} | |
metric-capture-enabled = true | |
akka { | |
loglevel = "INFO" | |
loggers = ["akka.event.slf4j.Slf4jLogger"] | |
actor { | |
provider = "akka.cluster.ClusterActorRefProvider" | |
} | |
remote { | |
log-remote-lifecycle-events = off | |
netty.tcp { | |
hostname = "192.168.0.6" | |
port = 2551 | |
maximum-frame-size = 419430400 | |
send-buffer-size = 52428800 | |
receive-buffer-size = 52428800 | |
} | |
} | |
cluster { | |
seed-nodes = ["akka.tcp://odl-cluster-rpc@192.168.0.6:2551","akka.tcp://odl-cluster-rpc@192.168.0.7:2551","akka.tcp://odl-cluster-rpc@192.168.0.8:2551"] | |
auto-down-unreachable-after = 300s | |
} | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Extra packages to import from the boot class loader | |
org.osgi.framework.system.packages.extra=org.apache.karaf.branding,sun.reflect,sun.reflect.misc,sun.misc,sun.nio.ch | |
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=325578 | |
# Extend the framework to avoid the resources to be presented with | |
# a URL of type bundleresource: but to be presented as file: | |
osgi.hook.configurators.include=org.eclipse.virgo.kernel.equinox.extensions.hooks.ExtensionsHookConfigurator | |
# Embedded Tomcat configuration File | |
org.eclipse.gemini.web.tomcat.config.path=configuration/tomcat-server.xml | |
org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true | |
# Use Equinox as default OSGi Framework Implementation | |
karaf.framework=equinox | |
# Netconf startup configuration | |
netconf.tcp.address=127.0.0.1 | |
netconf.tcp.port=8383 | |
netconf.tcp.client.address=127.0.0.1 | |
netconf.tcp.client.port=8383 | |
netconf.ssh.address=0.0.0.0 | |
netconf.ssh.port=1830 | |
# Use Linux style path | |
netconf.ssh.pk.path = ./configuration/RSA.pk | |
# Set security provider to BouncyCastle | |
org.apache.karaf.security.providers = org.bouncycastle.jce.provider.BouncyCastleProvider | |
netconf.config.persister.active=1 | |
netconf.config.persister.1.storageAdapterClass=org.opendaylight.controller.config.persist.storage.file.xml.XmlFileStorageAdapter | |
netconf.config.persister.1.properties.fileStorage=etc/opendaylight/current/controller.currentconfig.xml | |
netconf.config.persister.1.properties.numberOfBackups=1 | |
# logback configuration | |
logback.configurationFile=configuration/logback.xml | |
# Container configuration | |
container.profile = Container | |
# Connection manager configuration | |
connection.scheme = ANY_CONTROLLER_ONE_MASTER | |
# Open Flow related system parameters | |
# TCP port on which the controller is listening (default 6633) | |
of.listenPort=6653 | |
# IP address of the controller (default: wild card) | |
of.address = 192.168.0.6 | |
# The time (in milliseconds) the controller will wait for a response after sending a Barrier Request or a Statistic Request message (default 2000 msec) | |
# of.messageResponseTimer=2000 | |
# The switch liveness timeout value (default 60500 msec) | |
# of.switchLivenessTimeout=60500 | |
# The size of the queue holding pending statistics requests (default 64). For large networks of n switches, it is recommended to set the queue size to n | |
# of.statsQueueSize = 64 | |
# The flow statistics polling interval in second (default 10 sec) | |
# of.flowStatsPollInterval=10 | |
# The port statistics polling interval in second (default 5 sec) | |
# of.portStatsPollInterval=5 | |
# The description statistics polling interval in second (default 60 sec) | |
# of.descStatsPollInterval=60 | |
# The table statistics polling interval in second (default 10 sec) | |
# of.tableStatsPollInterval=10 | |
# The maximum number of asynchronous messages can be sent before sending a Barrier Request (default 100) | |
# of.barrierMessagePriorCount=100 | |
# The interval which determines how often the discovery packets should be sent (default 300 sec) | |
# of.discoveryInterval=300 | |
# The timeout multiple of discovery interval | |
# of.discoveryTimeoutMultiple=2 | |
# For newly added ports, allow one more retry if the elapsed time exceeds this threshold (default 30 sec) | |
# of.discoveryThreshold=30 | |
# The maximum number of ports handled in one discovery batch (default 512) | |
# of.discoveryBatchMaxPorts=512 | |
# OVSDB configuration | |
# ovsdb plugin supports both active and passive connections. It listens on port 6640 by default for Active connections. | |
ovsdb.listenPort=6640 | |
# ovsdb creates Openflow nodes/bridges. This configuration configures the bridge's Openflow version. | |
# default Openflow version = 1.0, we also support 1.3. | |
ovsdb.of.version=1.3 | |
# ovsdb can be configured with ml2 to perform l3 forwarding. The config below enables that functionality, which is | |
# disabled by default. | |
# ovsdb.l3.fwd.enabled=yes | |
# ovsdb can be configured with ml2 to perform l3 forwarding. When used in that scenario, the mac address of the default | |
# gateway --on the external subnet-- is expected to be resolved from its inet address. The config below overrides that | |
# specific arp/neighDiscovery lookup. | |
# ovsdb.l3gateway.mac=00:00:5E:00:02:01 | |
# TLS configuration | |
# To enable TLS, set secureChannelEnabled=true and specify the location of controller Java KeyStore and TrustStore files. | |
# The Java KeyStore contains controller's private key and certificate. The Java TrustStore contains the trusted certificate | |
# entries, including switches' Certification Authority (CA) certificates. For example, | |
# secureChannelEnabled=true | |
# controllerKeyStore=./configuration/ctlKeyStore | |
# controllerKeyStorePassword=xxxxxxxx (this password should match the password used for KeyStore generation and at least 6 characters) | |
# controllerTrustStore=./configuration/ctlTrustStore | |
# controllerTrustStorePassword=xxxxxxxx (this password should match the password used for TrustStore generation and at least 6 characters) | |
secureChannelEnabled=false | |
controllerKeyStore= | |
controllerKeyStorePassword= | |
controllerTrustStore= | |
controllerTrustStorePassword= | |
# User Manager configurations | |
enableStrongPasswordCheck = false | |
#Jolokia configurations | |
#org.jolokia.listenForHttpService=false | |
# Logging configuration for Tomcat-JUL logging | |
java.util.logging.config.file=configuration/tomcat-logging.properties | |
#Hosttracker hostsdb key scheme setting | |
hosttracker.keyscheme=IP | |
# LISP Flow Mapping configuration | |
# Map-Register messages overwrite existing RLOC sets in EID-to-RLOC mappings (default: true) | |
lisp.mappingOverwrite = true | |
# Enable the Solicit-Map-Request (SMR) mechanism (default: true) | |
lisp.smr = true | |
# Choose policy for Explicit Locator Path (ELP) handling | |
# There are three options: | |
# default: don't add or remove locator records, return mapping as-is | |
# both: keep the ELP, but add the next hop as a standalone non-LCAF locator with a lower priority | |
# replace: remove the ELP, add the next hop as a standalone non-LCAF locator | |
lisp.elpPolicy = default |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
+------------------+ | |
+----------------------+ VIP: 192.168.0.2 +----------------------+ | |
| +---------+--------+ | | |
| | | | |
| | | | |
| | | | |
+-----------------+ +--------+--------+ +-----------------+ | |
|HAPROXY | |HAPROXY | |HAPROXY | | |
|VIP:6640 | |VIP:6640 | |VIP:6640 | | |
| | | | | | | |
|ODL1, ODL2, ODL3 | |ODL1, ODL2, ODL3 | |ODL1, ODL2, ODL3 | | |
+------------------------------+ +------------------------------+ +-----------------------------+ | |
| | | | | | | | | | |
|ODL 1 | +----------------+ |ODL 2 | +----------------+ |ODL 3 | +----------------+ | |
|192.168.0.6:6640 | | OVS + | |192.168.0.7:6640 | | OVS + | |192.168.0.8:6640 | | OVS + | | |
| | |manager VIP:6640| | | |manager VIP:6640| | | |manager VIP:6640| | |
|192.168.0.6:6653 | |controller ODL X| |192.168.0.7:6653 | |controller ODL X| |192.168.0.8:6653 | |controller ODL X| | |
| | +---------+------+ | | +---------+------+ | | +--------+-------+ | |
| | | | | | | | | | |
+-----------------+ | +-----------------+ | +-----------------+ | | |
| | | | | | | |
| | | | | | | |
|OpenStack Controller | |OpenStack Controller | |OpenStack Controller | | |
| | | | | | | |
| | | | | | | |
+------------------------------+ +------------------------------+ +-----------------------------+ | |
+----+-----------------+ +-----+----------------+ | |
| | OVS | | | OVS | | |
| |manager VIP:6640 | | |manager VIP:6640| | |
| |controller ODL X | | |controller ODL X| | |
| +-----------------+ | +----------------+ | |
| | | | | |
| | | | | |
|OpenStack Compute | |OpenStack Compute | | |
+----------------------+ +----------------------+ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
listen odl-ovsdb-manager | |
bind 192.168.0.2:6640 | |
balance source | |
mode tcp | |
server node-33 192.168.0.6:6640 check inter 5000 rise 2 fall 3 | |
server node-34 192.168.0.7:6640 check inter 5000 rise 2 fall 3 | |
server node-35 192.168.0.8:6640 check inter 5000 rise 2 fall 3 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module-shards = [ | |
{ | |
name = "default" | |
shards = [ | |
{ | |
name="default" | |
replicas = [ "node-33","node-34","node-35"] | |
} | |
] | |
}, | |
{ | |
name = "topology" | |
shards = [ | |
{ | |
name="topology" | |
replicas = [ "node-33","node-34","node-35"] | |
} | |
] | |
}, | |
{ | |
name = "inventory" | |
shards = [ | |
{ | |
name="inventory" | |
replicas = [ "node-33","node-34","node-35"] | |
} | |
] | |
}, | |
{ | |
name = "toaster" | |
shards = [ | |
{ | |
name="toaster" | |
replicas = [ "node-33","node-34","node-35"] | |
} | |
] | |
} | |
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# Comma separated list of features repositories to register by default | |
# | |
featuresRepositories = mvn:org.apache.karaf.features/standard/3.0.3/xml/features,mvn:org.apache.karaf.features/enterprise/3.0.3/xml/features,mvn:org.ops4j.pax.web/pax-web-features/3.1.4/xml/features,mvn:org.apache.karaf.features/spring/3.0.3/xml/features,mvn:org.opendaylight.integration/features-integration-index/0.3.0-Lithium/xml/features | |
# | |
# Comma separated list of features to install at startup | |
# | |
featuresBoot=config,standard,region,package,kar,ssh,management,odl-mdsal-clustering,odl-openflowplugin-flow-services,odl-base-all,odl-restconf,odl-ovsdb-openstack,odl-dlux-core,odl-dlux-node,odl-dlux-yangui,odl-mdsal-apidocs | |
# | |
# Defines if the boot features are started in asynchronous mode (in a dedicated thread) | |
# | |
featuresBootAsynchronous=false |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment