Skip to content

Unknown SDN controller type #594

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
FahadMaqbool opened this issue May 18, 2018 · 17 comments
Closed

Unknown SDN controller type #594

FahadMaqbool opened this issue May 18, 2018 · 17 comments

Comments

@FahadMaqbool
Copy link

ERROR - UpdateSwitchState:136 - Unknown SDN controller type

I understand this error message, but i am running the export commands to provide this information as:

bitsym@faucetall-fahad:/$ cd poseidon/
bitsym@faucetall-fahad:/poseidon$ export controller_type=faucet
bitsym@faucetall-fahad:/poseidon$ export collector_nic=ens4
bitsym@faucetall-fahad:/poseidon$ export controller_mirror_ports=’{“allied-telesis”:3}’
bitsym@faucetall-fahad:/poseidon$ export max_concurrent_reinvestigations=1
bitsym@faucetall-fahad:/poseidon$ ./helpers/run

but still getting the error in the log file.

2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Handle_FullConfig configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: 2018-05-18 04:13:39,365 - INFO - Monitor_Helper_Base:55 - Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Update_Switch_State configure()
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: 2018-05-18 04:13:39,365 - ERROR - UpdateSwitchState:136 - Unknown SDN controller type
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: Traceback (most recent call last):
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: File "/tmp/poseidonWork/poseidon/poseidonMonitor/poseidonMonitor.py", line 820, in
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: main(skip_rabbit=False)
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: File "/tmp/poseidonWork/poseidon/poseidonMonitor/poseidonMonitor.py", line 716, in main
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: pmain = Monitor(skip_rabbit=skip_rabbit)
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: File "/tmp/poseidonWork/poseidon/poseidonMonitor/poseidonMonitor.py", line 343, in init
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: self.mod_configuration['max_concurrent_reinvestigations'])
2018-05-18T09:13:39+00:00 172.17.0.1 plugin[1062]: ValueError: invalid literal for int() with base 10: ''
iv_timer_register: called with timer still on the heap
[2018-05-18T04:13:43.740590] WARNING: Configuration file format is too old, syslog-ng is running in compatibility mode Please update it to use the syslog-ng 3.9 format at your time of convenience, compatibility mode can operate less efficiently in some cases. To upgrade the configuration, please review the warnings about incompatible changes printed by syslog-ng, and once completed change the @Version header at the top of the configuration file.;

@cglewis
Copy link
Member

cglewis commented May 18, 2018

It looks like it's not picking up your environment variables for some reason, can you do env and see if the variables show up correctly?

@FahadMaqbool
Copy link
Author

All variables are correct in env, As I am running poseidon and faucet on the same host I did not exported the URL, USER and PASS as suggested.
okay. As i configured the network through vent I want to ask is there is a way to start the things i.e container and Poseidon again? after exporting environment variables?
what would you suggest me to do.
I have installed it from scratch again and exported all variables expect URL, USER and PASS as both poseidon and faucet are on same host. now I am getting the error as follows.

