Get a license key

To get Gloo Mesh Core license, contact an account representative.

Provide your license key during installation

When you install Gloo Mesh Core in your management cluster, you provide your license keys either directly in your meshctl install command or Helm values file, or in a secret that you pass into the command or values file.

Trial license

  1. Save your trial license key as an environment variable.
      export GLOO_TRIAL_LICENSE_KEY=<gloo-trial-license-key>
      
  2. Decide how you want to provide your trial key during installation.

Standard license

  1. Save your standard license key as an environment variables.
      export GLOO_MESH_CORE_LICENSE_KEY=<gloo-core-license-key>
      
  2. Decide how you want to provide your license key during installation.

Monitor your license

You can check your license, including your license expiration date, in multiple ways.

CLI

To check your current licenses with the meshctl CLI, you can use the meshctl license check command.

  • To pass in a license key directly, encode the key to base64 and pass it in the --key flag. For example, to check your Gloo Mesh Core and Gloo Mesh Core license keys, you can run the following command:
      meshctl license check --key $(echo ${GLOO_GATEWAY_LICENSE_KEY} | base64 -w0),$(echo ${GLOO_MESH_LICENSE_KEY} | base64 -w0) 
      
  • If you store your license keys in a Kubernetes secret, you can pass the secret YAML file in the --secrets-file flag instead.
      meshctl license check --secrets-file license-keys.yaml
      

In this example output, the Gloo Mesh Core license is current and valid. The expiration date is listed so that you can update your license before it expires.

  INFO  License key gloo-core-license-key for product gloo-gateway is valid. Expires at 08 Oct 24 12:31 CEST
SUCCESS  Licenses are valid
  

In this example output, the Gloo Mesh Core license is invalid. Check your license to ensure you entered it correctly, and if you pass the license key in the --key flag, be sure to encode it in base64.

  WARNING  License key gloo-core-license-key is not valid. Make sure that the license is correct. For help or to request a new license, contact Solo Support. See https://docs.solo.io/gloo-mesh-enterprise/main/support/support-ticket/
ERROR  Invalid licenses found
  

In this example output, the Gloo Mesh Core license is valid but is expired. You can update your license in your Gloo environment.

  WARNING  Your gloo-core license expired on 2024-01-24 19:30:53 +0100 CET. To get a new license, contact Support.
ERROR  License is expired. For more info, see https://docs.solo.io/gloo-mesh-enterprise/latest/setup/prepare/licensing/#update-licenses
  

UI

To check your current license with the Gloo UI:

  1. Open the Gloo UI. The Gloo UI is served from the gloo-mesh-ui service on port 8090. You can connect by using the meshctl or kubectl CLIs.

  2. In the header navigation bar, click the gear icon.
  3. Review the status of your license. In the following example, the Gloo Mesh Core license is current and valid. You can also check the expiration date so that you can update your license before it expires.
Figure: Product license statuses in the Gloo UI.

Metrics

Gloo Mesh Core includes license metrics that you can view by using the UI of the built-in Prometheus server. These metrics give you the number of minutes until the license expires, which you can optionally use to set up alerts in Prometheus.

  1. Open the Prometheus UI.

  2. Query the solo_io_gloo_core_license metric.

  3. In the output, check the value of the metric, which is the number of minutes until the license expires. For example, in this output, the Gloo Mesh Core license expires in 247,649 minutes, which equals 171 days, 23 hours, and 29 minutes.

    MetricValue
    solo_io_gloo_core_license{app=“gloo-mesh-mgmt-server”, instance=“10.xx.x.x:9091”, job=“gloo-mesh-mgmt-server”, namespace=“gloo-mesh”, pod=“gloo-mesh-mgmt-server-65bd557b95-v8qq6”, pod_template_hash=“65bd557b95”}247649.2563652057
  4. Optional: If you want to add alerts for these license metrics, such as to remind you to update your license before it expires, you can add alerts to your Helm values file and apply the file during a Gloo upgrade. To get your current Helm values and upgrade Gloo, see Upgrade. For example, you might add the following alert to your values file to remind you to update your Gloo Mesh Core license 30 days before it expires. You can also add similar alerts for other Gloo product licenses, or alerts for other timeframes (such as using expr: solo_io_gloo_core_license < 0 in the case that a license expires). You can review these alerts in the /alerts page of the Prometheus UI.

      ...
    serverFiles:
      alerting_rules.yml:
        groups:
          - name: GlooCoreAlerts
            rules:
              ...
              - alert: GlooCoreLicenseExpiresSoon
                annotations:
                  runbook: https://docs.solo.io/gloo-mesh-core/main/setup/upgrade/#update-licenses
                  summary: The Gloo Mesh Core license expires in 30 days.
                expr: solo_io_gloo_core_license < 1440 * 30
                labels:
                  severity: warning
      

Update licenses

Before your Gloo Mesh Core license expires, you can update the license by performing a Helm upgrade.

For example, if you notice that your Gloo management plane deployments are in a crash loop, your license might be expired. You can check the logs for one of the deployments, such as the management server, to look for an error message like the following:

  meshctl logs mgmt
  
  {"level":"fatal","ts":1628879186.1552186,"logger":"gloo-mesh-mgmt-server","caller":"cmd/main.go:24","msg":"License is invalid or expired, crashing - license expired", ...
  

To update your license, see the upgrade guide.