Installing Avi Vantage for Local Development Using Docker on Mac

Local Avi Vantage development can be performed on an Apple Mac by loading the Avi executables into Docker containers.

Prerequisites

  • Mac hardware must be 2010 or newer
  • MacOS 10.10.3 Yosemite or newer
  • At least 10 GB of spare RAM capacity
  • VirtualBox prior to version 4.3.30 must “NOT” be installed.
  • The following local TCP ports should not be in use: 9443, 9080, 8443, 5098, 8053, 8054, 161.
  • Avi Mini Version: 17.1 Build 5040 or later

Step 1: Download and Install Docker on Mac

https://docs.docker.com/docker-for-mac/

Click “Get Docker for Mac [stable] to download the Docker.dmg installation package. Double-click Docker.dmz Drag and drop the Docker icon into the Applications folder.

Step 2: Start Docker on Mac

Open Finder->Application Double-click the Docker icon. Once Docker is running on the Status bar, run docker version to verify the installed version with output akin to the below.

Note: When starting Docker, allocate at least 5 CPU and 12 GB RAM to the Docker daemon.

Docker for Mac
Version: 1.12.5 (14777)
macbookpro15:~ $ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

macbookpro15:~ $ docker version
Client:
Version: 1.12.5
API version: 1.24
Go version: go1.6.4
Git commit: 7392c3b
Built: Fri Dec 16 06:14:34 2016
OS/Arch: darwin/amd64
Server:
Version: 1.12.5
API version: 1.24
Go version: go1.6.4
Git commit: 7392c3b
Built: Fri Dec 16 06:14:34 2016
OS/Arch: linux/amd64
macbookpro15:~ $

Step 3: Download the Avi Vantage on Mac package

Download docker_install.tar.gz from https://www.avinetworks.com/portal/

Step 4: Move install package to installation directory

Verify your Mac IP address using an ifconfig -a command. Search for and verify your IP address appears.

scp docker_install.tar.gz to your Mac at /tmp directory

Step 5: Untar and Unzip the install package

tar zxvf docker_install-16.7.1.buildnumber.tar.gz

Step 6: Run the installation script

From the /tmp directory:

macbookpro15:avi $ ./avi_macOS_setup.py -i ip.ipaddr.your.mac

Verify docker ps yields an output akin to the below.

macbookpro15:avi $ docker ps
CONTAINER ID  IMAGE                                                 COMMAND                  CREATED              STATUS         PORTS                     NAMES                                    
5612f8246172  avinetworks/se:17.1-5040-20170109.125818          "/opt/avi/scripts/doc"   About a minute ago   Up About a minute                           avise                                                                                                                                                                     
d08488db9dae  avinetworks/controller:17.1-5040-20170109.125818  "/opt/avi/scripts/doc"   About a minute ago   Up About a minute   0.0.0.0:161->161/tcp,   avicontroller
                                                                                                                                  0.0.0.0:5054->5054/tcp,
																																  0.0.0.0:5098->5098/tcp,
																																  0.0.0.0:8443->8443/tcp,
																																  0.0.0.0:9080->9080/tcp,
																																  0.0.0.0:9443->9443/tcp,
																																  0.0.0.0:8053->53/udp

Step 7: Initialize the Avi Controller for the first time

Avi Controller GUI will be listening on HTTPS/9443 port. Initialize Avi Controller via the browser by connecting to https://ip.ipaddr.your.mac:9443

Step8: Additional steps to enable unauthenticated SE-to-Controller communication:

Allow SE-to-Controller communication as follows:

macbookpro15:avi $ docker exec -it avicontroller bash
/# shell
Login: admin
Password:
[admin:192-168-38-160]: > configure controller properties
[admin:192-168-38-160]: controllerproperties> allow_unauthenticated_nodes
Overwriting the previously entered value for allow_unauthenticated_nodes
[admin:192-168-38-160]: controllerproperties> save

Step:9 Verify your setup

Verify SE communication with OPER_UP

show serviceengine
+---------------+---------------+---------------+---------------+------------+
| Name          | SE Group      | Mgmt IP       | Cloud         | Oper Stat  |
+-------------------------------+---------------+---------------+------------+
| 172.17.0.3    | Default-Group | 172.17.0.3    | Default-Cloud | OPER_UP    |
+---------------+---------------+---------------+---------------+------------+
[admin:192-168-38-160]: >

Updated: 2017-12-15 14:07:06 +0000