2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:24,432 - DEBUG - poseidonMonitor:400 - Monitor:config:{'config': 'True', 'logging_file': 'logging.json', 'logger_level': 'INFO', 'reinvestigation_frequency': '900', 'max_concurrent_reinvestigations': '1', 'scan_frequency': '5', 'rabbit_server': 'RABBIT_SERVER', 'rabbit_port': '5672', 'collector_nic': 'ens8', 'collector_interval': '900', 'vent_ip': 'vent_ip', 'vent_port': '8080', 'FA_RABBIT_ENABLED': '', 'FA_RABBIT_HOST': '', 'FA_RABBIT_PORT': '', 'FA_RABBIT_EXCHANGE': '', 'FA_RABBIT_EXCHANGE_TYPE': 'topic', 'FA_RABBIT_ROUTING_KEY': ''}
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:24,432 - INFO - Config:61 - Config:configure
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:24,432 - INFO - Monitor_Helper_Base:55 - Handle_SectionConfig configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Handle_SectionConfig configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:24,432 - INFO - Monitor_Helper_Base:55 - Handle_FieldConfig configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Handle_FieldConfig configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:24,433 - INFO - Monitor_Helper_Base:55 - Handle_FullConfig configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Handle_FullConfig configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:24,434 - INFO - Monitor_Helper_Base:55 - Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: Update_Switch_State configure()
2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:24,435 - ERROR - UpdateSwitchState:132 - FaucetProxy could not connect to because unexpected EOF while parsing (, line 0)
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,453 - ERROR - UpdateSwitchState:228 - Could not establish connection to because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,454 - INFO - EndpointWrapper:140 - ====START
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,456 - INFO - EndpointWrapper:103 - KNOWN**
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,457 - INFO - EndpointWrapper:135 - None
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,457 - INFO - EndpointWrapper:103 - UNKNOWN**
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,458 - INFO - EndpointWrapper:135 - None
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,462 - INFO - EndpointWrapper:103 - MIRRORING**
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,462 - INFO - EndpointWrapper:135 - None
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,462 - INFO - EndpointWrapper:103 - SHUTDOWN**
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,462 - INFO - EndpointWrapper:135 - None
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,462 - INFO - EndpointWrapper:103 - REINVESTIGATING**
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,462 - INFO - EndpointWrapper:135 - None
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,462 - INFO - EndpointWrapper:144 - ****************
2018-05-24T11:09:29+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:29,462 - INFO - EndpointWrapper:145 - ====STOP
2018-05-24T11:09:34+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:34,505 - ERROR - UpdateSwitchState:228 - Could not establish connection to because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-24T11:09:39+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:39,527 - ERROR - UpdateSwitchState:228 - Could not establish connection to because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-24T11:09:44+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:44,550 - ERROR - UpdateSwitchState:228 - Could not establish connection to because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-24T11:09:49+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:49,574 - ERROR - UpdateSwitchState:228 - Could not establish connection to because 'NoneType' object has no attribute 'get_endpoints'.

I think it is because of uri? Do I need to export it as well?

For making any change what steps should I follow? to make it up and running?

@cglewis
Copy link
Member

cglewis commented May 24, 2018

Looks like that's an unexpected bug:

2018-05-24T11:09:24+00:00 172.17.0.1 plugin[21167]: 2018-05-24 06:09:24,435 - ERROR - UpdateSwitchState:132 - FaucetProxy could not connect to because unexpected EOF while parsing (, line 0)

That means the local file is not working is trying to connect remotely, except it's not specified. I'll open a new issue for that. In the meantime you should be able to get around that by exporting the vars for URL, USER and PASS even though they are just for the local host. I think I've only been testing remotely, so that's a good catch.

Let me know if adding those 3 vars fixes the issue.

For making changes, you should be able to just remove the containers and run ./helpers/run again.

@FahadMaqbool
Copy link
Author

FahadMaqbool commented May 25, 2018

After exporting the vars for URL, USER and PAS, still getting the same error.
Can you also provide an insight of the error:

Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.

Moreover, the log file is as follows:

