Single cluster management
Install the Gloo UI and enable insights for your environment by deploying the Gloo management plane in your cluster.
This guide shows you how to deploy the Gloo management plane in one cluster. If you prefer to create a multicluster setup, in which you deploy the Gloo management plane into a dedicated management cluster, and the Gloo data plane into one or more workload clusters that run Istio service meshes, see Set up multicluster management.
Gloo Mesh deploys alongside your Istio installations in single or multicluster environments, and gives you instant insights into your Istio environment through a custom dashboard. You can follow this guide to customize settings for an advanced Gloo Mesh installation. To learn more about the benefits and architecture, see About.
Before you begin
Install the following command-line (CLI) tools.
helm
, the Kubernetes package manager.kubectl
, the Kubernetes command line tool. Download thekubectl
version that is within one minor version of the Kubernetes clusters you plan to use.meshctl
, the Solo command line tool.curl -sL https://run.solo.io/meshctl/install | GLOO_MESH_VERSION=v2.7.4 sh - export PATH=$HOME/.gloo-mesh/bin:$PATH
Set your Gloo Mesh license key as an environment variable. If you do not have one, contact an account representative. If you prefer to specify license keys in a secret instead, see Licensing. To check your license’s validity, you can run
meshctl license check --key $(echo $GLOO_MESH_LICENSE_KEY} | base64 -w0)
.export GLOO_MESH_LICENSE_KEY=<license_key>
Set the Gloo Mesh version. This example uses the latest version. You can find other versions in the Changelog documentation. Append
-fips
for a FIPS-compliant image, such as2.7.4-fips
. Do not includev
before the version number.export GLOO_VERSION=2.7.4
Create or use an existing Kubernetes cluster for a single-cluster setup, or for a multicluster setup, at least two existing Kubernetes clusters. The instructions in this guide assume one management cluster and two workload clusters.
- The cluster name must be alphanumeric with no special characters except a hyphen (-), lowercase, and begin with a letter (not a number).
- Production installations: Review Best practices for production to prepare your optional security measures. For example, before you begin your Gloo installation, you can provide your own certificates to secure the management server and agent connection, and set up secure access to the Gloo UI.
Install Gloo Mesh
Install all Gloo Mesh components in the same cluster as your Istio service mesh.
Save the name of your cluster as an environment variable.
export CLUSTER_NAME=<cluster_name>
Add and update the Helm repository for Gloo.
helm repo add gloo-platform https://storage.googleapis.com/gloo-platform/helm-charts helm repo update
Install the Gloo CRDs.
helm upgrade -i gloo-platform-crds gloo-platform/gloo-platform-crds \ --namespace=gloo-mesh \ --create-namespace \ --version=$GLOO_VERSION \ --set installEnterpriseCrds=false
Prepare a Helm values file to provide your customizations. To get started, you can use the minimum settings in the following profile as a basis. These settings enable all components that are required for a single-cluster Gloo Mesh installation.
curl https://storage.googleapis.com/gloo-platform/helm-profiles/$GLOO_VERSION/gloo-mesh-single-cluster.yaml > gloo-single.yaml open gloo-single.yaml
Edit the file to provide your own details for settings that are recommended for production deployments, such as the following settings.
For more information about the settings you can configure:- See Best practices for production.
- See all possible fields for the Helm chart by running
helm show values gloo-platform/gloo-platform --version v2.7.4 > all-values.yaml
. You can also see these fields in the Helm values documentation.
Field Description glooUi.auth
Set up OIDC authorization for the Gloo UI. For more information, see UI authentication. prometheus.enabled
Disable the default Prometheus instance as needed to provide your own. Otherwise, you can keep the default Prometheus server enabled, and deploy a production-level server to scrape metrics from the server. For more information on each option, see Best practices for collecting metrics in production. Use the customizations in your Helm values file to install the Gloo Mesh components in your cluster.
Verify that your Gloo Mesh setup is correctly installed. If not, try debugging the relay connection. Note that this check might take a few seconds to verify that:
- Your Gloo product license is valid and current.
- The Gloo CRDs are installed at the correct version.
meshctl check
Example output:
🟢 License status INFO gloo-mesh enterprise license expiration is 25 Aug 26 10:38 CDT 🟢 CRD version check 🟢 Gloo deployment status Namespace | Name | Ready | Status gloo-mesh | gloo-mesh-ui | 1/1 | Healthy gloo-mesh | gloo-telemetry-collector-agent | 3/3 | Healthy gloo-mesh | prometheus-server | 1/1 | Healthy
If you have not installed Istio yet, see the guides for installing Istio in sidecar or ambient mode.
Next steps
Now that you have Gloo Mesh up and running, check out some of the following resources to learn more about Gloo Mesh and expand your service mesh capabilities.
Istio:
n-4
version support built into Solo distributions of Istio.Gloo Mesh:
- Explore insights to review and improve your setup’s health and security posture.
- When it’s time to upgrade Gloo Mesh, see the upgrade guide.
Help and support:
- Talk to an expert to get advice or build out a proof of concept.
- Join the #gloo-mesh channel in the Solo.io community slack.
- Try out one of the Gloo workshops.