Skip to content

FraserHenshaw/demo-in-a-box

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Avi Vantage Demo Setup

This project results in creating a "demo-in-a-box" of the Avi Vantage platform. This demo setup will deploy clients, servers and virtual services all within a single host resulting in an up and running demo system within minutes.

Prerequisites

  • Linux Server
    • RHEL
    • Centos
    • Ubuntu

System Resources

**CPU** **Memory** **Storage**
Recommended 16+ 64+ GB 96+ GB
Minimum 12 32 GB 72 GB



Install Instructions

Automated Install

curl -sSL https://raw.githubusercontent.com/avinetworks/demo-in-a-box/master/demo-install.sh | sudo bash

The default setup will deploy the Avi Default Demo using version 17.2.15.

Optional Arguments

There are optional arguments that can be provided. Every argument provided is proceeded with a -s.

**Argument** **Required** **Default**
version provides option to select a version no, optional 17.2.15
controller-memory provides option to override controller memory in GB no, optional 24
kubernetes will deploy Avi with Kubernetes integration instead of the Default Demo no, optional default value is to deploy the Default Demo Setup
grafana will deploy an implementation of grafana displaying Avi Metrics no, optional none

Example Setup Using Arguments

The command below demonstrates using multiple arguments. The version argument will present you with a list of Avi versions to select from. The kubernetes argument will deploy a demo of Avi with Kubernetes deployment instead of the Default Demo Setup and the grafana argument will deploy Grafana to display Avi performance metrics.

curl -sSL https://raw.githubusercontent.com/avinetworks/demo-in-a-box/master/demo-install.sh | sudo bash -s version -s kubernetes -s grafana



Default Demo Setup

Utilizing docker containers, the Default "demo-in-a-box" setup is completely self contained within a single host.

A bridged network (avinet : 169.254.0.0/17) has been created for the internal docker networking.

The table below lists the containers that will be created and amongst other information the roles they serve for the demo.

CONTAINER NAME CONTAINER ROLE INTERNAL IP EXPOSED PORTS
avicontroller Avi Vantage controller 169.254.0.100 tcp:80, tcp:443, tcp:5054, tcp:5098(ssh), tcp:8443, udp:161
avise1 Avi Service Engine 169.254.0.101 none
avise2 Avi Service Engine 169.254.0.102 none
democlient1 Client running scripted traffic against avi-demo-vs and waf-vs virtual services 169.254.63.1 none
democlient2 Client running scripted traffic against avi-demo-vs and waf-vs virtual services 169.254.63.2 none
scaleoutclient1 Client running scripted traffic against avi-scaleout-vs virtual service 169.254.63.3 none
demoserver1 Server used for avi-demo-vs and avi-scaleout-vs virtual services 169.254.127.200 none
demoserver2 Server used for avi-demo-vs and avi-scaleout-vs virtual services 169.254.127.201 none
demoserver3 Server used for avi-demo-vs and avi-scaleout-vs virtual services 169.254.127.203 none
wafserver1 Server used for waf-vs virtual service 169.254.127.100 none
wafserver2 Server used for waf-vs virtual service 169.254.127.101 none
rdpserver An rdp server to be used to access virtual services 169.254.63.0 tcp:3389

How to Access

There are two containers that are exposing services externally on the host; the Avi Controller and the RDP Server

Avi Controller

The Avi Vantage Controller can be accessed through the GUI or SSH. To access the GUI point a browser to https://<host_ip>. To access the cli, ssh to the host ip on port 5098. Login credentials for the Avi controller are:

  • u: admin
  • p: AviDemo1!

RDP Server

Because this demo setup is isolated within the host an RDP server is provided to allow for manual access to the virtual services. To login to the RDP server, using an RDP client connect to the host IP on port 3389. Login credentials for the RDP server are:

  • u: admin
  • p: AviDemo1!



Kubernetes Demo Setup

Utilizing docker containers, the kubernetes "demo-in-a-box" setup is completely self contained within a single host.

A bridged network (avinet : 169.254.0.0/17) has been created for the internal docker networking to host the Avi Controller and Traffic Client.

The table below lists the containers that will be created and amongst other information the roles they serve for the demo.

CONTAINER NAME CONTAINER ROLE INTERNAL IP EXPOSED PORTS
avicontroller Avi Vantage controller 169.254.0.100 tcp:80, tcp:443(GUI), tcp:5054, tcp:5098(ssh), tcp:8444, udp:161
k8_(various) Kubernetes VM various tcp:30000(GUI), tcp:8443
kubeclient1 Client used for traffic generation 169.254.8.8 none

How to Access

There are two containers that are exposing services externally on the host; the Avi Controller and the RDP Server

Avi Controller

The Avi Vantage Controller can be accessed through the GUI or SSH. To access the GUI point a browser to https://<host_ip>. To access the cli, ssh to the host ip on port 5098. Login credentials for the Avi controller are:

  • u: admin
  • p: AviDemo1!

Kubernetes UI

To access the Kubernetes GUI point a browser to http://<host_ip>:30000



Grafana Setup

CONTAINER NAME CONTAINER ROLE INTERNAL IP EXPOSED PORTS
avimetrics Pulls metrics from Avi Controller API and pushes into Influxdb 169.254.100.102 none
influxdb Time series database to store the Avi metrics 169.254.100.100 none
grafana UI for displaying metrics charts 169.254.100.101 tcp:3000(gui)

How to Access

Grafana UI

To access the Grafana GUI point a browser to https://<host_ip>:3000

  • u: admin
  • p: AviDemo1!

About

Avi Demo-in-a-Box

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%