ryu-sdn-controller-mac-os-x-omniswitch
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
ryu-sdn-controller-mac-os-x-omniswitch [2014/07/30 16:47] – angelegt benny | ryu-sdn-controller-mac-os-x-omniswitch [2024/06/09 10:29] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Ryu SDN-Controller auf MacOS X ====== | + | ====== Ryu SDN-Controller auf MacOS X installieren |
<WRAP center round important 60%> | <WRAP center round important 60%> | ||
- | An diesem Artikel wird gearbeitet. | + | An diesem Artikel wird gearbeitet. |
</ | </ | ||
- | Notizen: | + | ===== Voraussetzungen ===== |
- | mkdir ryu | + | * Ich verwende Mac OS X v10.9 |
+ | * Python v2.7 ist bereits an Bord | ||
+ | * '' | ||
+ | * Ich empfehle dringend den Einsatz von '' | ||
+ | * XCode v5.1.1 (Apple AppStore, wichtig sind die command-line Tools) | ||
+ | * XCode Command-Line Tools ('' | ||
+ | * '' | ||
- | Ich empfehle " | + | ===== Die Installation ===== |
- | Beschreiben welches XCODE ich installiert habe (Command-Line Tools) | + | |
- | virtualenv ryu/ | + | Ich empfehle die Installation in folgenden Schritten. |
- | Macbook: | + | ==== virtualenv erstellen & aktivieren ==== |
+ | < | ||
+ | Macbook: | ||
+ | New python executable in ryu-3.11/ | ||
+ | Installing setuptools, pip...done. | ||
+ | Macbook: | ||
+ | (ryu-3.11)Macbook: | ||
+ | </ | ||
- | 1. Versuch | + | ==== lxml zuerst installieren ==== |
+ | <WRAP center round important 60%> | ||
+ | Es ist wichtig das Kommando wie unten beschrieben einzugeben! '' | ||
+ | </ | ||
+ | < | ||
+ | (ryu-3.11)Macbook: | ||
+ | Downloading/ | ||
+ | Downloading lxml-3.3.5.tar.gz (3.5MB): 3.5MB downloaded | ||
+ | Running setup.py (path:/ | ||
+ | (... Jede Menge CLI-Kilometer ausgelassen ...) | ||
+ | Successfully installed lxml | ||
+ | Cleaning up... | ||
+ | </ | ||
+ | |||
+ | ==== Ryu installieren ==== | ||
+ | < | ||
+ | (ryu-3.11)Macbook: | ||
+ | Downloading/ | ||
+ | Downloading ryu-3.12.tar.gz (1.1MB): 1.1MB downloaded | ||
+ | Running setup.py (path:/ | ||
+ | (... Jede Menge CLI-Kilometer ausgelassen ...) | ||
+ | Successfully installed ryu eventlet msgpack-python netaddr oslo.config paramiko routes six webob greenlet argparse pycrypto ecdsa repoze.lru | ||
+ | Cleaning up... | ||
+ | </ | ||
+ | Hält man diese Reihenfolge __nicht__ ein, dann schlägt a) die Installation von '' | ||
+ | <WRAP center round tip 60%> | ||
+ | An dieser Stelle ist es sinnvoll sich die Beispiele von Ryu zu kopieren, siehe: [[ryu-sdn-controller-mac-os-x-omniswitch# | ||
+ | </ | ||
+ | |||
+ | ===== Ryu in Aktion! ===== | ||
+ | < | ||
+ | (ryu-3.11)Macbook: | ||
+ | loading app ../ | ||
+ | loading app ryu.controller.ofp_handler | ||
+ | instantiating app ryu.controller.ofp_handler of OFPHandler | ||
+ | instantiating app ../ | ||
+ | BRICK SimpleSwitch13 | ||
+ | CONSUMES EventOFPPacketIn | ||
+ | CONSUMES EventOFPSwitchFeatures | ||
+ | BRICK ofp_event | ||
+ | PROVIDES EventOFPPacketIn TO {' | ||
+ | PROVIDES EventOFPSwitchFeatures TO {' | ||
+ | CONSUMES EventOFPPortDescStatsReply | ||
+ | CONSUMES EventOFPEchoRequest | ||
+ | CONSUMES EventOFPSwitchFeatures | ||
+ | CONSUMES EventOFPErrorMsg | ||
+ | CONSUMES EventOFPHello | ||
+ | </ | ||
+ | |||
+ | ===== OmniSwitch in Ryu registrieren ===== | ||
+ | <WRAP center round info 60%> | ||
+ | Ich hab Urlaub! Danach werde ich diese Anleitung sicherlich noch erweitern .. :) | ||
+ | </ | ||
+ | |||
+ | ==== OmniSwitch 6900 Konfiguration ==== | ||
+ | < | ||
+ | -> show configuration snapshot openflow | ||
+ | ! OPENFLOW: | ||
+ | openflow logical-switch OFSwitch vlan 2 | ||
+ | openflow logical-switch OFSwitch controller 192.168.10.100: | ||
+ | openflow logical-switch OFSwitch interfaces port 1/1-20 | ||
+ | </ | ||
+ | |||
+ | ==== Ausgaben von Ryu ==== | ||
+ | < | ||
+ | (ryu)Macbook: | ||
+ | loading app ../ | ||
+ | loading app ryu.controller.ofp_handler | ||
+ | instantiating app ryu.controller.ofp_handler of OFPHandler | ||
+ | instantiating app ../ | ||
+ | BRICK SimpleSwitch13 | ||
+ | CONSUMES EventOFPSwitchFeatures | ||
+ | CONSUMES EventOFPPacketIn | ||
+ | BRICK ofp_event | ||
+ | PROVIDES EventOFPSwitchFeatures TO {' | ||
+ | PROVIDES EventOFPPacketIn TO {' | ||
+ | CONSUMES EventOFPSwitchFeatures | ||
+ | CONSUMES EventOFPEchoRequest | ||
+ | CONSUMES EventOFPHello | ||
+ | CONSUMES EventOFPErrorMsg | ||
+ | CONSUMES EventOFPPortDescStatsReply | ||
+ | connected socket:< | ||
+ | hello ev < | ||
+ | move onto config mode | ||
+ | EVENT ofp_event-> | ||
+ | switch features ev version: 0x4 msg_type 0x6 xid 0x84975d27 OFPSwitchFeatures(auxiliary_id=0, | ||
+ | move onto main mode | ||
+ | </ | ||
+ | |||
+ | ===== Typische Fehlermeldungen bei der Installation | ||
+ | ==== lxml: xmlversion.h file not found ==== | ||
+ | An diesem Fehler ist mein erster Installationsversuch mit '' | ||
+ | Nach einiger Suche habe ich in den Untiefen von " | ||
+ | < | ||
(ryu)Macbook: | (ryu)Macbook: | ||
Downloading/ | Downloading/ | ||
Zeile 30: | Zeile 135: | ||
#include " | #include " | ||
+ | </ | ||
- | Lösung | + | **Lösung:** |
+ | < | ||
(ryu)Macbook: | (ryu)Macbook: | ||
- | Downloading/unpacking lxml | + | </code> |
- | | + | |
- | | + | |
- | checking for a BSD-compatible install... / | + | * Zumindest bei mir schlug der erste Start aber dann wiederum auch fehl: '' |
- | checking whether build environment is sane... yes | + | |
- | checking for a thread-safe mkdir -p... build-aux/ | + | |
- | .... | + | |
- | + | ||
- | pip install ryu <- funktioniert | + | |
+ | ==== pkg_resources.DistributionNotFound: | ||
+ | Nach der manuellen Korrektur mit '' | ||
+ | < | ||
+ | (ryu-3.11)Macbook: | ||
+ | Traceback (most recent call last): | ||
+ | File " | ||
+ | from pkg_resources import load_entry_point | ||
+ | File "/ | ||
+ | working_set.require(__requires__) | ||
+ | File "/ | ||
+ | needed = self.resolve(parse_requirements(requirements)) | ||
+ | File "/ | ||
+ | raise DistributionNotFound(req) | ||
+ | pkg_resources.DistributionNotFound: | ||
+ | </ | ||
+ | **Lösung: | ||
+ | < | ||
+ | (ryu-3.11)Macbook: | ||
+ | </ | ||
+ | ==== Bei mir fehlen alle Beispiele bzw. das /app Verzeichnis fehlt! ==== | ||
+ | Die Beispiele werden von '' | ||
+ | **Lösung: | ||
+ | < | ||
+ | Macbook: | ||
+ | Cloning into ' | ||
+ | remote: Counting objects: 14808, done. | ||
+ | remote: Compressing objects: 100% (134/134), done. | ||
+ | remote: Total 14808 (delta 80), reused 0 (delta 0) | ||
+ | Receiving objects: 100% (14808/ | ||
+ | Resolving deltas: 100% (10855/ | ||
+ | Checking connectivity... done. | ||
+ | </ |
ryu-sdn-controller-mac-os-x-omniswitch.1406738875.txt.gz · Zuletzt geändert: 2024/06/09 10:29 (Externe Bearbeitung)