Preparation

Installing Gloo in your environment and walking through the step-by-step guides requires the installation of utilities on your local system and the selection of a deployment model. This document outlines the common utilities that you should have on your local system, and a brief discussion of deployment options for Gloo.


Utilities List

Below is a list of all the required components and common utilities for use with Gloo as you work through the concepts and guides.

You will also want some type of text editor that understands YAML. For real, there is going to be a lot of YAML and getting the spacing wrong is a huge pain. There are many great tools out there including, but not limited to Visual Studio Code, Sublime Text, and the venerable Vim.

glooctl

Install command line tool (CLI)

The glooctl command line provides useful functions to install, configure, and debug Gloo, though it is not required to use Gloo.

You can verify the glooctl CLI is installed and running correctly by executing the command:

glooctl version

The command returns your client version and a missing server version (we have not installed Gloo yet!):

Client: {"version":"1.2.3"}
Server: version undefined, could not find any version of gloo running

Deployment Requirements

There are a number of options when it comes to installing Gloo Gateway. The requirements for each deployment model are described below.

Kubernetes Deployments

Not sure how you will deploy Gloo? This section is for you. Gloo Gateway deploys as a set of containers, and is usually deployed on a Kubernetes cluster. In order to install Gloo Gateway, you will need access to a Kubernetes deployment. That could be a local cluster using minikube or minishift. It could be a hosted cluster on one of the public clouds such as Google Kubernetes Engine, Elastic Kubernetes Service, or Azure Kubernetes Service. You could even host your own Kubernetes cluster in your datacenter!

As long as you can run kubectl and have cluster-admin permissions, you’re all set.

Docker Compose Deployments

A less common option is to use Docker Compose to deploy the Gloo Gateway components locally and store the configuration and secrets data in the Gloo containers. This will require that docker and docker-compose are installed on your local machine. Further instructions for setup can be found here.

Consul and Vault Deployments

Similar to the Docker Compose option, this option leverages HashiCorp Consul for configuration data and HashiCorp Vault for secrets data instead of storing the values directly in the Gloo containers. This will require that docker and docker-compose are installed locally. Further instructions for setup can be found here.

Nomad Deployments

Nomad is a workload scheduler that can be used in place of Docker Compose or Kubernetes. It integrates with Consul and Vault, using them to store configuration and secrets data. Using Nomad will require Levant to be installed locally, and access to a system running Docker, Consul, Vault, and Nomad. Further instructions for setup can be found here.


Where to Next?

The most common starting point is to install Gloo Gateway. Once Gloo Gateway is installed, Traffic Management is likely your go-to destination. Otherwise, here are some common paths to learning.