2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:37,949 - DEBUG - poseidonMonitor:400 - Monitor:config:{'config': 'True', 'logging_file': 'logging.json', 'logger_level': 'INFO', 'reinvestigation_frequency': '900', 'max_concurrent_reinvestigations': '1', 'scan_frequency': '5', 'rabbit_server': 'RABBIT_SERVER', 'rabbit_port': '5672', 'collector_nic': 'ens8', 'collector_interval': '900', 'vent_ip': 'vent_ip', 'vent_port': '8080', 'FA_RABBIT_ENABLED': '', 'FA_RABBIT_HOST': '', 'FA_RABBIT_PORT': '', 'FA_RABBIT_EXCHANGE': '', 'FA_RABBIT_EXCHANGE_TYPE': 'topic', 'FA_RABBIT_ROUTING_KEY': ''}
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:37,949 - INFO - Config:61  - Config:configure
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:37,949 - INFO - Monitor_Helper_Base:55  - Handle_SectionConfig configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:37,949 - INFO - Monitor_Helper_Base:55  - Handle_FieldConfig configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:37,949 - INFO - Monitor_Helper_Base:55  - Handle_FullConfig configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:37,949 - INFO - Monitor_Helper_Base:55  - Update_Switch_State configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:37,950 - ERROR - UpdateSwitchState:132 - FaucetProxy could not connect to 192.168.100.205 because unexpected EOF while parsing (<unknown>, line 0)
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Handle_SectionConfig configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Handle_FieldConfig configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Handle_FullConfig configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Update_Switch_State configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Update_Switch_State configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Update_Switch_State configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Update_Switch_State configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Update_Switch_State configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Update_Switch_State configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Update_Switch_State configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Update_Switch_State configure()
2018-05-25T10:57:37+00:00 172.17.0.1 plugin[25613]: Update_Switch_State configure()
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,969 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,970 - INFO - EndpointWrapper:140 - ====START
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,972 - INFO - EndpointWrapper:103 - *******KNOWN*********
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,972 - INFO - EndpointWrapper:135 - None
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,972 - INFO - EndpointWrapper:103 - *******UNKNOWN*********
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,973 - INFO - EndpointWrapper:135 - None
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,973 - INFO - EndpointWrapper:103 - *******MIRRORING*********
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,973 - INFO - EndpointWrapper:135 - None
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,974 - INFO - EndpointWrapper:103 - *******SHUTDOWN*********
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,974 - INFO - EndpointWrapper:135 - None
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,974 - INFO - EndpointWrapper:103 - *******REINVESTIGATING*********
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,975 - INFO - EndpointWrapper:135 - None
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,975 - INFO - EndpointWrapper:144 - ****************
2018-05-25T10:57:42+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:42,975 - INFO - EndpointWrapper:145 - ====STOP
2018-05-25T10:57:48+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:48,266 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:57:53+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:53,281 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:57:58+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:57:58,300 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:58:03+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:58:03,320 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:58:08+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:58:08,333 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:58:13+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:58:13,345 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:58:18+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:58:18,367 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:58:23+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:58:23,390 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:58:28+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:58:28,404 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:58:33+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:58:33,420 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.
2018-05-25T10:58:38+00:00 172.17.0.1 plugin[25613]: 2018-05-25 05:58:38,444 - ERROR - UpdateSwitchState:228 - Could not establish connection to 192.168.100.205 because 'NoneType' object has no attribute 'get_endpoints'.

Moreover, I am adding further details of my setup, may be the error is caused by a problem because of these anything wrong with these configurations.

output of env is as follows:

root@faucetall:/home/bitsym/poseidon# env
LC_PAPER=ur_PK
LC_ADDRESS=ur_PK
max_concurrent_reinvestigations=1
controller_mirror_ports={"allied-telesis":3}
LC_MONETARY=ur_PK
SHELL=/bin/bash
TERM=xterm-256color
LC_NUMERIC=ur_PK
OLDPWD=/home/bitsym
USER=root
LC_TELEPHONE=ur_PK
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
SUDO_USER=bitsym
controller_log_file=/var/log/faucet/faucet.log
SUDO_UID=1000
controller_user=bitsym
controller_pass=xbits
USERNAME=root
controller_config_file=/etc/faucet/faucet.yaml
collector_nic=ens8
MAIL=/var/mail/root
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
LC_IDENTIFICATION=ur_PK
PWD=/home/bitsym/poseidon
LANG=en_US.UTF-8
LC_MEASUREMENT=ur_PK
SHLVL=1
SUDO_COMMAND=/bin/su
HOME=/root
LANGUAGE=en_US:en
controller_type=faucet
LOGNAME=root
LESSOPEN=| /usr/bin/lesspipe %s
SUDO_GID=1000
LESSCLOSE=/usr/bin/lesspipe %s %s
LC_TIME=ur_PK
controller_uri=192.168.100.205
LC_NAME=ur_PK
_=/usr/bin/env

Faucet configurations are as follows:

vlans:
    10:
    20:
