Install the glooctl CLI
Use the Gloo command line interface (CLI) tool, glooctl, to set up and manage Gloo Gateway.
Quick installation
Install the latest version of glooctl
. Make sure to add glooctl
to your PATH (see macOS or Linux for specific instructions).
- Linux and macOS:
curl -sL https://run.solo.io/gloo/install | sh export PATH=$HOME/.gloo/bin:$PATH
- Windows: Notes that this script requires OpenSSL.
(New-Object System.Net.WebClient).DownloadString("https://run.solo.io/gloo/windows/install") | iex $env:Path += ";$env:userprofile/.gloo/bin/"
Install a specific version of the CLI
You can download a specific version of glooctl
directly from the GitHub releases page.
- In your browser, navigate to the Gloo project releases.
- Choose the version of
glooctl
to install. For Gloo Gateway Enterprise, use the Gloo Gateway OSS version that corresponds to the Gloo Gateway Enterprise version you want to upgrade to. To find the OSS version that corresponds to each Gloo Gateway Enterprise release, see the Gloo Gateway Enterprise changelogs. Keep in mind that Gloo Gateway for Kubernetes Gateway API is available in version 1.17 or later (and not in earlier versions). - Click the version of
glooctl
that you want to install. - In the Assets, download the
glooctl
package that matches your operating system, and follow your operating system procedures for replacing your existingglooctl
binary file with the upgraded version. - After downloading, rename the executable to
glooctl
and add it to your system’sPATH
.
Upgrade the CLI
When it’s time to upgrade Gloo Gateway, make sure to update the glooctl
CLI version before upgrading.
You can use the glooctl upgrade
command to upgrade or roll back the glooctl
version. For example, you might change versions during an upgrade process, or when you have multiple versions of Gloo Gateway across clusters that you manage from the same workstation. For more options, run glooctl upgrade --help
.
Upgrading the glooctl
CLI does not upgrade the Gloo Gateway version that you run in your clusters.
Set the version to upgrade
glooctl
to in an environment variable. Include the patch version. For Gloo Gateway Enterprise, specify the Gloo Gateway OSS version that corresponds to the Gloo Gateway Enterprise version you want to upgrade to. To find the OSS version that corresponds to each Gloo Gateway Enterprise release, see the Gloo Gateway Enterprise changelogs.export GLOOCTL_VERSION=<version>
Upgrade your version of
glooctl
.glooctl upgrade --release v${GLOOCTL_VERSION}
Verify the
glooctl
CLI is installed and running the appropriate version. In the output, the Client is your local version. The Server is the version that runs in your cluster, and isundefined
if Gloo Gateway is not installed yet.glooctl version -o table
Uninstall the CLI
To uninstall glooctl
, you can delete the executable file from your system, such as on macOS in the following example.
rm ~/.gloo/bin/glooctl
Skew policy
Use the same version of the glooctl
CLI as the Gloo Gateway version that you installed in your cluster.
- Slight skews within minor versions typically work, such as
glooctl
1.18.1 and Gloo 1.18.0. - Compatibility across beta versions is not guaranteed, even within minor version skews.
- To resolve bugs in
glooctl
, you might have to upgrade the CLI to a specific or latest version.
Reference documentation
For more information about each glooctl
command, see the CLI documentation or run the help flag for a command.
glooctl --help
Other command line tools
As you use Gloo Gateway, you might need the following common cluster management command line tools on your local system.
CLI tool | Description |
---|---|
Cloud provider CLI | The CLI to interact with your preferred cloud provider, such as aws or gcloud . You might also have local cluster testing tools such as kind or k3d . gcloud . |
istioctl | The Istio command line tool, if you plan to use the Istio integration in your Gloo Gateway environment. The guides in this documentation use Istio version 1.22.4. To check your installed version, run istioctl version . |
helm | The Kubernetes package manager, to customize multiple settings in a Gloo Gateway installation. |
jq | Parse JSON output, such as from logs, to get values that you can use in subsequent commands, environment variables, or other contexts. |
kubectl | The Kubernetes command line tool. Download the kubectl version that is within one minor version of the Kubernetes clusters you plan to use with Gloo. |
openssl | The default openssl version that is included in macOS is LibreSSL, which does not work with these instructions. Make sure that you have the OpenSSL version of openssl , not LibreSSL.openssl version must be at least 1.1.
|