基础分布式锁
通过zookeeper的分布式锁来实现一个交换机只会被一个控制器所控制,参考康奈尔大学的一个项目
**问题:**没有连接交换机的时候,控制器就会有交换机的提示,显示连接了三个交换机,且地址是本地(127.0.0.1)
经过验证,自带的ryu-manager --verbose
也出现这个问题,发现是Mininet进程在后台运行(即使是电脑重启它也会跟随系统启动)。
**解决:**用sudo mn -c
命令即可将后台的Mininet进程clean and exit
在服务器上开启zookeeper服务器
实验阶段用常开的台式机中的Ubuntu虚拟机部署standalone
模式下的服务器:(zookeeper安装教程不再赘述)
zkServer.sh start-foreground ./conf/zoo.cfg
start-foreground
是将启动日志在屏幕上打出来,在./conf/zoo.cfg
(下载安装zookeeper的文件夹下的配置文件)中将最重要的dataDir
、clientPort
设置好(如果要用quorum模式,则需要在最下面添加server地址和端口)
*注意:*如果出现地址端口已经被占用问题可以用一下命令修改
sudo netstat -ap | grep 2181
此命令检查出正在使用2181端口的进程,进而终止
sudo kill -9 PID_num