dps:
    allied-telesis:
        dp_id: 0x1
        hardware: "Allied-Telesis"
        interfaces:
            1:
                native_vlan: 10
                name: "port1.0.1"
            2:
                native_vlan: 10
                name: "port1.0.2"
            3:  
                native_vlan: 20
                name: "port1.0.6" 

network interfaces of the client are as follows:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto ens3
iface ens3 inet static
   address 192.168.100.205
   netmask 255.255.255.0
   gateway 192.168.100.1
   dns-nameservers 192.168.100.1 8.8.8.8

# The poseidon network interface
auto ens8
iface ens8 inet static
   address 10.0.0.2
   netmask 255.255.255.0
   gateway 10.0.0.1
allow-hotplug ens8
iface ens8 inet manual
pre-up ifconfig $IFACE up
post-down ifconfig $IFACE down

@cglewis
Copy link
Member

cglewis commented May 25, 2018

@FahadMaqbool thanks for the additional details, that is helpful. I'm working on tracking this down for you - will update soon.

@cglewis
Copy link
Member

cglewis commented May 25, 2018

Ok, tracked it down and pushed up a fix. It also fixes #600 so you don't need the URI/USER/PASS anymore either if both FAUCET and Poseidon are running on the same box.

Let me know if that helps.

@FahadMaqbool
Copy link
Author

FahadMaqbool commented May 28, 2018

@cglewis Thanks for the update, but now as I exported the collector_nic = ens8, (as you can see below the results of env command). but in my logs I can see that in the config there is collector_nic': 'enp7s0f0 That is little strange.
Moreover, I have two clients at vlan 10 (kindly review the config in the above comments) As I am pinging from one to another there is no change in my logs. is it because of collector_nic? kindly review my configurations and suggest any solution to gt it up and running.

