Try   HackMD

Instalação do ONOS & Emulador Mininet

Versão do ONOS: Velociraptor 2.5.0 (LTS)

Versão do emulador Mininet: 2.2.2

Esta é uma breve demonstração de testes que pode ser utilizado em produção em um hardware físico, utilizando as últimas versões do ONOS e do emulador Mininet.

IP do Controllador ONOS: 192.168.1.160

Pré-requisitos:
:grey_exclamation: Xubuntu ou Ubuntu (18.04LTS)
:grey_exclamation: Memória RAM >= 4GB

OS: Linux Xubuntu & Ubuntu (18.04LTS)

Hardware utilizado:

Processor: Intel ® Celeron ® CPU N3050 @ 1.60GHz
Architecture: amd64 - Memory: 4GB - HD SSD: 120GB

Objetivo:

Preparar um ambiente de testes e produção utilizando o controlador SDN ONOS em um ambiente de hardware físico.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →



Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →



Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →



O ONOS (Open Network Operating System) é um projeto open source, especifico para redes definidas por software, o ONOS faz parte da Linux Foundation e ONF (Open Networking Foundation). O ONOS foi projetado para atender às necessidades das operadoras de telecom que desejam construir soluções de nível avançado para grandes redes, fazendo grande economia em hardware proprietário, podendo utilizar whitebox ou outros tipos de hardware, oferecendo a flexibilidade para criar e implantar novos serviços de rede totalmente dinâmicos e com interfaces programavéis e simplificadas. O ONOS suporta configurações e gestão em tempo real de uma pequena ou grnade rede, eliminando a necessidade de executar protocolos de controle de roteamento e comutação dentro da malha da rede. Ao mover a inteligência para o controlador ONOS, a inovação é ativada e os usuários, profissionais, estudantes, pesquisadores e afins, podem criar facilmente novos aplicativos de rede sem a necessidade de alterar os sistemas de plano de dados.


Alguns recursos do controllador ONOS:

Plataforma e Conjunto de aplicativos: que atuam como um controlador SDN extensível, modular e distribuído.

Gerenciamento simplificado: em aspectos de configuração e implantação de novo software, hardware e serviços.

Uma arquitetura de escalabilidade: fornecendo a resiliência e escalabilidade necessárias para atender aos rigores dos ambientes de portadores de produção, entre outros inúmeros recursos voltados para SDN.


O que é o Mininet?

Trata-se de um emulador de rede, mais precisamente falando, um sistema de orquestração de emulação de rede. O software possui uma grande coleção de hosts finais, switches, roteadores e links em um único kernel Linux. O emulador utiliza uma "leve" virtualização para fazer um único sistema parecer uma rede completa, sendo executando no mesmo kernel. Os programas que você executa podem enviar pacotes através do que parece ser uma interface Ethernet real, com uma determinada velocidade de link e atraso.


Observação

Caso já tenha o JAVA, 8 ou 9 (SDK), instalado, siga os procedimentos a seguir, reinicie a máquina e continue o tutorial:

sudo rm -rf /usr/lib/jvm/*

sudo updatedb

sudo apt-get remove --purge oracle-java8-installer

sudo apt-get remove --purge oracle-java9-installer

sudo apt-get remove --purge icedtea-* openjdk-*

sudo dpkg --list | grep -i jdk


Instalação de softwares especificos para o controllador ONOS

​​​​sudo apt update && sudo apt install git vim curl default-jre -y

​​​​sudo apt install openjdk-8-jre-headless -y

​​​​java --version

Retorno do comando:

​​​​openjdk version "11.0.11" 2021-04-20
​​​​OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.18.04)
​​​​OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.18.04, mixed mode, sharing)

Download e execução do ONOS 2.5.0 (LTS) "Velociraptor"

sudo apt update && apt upgrade -y
wget https://repo1.maven.org/maven2/org/onosproject/onos-releases/2.5.0/onos-2.5.0.tar.gz -c /opt
cd /opt && tar zxf onos-2.5.0.tar.gz
cd onos-2.5.0/bin
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64

Dependendo do seu hardware, a execução do ONOS levará alguns minutos:

./onos-service

Retorno do comando anterior na ilustração a seguir:

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →


Não feche essa janela, utilize outra janela do terminal ou outra sessão SSH para seguir com a instalação do Mininet, para seguir com o procedimento.


Instalação do Mininet

​​​​git clone https://github.com/mininet/mininet && sudo apt install mininet -y

Em outra sessão SSH ou nova janela de terminal, execute os comandos:

sudo mn --controller remote,ip=192.168.1.160 --topo=linear,4
mininet> pingall

Retorno dos comandos anteriores na ilustração a seguir:

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Acesse a GUI do ONOS pelo seu navegador web:

http://192.168.1.160:8181/onos/ui/index.html

Usuário: onos
Senha: rocks

Retorno dos comandos anteriores nas ilustrações a seguir:

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →



Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Alguns comandos do ONOS utilizados neste procedimento.

a h l z


Fontes:

https://wiki.onosproject.org/display/ONOS/ONOS
http://pakiti.com/sdn-101-using-mininet-and-sdn-controllers/
https://github.com/mininet/mininet/wiki/Introduction-to-Mininet

Autor:

Fernando Henrique Santorsula
E-mail: f208918@dac.unicamp.br

Coautor:

Alan Teixeira da Silva
E-mail: a265560@dac.unicamp.br

FEEC/UNICAMP - Campinas/SP/BR
https://www.fee.unicamp.br