Install Cisco 9800 Cloud Controller on ESXI 6.7

Download the recommended controller version from – as of 12/18/2019 the recommended version is listed below as Gibraltar-16.12.1s ED

Download the following associated 16.12.1s files: .ova, .bin and .iso files

The next step is to load the .iso file into the data store of the ESXI server

I am using a Dell r710 server which has 4 built in GigabitEthernet ports. The virtual WLC requires 3 interfaces:

  1. Port 1- Management – interface used to connect (ssh, https) in to the 9800 controller.
  2. Port 2 – AP management / user traffic – this interface will be defined as a trunk port allowing the AP management VLAN and the wireless client traffic.
  3. Port 3 – Controller redundancy used for SSO/HA

This particular setup will use the Dell r710’s GigabitEthernet ports 1 and 2. vswitch 0 will host the management traffic via physical port 1 and AP/user traffic via physical port 2.

Vswitch 0 is defined by default, the steps below will define vswitch 1 which will connect port 2 of the Dell r710

Create the virtual controller using the .ova and .iso file

Associate the network mappings with the vswitch/port-group

Next – mount the C9800-CL-universalk9.16.12.01s.iso – this will allow the controller to boot correctly

Basic install video – boot the c9800, assign IP address, ping default gateway and internet

Once the basic config has been completed you should be able to log into the 9800 controller.

access to the controller’s GUI will be denied, the basic install does not have a user account. Simply create an admin user with privilege level 15 via the CLI. Also allow login via ssh by configuring the line vty

Below is a high level summary of the virtual controller ports:

Once the account is created you will have access to the GUI and CLI of the 9800 controller. The default page is loaded as “day zero wireless”

once you successfully login, you will be presented with the “day zero wireless” page. This page will allow you to configure the following: Country, date/time, timezone, NTP, AAA servers , etc.

The same task can also be accomplished via the CLI, which is my preferred method.

As with all things network NTP synchronization is critical. The 9800 wireless is running Cisco IOS-XE software so i’ll be configuring NTP from the CLI

The 9800 controller will take some time to synchronize with the NTP server. Screenshot below is to verify that the NTP server is synchronized with its master NTP server, and it is.

Access points will not join the virtual 9800 controller by default. The steps to prepare the controller to bypass the “zero day” screen and allow APs to join the controller can be found here

Future blog post will cover creating WLANs, groups, tags, etc. Below are screenshots of the 9800 controller dashboard with connected clients:



Windows 10 client

client AVC

iperf – server

iperf client

NTP finally kicked in and both 9800 controllers are synced

Next post – 9800 controller high availability/SSO

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.