root@faucetall:/home/bitsym# cd poseidon/
root@faucetall:/home/bitsym/poseidon# export controller_type=faucet
root@faucetall:/home/bitsym/poseidon# export collector_nic=ens8
root@faucetall:/home/bitsym/poseidon# export controller_mirror_ports='{"allied-telesis":3}'
root@faucetall:/home/bitsym/poseidon# export controller_log_file=/var/log/faucet/faucet.log
root@faucetall:/home/bitsym/poseidon# export controller_config_file=/etc/faucet/faucet.yaml
root@faucetall:/home/bitsym/poseidon# export max_concurrent_reinvestigations=1
root@faucetall:/home/bitsym/poseidon# env
LC_PAPER=ur_PK
LC_ADDRESS=ur_PK
max_concurrent_reinvestigations=1
controller_mirror_ports={"allied-telesis":3}
LC_MONETARY=ur_PK
SHELL=/bin/bash
TERM=xterm-256color
LC_NUMERIC=ur_PK
OLDPWD=/home/bitsym
USER=root
LC_TELEPHONE=ur_PK
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
SUDO_USER=bitsym
controller_log_file=/var/log/faucet/faucet.log
SUDO_UID=1000
USERNAME=root
controller_config_file=/etc/faucet/faucet.yaml
collector_nic=ens8
MAIL=/var/mail/root
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
LC_IDENTIFICATION=ur_PK
PWD=/home/bitsym/poseidon
LANG=en_US.UTF-8
LC_MEASUREMENT=ur_PK
SHLVL=1
SUDO_COMMAND=/bin/su
HOME=/root
LANGUAGE=en_US:en
controller_type=faucet
LOGNAME=root
LESSOPEN=| /usr/bin/lesspipe %s
SUDO_GID=1000
LESSCLOSE=/usr/bin/lesspipe %s %s
LC_TIME=ur_PK
LC_NAME=ur_PK
_=/usr/bin/env
root@faucetall:/home/bitsym/poseidon# ./helpers/run
Unable to find image 'cyberreboot/vent:latest' locally
latest: Pulling from cyberreboot/vent
ff3a5c916c92: Pull complete 
1c575e7ac018: Pull complete 
f4cb200ded42: Pull complete 
c7b1d900042c: Pull complete 
Digest: sha256:53f8deafe77a4da666a2b2c206e0fb20fbcd8ba5035daeb047d2066731baf048
Status: Downloaded newer image for cyberreboot/vent:latest
7d81d7997d868f8f32f0c46835a65b173e8bf866c474374eab67e4aee4773cfa
waiting for required containers to build and start (this might take a little while)...done.
2018-05-28T11:29:40+00:00 172.17.0.1 core[1107]: 1:C 28 May 06:29:40.499 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
2018-05-28T11:29:40+00:00 172.17.0.1 core[1107]: 1:C 28 May 06:29:40.500 # Redis version=4.0.9, bits=64, commit=00000000, modified=0, pid=1, just started
2018-05-28T11:29:40+00:00 172.17.0.1 core[1107]: 1:C 28 May 06:29:40.500 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
2018-05-28T11:29:40+00:00 172.17.0.1 core[1107]: 1:M 28 May 06:29:40.537 * Running mode=standalone, port=6379.
2018-05-28T11:29:40+00:00 172.17.0.1 core[1107]: 1:M 28 May 06:29:40.537 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
2018-05-28T11:29:40+00:00 172.17.0.1 core[1107]: 1:M 28 May 06:29:40.537 # Server initialized
2018-05-28T11:29:40+00:00 172.17.0.1 core[1107]: 1:M 28 May 06:29:40.538 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
2018-05-28T11:29:40+00:00 172.17.0.1 core[1107]: 1:M 28 May 06:29:40.539 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
2018-05-28T11:29:40+00:00 172.17.0.1 core[1107]: 1:M 28 May 06:29:40.539 * Ready to accept connections
2018-05-28T11:29:45+00:00 172.17.0.1 core[1107]: 06:29:45 RQ worker u'rq:worker:a0706cb9e784.1' started, version 0.10.0
2018-05-28T11:29:45+00:00 172.17.0.1 core[1107]: 06:29:45 *** Listening on default...
2018-05-28T11:29:45+00:00 172.17.0.1 core[1107]: 06:29:45 Cleaning registries for queue: default
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: [2018-05-28 06:29:49 +0000] [1] [INFO] Starting gunicorn 19.8.1
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: [2018-05-28 06:29:49 +0000] [1] [INFO] Listening at: http://0.0.0.0:8000 (1)
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: [2018-05-28 06:29:49 +0000] [1] [INFO] Using worker: gevent
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: [2018-05-28 06:29:49 +0000] [7] [INFO] Booting worker with pid: 7
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: /usr/local/lib/python3.6/site-packages/gunicorn/workers/ggevent.py:65: MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors, including RecursionError on Python 3.6. Please monkey-patch earlier. See https://github.com/gevent/gevent/issues/1016
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]:   monkey.patch_all(subprocess=True)
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: [2018-05-28 06:29:49 +0000] [18] [INFO] Booting worker with pid: 18
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: [2018-05-28 06:29:49 +0000] [19] [INFO] Booting worker with pid: 19
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: [2018-05-28 06:29:49 +0000] [20] [INFO] Booting worker with pid: 20
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: /usr/local/lib/python3.6/site-packages/gunicorn/workers/ggevent.py:65: MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors, including RecursionError on Python 3.6. Please monkey-patch earlier. See https://github.com/gevent/gevent/issues/1016
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]:   monkey.patch_all(subprocess=True)
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: /usr/local/lib/python3.6/site-packages/gunicorn/workers/ggevent.py:65: MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors, including RecursionError on Python 3.6. Please monkey-patch earlier. See https://github.com/gevent/gevent/issues/1016
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]:   monkey.patch_all(subprocess=True)
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]: /usr/local/lib/python3.6/site-packages/gunicorn/workers/ggevent.py:65: MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors, including RecursionError on Python 3.6. Please monkey-patch earlier. See https://github.com/gevent/gevent/issues/1016
2018-05-28T11:29:49+00:00 172.17.0.1 plugin[1107]:   monkey.patch_all(subprocess=True)
2018-05-28T11:29:56+00:00 172.17.0.1 plugin[1107]: serve: Running on port 5000
2018-05-28T11:29:57+00:00 172.17.0.1 core[1107]: http://0.0.0.0:8080/
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,133 - INFO - Config:51  - From the Environment
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,134 - DEBUG - Monitor_Helper_Base:45  - set_owner = Config
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,135 - DEBUG - Monitor_Helper_Base:45  - set_owner = Config
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,135 - DEBUG - Monitor_Helper_Base:45  - set_owner = Config
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,268 - DEBUG - EndpointWrapper:51  - Endpoint_Wrapper:config:{'config': 'True', 'vent_ip': 'VENT_IP', 'vent_port': '8080'}
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,268 - DEBUG - Monitor_Helper_Base:45  - set_owner = NorthBoundControllerAbstraction
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,271 - DEBUG - poseidonMonitor:400 - Monitor:config:{'config': 'True', 'logging_file': 'logging.json', 'logger_level': 'INFO', 'reinvestigation_frequency': '900', 'max_concurrent_reinvestigations': '1', 'scan_frequency': '5', 'rabbit_server': 'RABBIT_SERVER', 'rabbit_port': '5672', 'collector_nic': 'enp7s0f0', 'collector_interval': '900', 'vent_ip': 'vent_ip', 'vent_port': '8080', 'FA_RABBIT_ENABLED': 'True', 'FA_RABBIT_HOST': 'RABBIT_SERVER', 'FA_RABBIT_PORT': '5672', 'FA_RABBIT_EXCHANGE': 'topic_recs', 'FA_RABBIT_EXCHANGE_TYPE': 'topic', 'FA_RABBIT_ROUTING_KEY': 'FAUCET.Event'}
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,271 - INFO - Config:61  - Config:configure
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,274 - INFO - Monitor_Helper_Base:55  - Handle_SectionConfig configure()
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,274 - INFO - Monitor_Helper_Base:55  - Handle_FieldConfig configure()
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,274 - INFO - Monitor_Helper_Base:55  - Handle_FullConfig configure()
2018-05-28T11:30:01+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:01,274 - INFO - Monitor_Helper_Base:55  - Update_Switch_State configure()
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,301 - INFO - EndpointWrapper:140 - ====START
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,302 - INFO - EndpointWrapper:103 - *******KNOWN*********
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,303 - INFO - EndpointWrapper:135 - None
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,303 - INFO - EndpointWrapper:103 - *******UNKNOWN*********
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,303 - INFO - EndpointWrapper:135 - None
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,304 - INFO - EndpointWrapper:103 - *******MIRRORING*********
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,304 - INFO - EndpointWrapper:135 - None
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,304 - INFO - EndpointWrapper:103 - *******SHUTDOWN*********
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,305 - INFO - EndpointWrapper:135 - None
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,305 - INFO - EndpointWrapper:103 - *******REINVESTIGATING*********
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,306 - INFO - EndpointWrapper:135 - None
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,306 - INFO - EndpointWrapper:144 - ****************
2018-05-28T11:30:06+00:00 172.17.0.1 plugin[1107]: 2018-05-28 06:30:06,308 - INFO - EndpointWrapper:145 - ====STOP

