将 3 个以上的 OpenDaylight 控制器连接到 mininet 拓扑

Connect 3+ OpenDaylight controllers to mininet topology

我想问一下 我已经根据这个创建了一个集群 https://docs.opendaylight.org/en/stable-magnesium/getting-started-guide/clustering.html

我想验证它是否正常工作,有人可以帮我怎么做吗?

它还能将这个集群或那 3 个控制器连接到一个 mininet 拓扑吗?还是做不到?

编辑 我想问为什么 Not all bundle are active? 会有什么问题吗?

我不确定你是否可以在 mininet 命令上指定多个控制器 线,但值得一试。否则你可以像这个人解释的那样尝试 在此 post 在 mininet .py 配置文件中设置控制器。

要验证集群是否正常工作,有很多方法,但您可以尝试一些 休息电话检查事物的状态。我们在上游有一些例子 CSIT 测试。如果你安装了 odl-jolokia 功能,你可以发送一个 GET 到:

jolokia/read/org.opendaylight.controller:Category=Shards,name=member-1-shard-default-config,type=DistributedConfigDatastore

正在检查配置数据存储的默认分片状态。你会得到 一些输出是这样的:

content={
 "request": {
  "mbean": "org.opendaylight.controller:Category=Shards,name=member-1-shard-default-config,type=DistributedConfigDatastore",
  "type": "read"
 },
 "status": 200,
 "timestamp": 1588524930,
 "value": {
  "AbortTransactionsCount": 0,
  "CommitIndex": 70,
  "CommittedTransactionsCount": 0,
  "CurrentTerm": 7,
  "FailedReadTransactionsCount": 0,
  "FailedTransactionsCount": 0,
  "FollowerInfo": [],
  "FollowerInitialSyncStatus": true,
  "InMemoryJournalDataSize": 33,
  "InMemoryJournalLogSize": 1,
  "LastApplied": 70,
  "LastCommittedTransactionTime": "1970-01-01 00:00:00.000",
  "LastIndex": 70,
  "LastLeadershipChangeTime": "2020-05-03 16:54:45.034",
  "LastLogIndex": 70,
  "LastLogTerm": 7,
  "LastTerm": 7,
  "Leader": "member-2-shard-default-config",
  "LeadershipChangeCount": 1,
  "PeerAddresses": "member-3-shard-default-config: akka.tcp://opendaylight-cluster-data@10.30.170.119:2550/user/shardmanager-config/member-3-shard-default-config, member-2-shard-default-config: akka.tcp://opendaylight-cluster-data@10.30.170.113:2550/user/shardmanager-config/member-2-shard-default-config",
  "PeerVotingStates": "member-3-shard-default-config: true, member-2-shard-default-config: true",
  "PendingTxCommitQueueSize": 0,
  "RaftState": "Follower",
  "ReadOnlyTransactionCount": 0,
  "ReadWriteTransactionCount": 0,
  "ReplicatedToAllIndex": 69,
  "ShardName": "member-1-shard-default-config",
  "SnapshotCaptureInitiated": false,
  "SnapshotIndex": 69,
  "SnapshotTerm": 7,
  "StatRetrievalError": null,
  "StatRetrievalTime": "557.3 \u03bcs",
  "TxCohortCacheSize": 0,
  "VotedFor": "member-2-shard-default-config",
  "Voting": true
 }
}

那里有很多信息,但是 raftstate 说 Follower,所以你知道这个节点 是两个追随者之一。一个节点将成为领导者。

我们检查的另一件事是同步状态,以确保它是 "true"。用这个 网址:

    jolokia/read/org.opendaylight.controller:Category=ShardManager,name=shard-manager-operational,type=DistributedOperationalDatastore

example output