Я новичок в мининете и питоне. Я хочу выполнить скрипт Python в мининете, но я не знаю, как мы можем запускать скрипты Python в мининете и где хранить файлы .py для вызова из мининета.
Любая идея, пожалуйста?
Я новичок в мининете и питоне. Я хочу выполнить скрипт Python в мининете, но я не знаю, как мы можем запускать скрипты Python в мининете и где хранить файлы .py для вызова из мининета.
Любая идея, пожалуйста?
Когда вы открываете мининет, просто перейдите в пользовательскую папку, набрав:
cd mininet/custom
затем введите:
ls
который покажет вам текущие файлы внутри пользовательского файла.
Затем вы можете использовать текстовый редактор nano
для создания или редактирования python/текстового файла, например, вы можете ввести:
nano custom.py
и он откроет пользовательский файл с примером использования кода Python. Затем вы можете выйти из него и сохранить его как новый файл.
Вот так я начал редактировать и писать коды на Python, и это станет проще, как только вы научитесь подключать мининет по SSH с помощью шпатлевки.
удачи
Вот как я это делаю. Скопируйте и вставьте приведенный ниже код или загрузите этот файл: Simple_Pkt_Topo.py.
__author__ = 'Ehsan'
from mininet.node import CPULimitedHost
from mininet.topo import Topo
from mininet.net import Mininet
from mininet.log import setLogLevel, info
from mininet.node import RemoteController
from mininet.cli import CLI
"""
Instructions to run the topo:
1. Go to directory where this fil is.
2. run: sudo -E python Simple_Pkt_Topo.py.py
The topo has 4 switches and 4 hosts. They are connected in a star shape.
"""
class SimplePktSwitch(Topo):
"""Simple topology example."""
def __init__(self, **opts):
"""Create custom topo."""
# Initialize topology
# It uses the constructor for the Topo cloass
super(SimplePktSwitch, self).__init__(**opts)
# Add hosts and switches
h1 = self.addHost('h1')
h2 = self.addHost('h2')
h3 = self.addHost('h3')
h4 = self.addHost('h4')
# Adding switches
s1 = self.addSwitch('s1', dpid="0000000000000001")
s2 = self.addSwitch('s2', dpid="0000000000000002")
s3 = self.addSwitch('s3', dpid="0000000000000003")
s4 = self.addSwitch('s4', dpid="0000000000000004")
# Add links
self.addLink(h1, s1)
self.addLink(h2, s2)
self.addLink(h3, s3)
self.addLink(h4, s4)
self.addLink(s1, s2)
self.addLink(s1, s3)
self.addLink(s1, s4)
def run():
c = RemoteController('c', '0.0.0.0', 6633)
net = Mininet(topo=SimplePktSwitch(), host=CPULimitedHost, controller=None)
net.addController(c)
net.start()
CLI(net)
net.stop()
# if the script is run directly (sudo custom/optical.py):
if __name__ == '__main__':
setLogLevel('info')
run()
Затем вы можете запустить топографию, просто используя
sudo -E python <nameofthefile>
Теперь вы можете просто использовать sudo -E python Simple_Pkt_Topo.py
для запуска мининета.
Вот руководство по ссылка.
Обратите внимание, что вам нужен контроллер. Дайте мне знать, если вам нужны инструкции по этому поводу.
Надеюсь, поможет.