@cglewis
Copy link
Member

cglewis commented May 29, 2018

apologies , I had used the wrong word in the helper script when I updated it to properly handle missing environment variables. #607 should fix it.

@FahadMaqbool
Copy link
Author

FahadMaqbool commented May 30, 2018

Seems like that basic issues with poseidon are now fix. will you please help me in getting traffic at the mirro port as my Faucet configurations are as follows:

vlans:
    10:
    20:
dps:
    allied-telesis:
        dp_id: 0x1
        hardware: "Allied-Telesis"
        interfaces:
            1:
                native_vlan: 10
                name: "port1.0.1"
            2:
                native_vlan: 10
                name: "port1.0.2"
            3:  
                native_vlan: 20
                name: "port1.0.6"

As I ping from client 1 to client 2 (and vice versa) that are defined as port1.0.1 and port1.0.2 in faucet yaml file. but faucet is not picking it up.

2018-05-30T10:32:19+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:19,132 - DEBUG - Monitor_Helper_Base:45  - set_owner = NorthBoundControllerAbstraction
2018-05-30T10:32:19+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:19,133 - DEBUG - poseidonMonitor:400 - Monitor:config:{'config': 'True', 'logging_file': 'logging.json', 'logger_level': 'INFO', 'reinvestigation_frequency': '900', 'max_concurrent_reinvestigations': '1', 'scan_frequency': '5', 'rabbit_server': 'RABBIT_SERVER', 'rabbit_port': '5672', 'collector_nic': 'ens8', 'collector_interval': '900', 'vent_ip': 'vent_ip', 'vent_port': '8080', 'FA_RABBIT_ENABLED': 'True', 'FA_RABBIT_HOST': 'RABBIT_SERVER', 'FA_RABBIT_PORT': '5672', 'FA_RABBIT_EXCHANGE': 'topic_recs', 'FA_RABBIT_EXCHANGE_TYPE': 'topic', 'FA_RABBIT_ROUTING_KEY': 'FAUCET.Event'}
2018-05-30T10:32:19+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:19,133 - INFO - Config:61  - Config:configure
2018-05-30T10:32:19+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:19,133 - INFO - Monitor_Helper_Base:55  - Handle_SectionConfig configure()
2018-05-30T10:32:19+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:19,133 - INFO - Monitor_Helper_Base:55  - Handle_FieldConfig configure()
2018-05-30T10:32:19+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:19,133 - INFO - Monitor_Helper_Base:55  - Handle_FullConfig configure()
2018-05-30T10:32:19+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:19,133 - INFO - Monitor_Helper_Base:55  - Update_Switch_State configure()
2018-05-30T10:32:19+00:00 172.17.0.1 core[1173]: http://0.0.0.0:8080/
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:140 - ====START
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:103 - *******KNOWN*********
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:135 - None
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:103 - *******UNKNOWN*********
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:135 - None
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:103 - *******MIRRORING*********
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:135 - None
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:103 - *******SHUTDOWN*********
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:135 - None
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:103 - *******REINVESTIGATING*********
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:135 - None
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,201 - INFO - EndpointWrapper:144 - ****************
2018-05-30T10:32:24+00:00 172.17.0.1 plugin[1173]: 2018-05-30 05:32:24,202 - INFO - EndpointWrapper:145 - ====STOP

I am using an allied telesis switch.

@cglewis
Copy link
Member

cglewis commented May 30, 2018

Can you provide the logs from faucet.log as well?

You also need to have your mirror port (3) set as output_only: true and not be on a native_vlan.

Are you starting Faucet with the Rabbit event adapter, or not?

@FahadMaqbool
Copy link
Author

FahadMaqbool commented Jun 1, 2018

## Can you provide the logs from faucet.log as well?

faucet.log is as follows.

Jun 01 09:24:46 faucet INFO     Reloading configuration
Jun 01 09:24:46 faucet INFO     configuration /etc/faucet/faucet.yaml changed, analyzing differences
Jun 01 09:24:46 faucet INFO     Add new datapath DPID 1 (0x1)
Jun 01 09:24:48 faucet.valve INFO     DPID 1 (0x1) Cold start configuring DP
Jun 01 09:24:48 faucet.valve INFO     DPID 1 (0x1) Configuring VLAN 10 vid:10 ports:Port 1,Port 2
Jun 01 09:24:48 faucet.valve INFO     DPID 1 (0x1) Configuring VLAN 20 vid:20 ports:Port 3
Jun 01 09:24:48 faucet.valve INFO     DPID 1 (0x1) Port 1 configured
Jun 01 09:24:48 faucet.valve INFO     DPID 1 (0x1) Port 2 configured
Jun 01 09:24:48 faucet.valve INFO     DPID 1 (0x1) Port 3 configured
Jun 01 09:24:48 faucet.valve INFO     DPID 1 (0x1) Ignoring port:4294967294 not present in configuration file
Jun 01 09:24:48 faucet.valve INFO     DPID 1 (0x1) Ignoring port:6 not present in configuration file
Jun 01 09:25:11 faucet.valve INFO     DPID 1 (0x1) L2 learned 00:1b:21:4a:98:69 (L2 type 0x86dd, L3 src fe80::21b:21ff:fe4a:9869, L3 dst ff02::2) on Port 2 on VLAN 10 (1 hosts total)
Jun 01 09:25:16 faucet.valve INFO     DPID 1 (0x1) L2 learned 00:1b:21:4a:98:68 (L2 type 0x86dd, L3 src fe80::21b:21ff:fe4a:9868, L3 dst ff02::fb) on Port 1 on VLAN 10 (2 hosts total)
Jun 01 09:25:54 faucet.valve INFO     DPID 1 (0x1) L2 learned 52:54:00:ce:7a:ea (L2 type 0x0806, L3 src 172.16.0.3, L3 dst 172.16.0.4) on Port 2 on VLAN 10 (3 hosts total)
Jun 01 09:25:56 faucet.valve INFO     DPID 1 (0x1) L2 learned 52:54:00:bc:35:d0 (L2 type 0x0806, L3 src 172.16.0.2, L3 dst 172.16.0.3) on Port 1 on VLAN 10 (4 hosts total)

# You also need to have your mirror port (3) set as output_only: true and not be on a native_vlan.

Do I need to set output_only: true in faucet.yaml?
and not be on a native_vlan? but the guide I was following showed it to be on native_vlan, should I modify and have a tagged port instead?

## Are you starting Faucet with the Rabbit event adapter, or not?

I dont know exactly, I have Installed the faucet and made it run on boot.

@cglewis
Copy link
Member

cglewis commented Jun 1, 2018

The logs look good - it's learning the L3 addresses.

For the mirror port, yeah setting it to output_only: true is now preferred. Not sure which guide you're following, but the older setup that was using native_vlan was because Faucet used to require ports to have a VLAN, but with output_only that is no longer the case, and makes it cleaner for mirroring.

So the rabbit event adapter is not set for Faucet by default (and technically not required, but Poseidon by default is expecting that Faucet is run using it.

I start Faucet with docker-compose which lets me ensure 2 things are set for Faucet (event sock and config reloads):

I add these environment variables:

FAUCET_EVENT_SOCK=1
FAUCET_CONFIG_STAT_RELOAD=1
# set the host to be IP (replacing the 'x's) of the machine running Poseidon
FA_RABBIT_HOST=x.x.x.x

Then run:

docker-compose -f docker-compose.yaml -f adapters/vendors/rabbitmq/docker-compose.yaml up --build -d

If you don't plan to use the event sock, then you need to set:

FA_RABBIT_ENABLED=False

@FahadMaqbool
Copy link
Author

any ideas, guide or tutorial for running Poseidon in IXP (Internert Exchange Point) setup?

@gregs5
Copy link
Contributor

gregs5 commented Jun 7, 2018

@FahadMaqbool : I'd be concerned that Poseidon might not perform well in that scenario, particularly as there are (most likely) going to be a lot of NAT'ed and "overloaded" addresses crossing the wire. It really wasn't designed to handle that deployment model and while it technically could work, the ML is going to deliver crap results, IMO. (i.e. It should collect, spin up containers, process data just fine - but the current ML models aren't trained for that vantage point)

Question: what's the function you'd like to most use it for in/at an IXP? I ask because maybe we could work on a specific use-case, depending on what it is you wanted to accomplish.

@FahadMaqbool
Copy link
Author

@gregs5 Thank you for your response, A very useful function to have in an IXP will be to have a detection and blocking mechanism of DDOS attack using advanced blackholing. http://conferences.sigcomm.org/sosr/2017/papers/sosr17-demo-blackholing.pdf

@cglewis
Copy link
Member

cglewis commented Jun 11, 2018

@FahadMaqbool per the original question in this issue - has that been resolved? If so, I'd like to close this out and start a new issue that discusses IXP as a use case.

@FahadMaqbool
Copy link
Author

yeah sure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants