<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Set up on Grafana Labs</title><link>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/</link><description>Recent content in Set up on Grafana Labs</description><generator>Hugo -- gohugo.io</generator><language>en</language><atom:link href="/docs/enterprise-traces/v2.7.x/setup/index.xml" rel="self" type="application/rss+xml"/><item><title>GET hardware requirements</title><link>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/hardware-requirements/</link><pubDate>Mon, 24 Mar 2025 20:44:45 +0000</pubDate><guid>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/hardware-requirements/</guid><content><![CDATA[&lt;h1 id=&#34;get-hardware-requirements&#34;&gt;GET hardware requirements&lt;/h1&gt;


&lt;div data-shared=&#34;gex-hw-req-intro-network.md&#34;&gt;
            &lt;!-- GEx hardware requirements content --&gt;
&lt;p&gt;This page outlines the current hardware requirements for running Grafana Enterprise Traces (GET).
Grafana Labs reserves the right to mark a support issue as ‘unresolvable’ if these requirements are not followed.
Refer to the &lt;a href=&#34;/legal/grafana-enterprise-slas/&#34;&gt;Grafana Labs Enterprise Support SLA&lt;/a&gt; for more details.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;As of February 2025, you must run GET on the managed Kubernetes services offered by AWS (&lt;a href=&#34;https://aws.amazon.com/eks/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Amazon Elastic Kubernetes Service&lt;/a&gt;), GCP (&lt;a href=&#34;https://cloud.google.com/kubernetes-engine&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Google Kubernetes Engine&lt;/a&gt;), or Azure (&lt;a href=&#34;https://azure.microsoft.com/en-us/products/kubernetes-service&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Azure Kubernetes Service&lt;/a&gt;).
Additionally, you must use the managed object storage services offered by AWS (&lt;a href=&#34;https://aws.amazon.com/s3/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;S3&lt;/a&gt;), GCP (&lt;a href=&#34;https://cloud.google.com/storage&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;GCS&lt;/a&gt;), or Azure (&lt;a href=&#34;https://azure.microsoft.com/en-us/products/storage/blobs&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Blob Storage&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;No other deployment modes are supported.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h2 id=&#34;cpu-and-memory&#34;&gt;CPU and memory&lt;/h2&gt;
&lt;p&gt;Deploy on machines with a 1:4 ratio of CPU to memory.
For every CPU core, you should have 4GB of memory.
Grafana Labs recommends deploying onto machines with at least 16 CPU cores and 64GB of memory.
All the nodes in the Kubernetes cluster running GET should be of the same type.&lt;/p&gt;
&lt;h2 id=&#34;network&#34;&gt;Network&lt;/h2&gt;
&lt;p&gt;All components require fast network access.
Nodes the software runs on should be connected by 10 gigabit/second or faster network connection speed.&lt;/p&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;storage&#34;&gt;Storage&lt;/h2&gt;
&lt;p&gt;GET requires fast storage to run.
Any storage solutions you use have to have adequate performance.
Object storage (for example AWS S3 buckets, Google Cloud GCS or Microsoft Azure Storage) buckets or blobs are used to persist trace data for the required retention period.
Your object storage should be large enough to contain 30 days worth of data, the default block retention for GET.&lt;/p&gt;
&lt;p&gt;However, various components of GET (for example, the ingester) also require fast, persistent block storage to be available to the host machine.
For example, in the case of the ingester component, all incoming data is sent to a write-ahead log (WAL) to aggregate trace data into blocks before storing them in object storage, and to help withstand unexpected node termination.&lt;/p&gt;
&lt;p&gt;For every deployment, you need both object and block storage.
Block storage must be memory-state storage, like SSD or NVMEs. Hard drive (platter-based) disk storage is not supported.&lt;/p&gt;
&lt;p&gt;The supported configurations for AWS, GCP, and Azure are in the following sections.&lt;/p&gt;


&lt;div data-shared=&#34;gex-hw-req-storage-tables.md&#34;&gt;
            &lt;!-- Storage requirements tables --&gt;
&lt;h3 id=&#34;block-storage&#34;&gt;Block storage&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;&lt;strong&gt;Platform&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Storage type&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Configuration option&lt;/strong&gt;&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Amazon Web Services&lt;/td&gt;
              &lt;td&gt;Block&lt;/td&gt;
              &lt;td&gt;&lt;code&gt;gp3&lt;/code&gt; General Purpose SSD EBS volumes&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Google Cloud Platform&lt;/td&gt;
              &lt;td&gt;Block&lt;/td&gt;
              &lt;td&gt;&lt;code&gt;pd-ssd&lt;/code&gt; SSD persistent storage&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Microsoft Azure&lt;/td&gt;
              &lt;td&gt;Block&lt;/td&gt;
              &lt;td&gt;&lt;code&gt;Premium SSD&lt;/code&gt; SSD persistent storage&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;object-storage&#34;&gt;Object storage&lt;/h3&gt;
&lt;p&gt;GET requires object storage for configuration storage, as well as long-term data storage.
Amazon AWS S3, GCP GCS, and Azure Blob storage are the only supported object stores for running GET.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;&lt;strong&gt;Platform&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Storage type&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Configuration option&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Comments&lt;/strong&gt;&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Amazon Web Services&lt;/td&gt;
              &lt;td&gt;Object&lt;/td&gt;
              &lt;td&gt;S3 Standard&lt;/td&gt;
              &lt;td&gt;S3 object storage service using the Standard storage class.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Google Cloud Platform&lt;/td&gt;
              &lt;td&gt;Object&lt;/td&gt;
              &lt;td&gt;STANDARD&lt;/td&gt;
              &lt;td&gt;GCS object storage service using the STANDARD storage class in both regional and dual regional storage locations.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Microsoft Azure&lt;/td&gt;
              &lt;td&gt;Object&lt;/td&gt;
              &lt;td&gt;Standard performance with LRS replication&lt;/td&gt;
              &lt;td&gt;Blob Storage object storage service with Standard performance and replication type Locally Redundant Storage (LRS)&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;/div&gt;

        
]]></content><description>&lt;h1 id="get-hardware-requirements">GET hardware requirements&lt;/h1>
&lt;div data-shared="gex-hw-req-intro-network.md">
&lt;!-- GEx hardware requirements content -->
&lt;p>This page outlines the current hardware requirements for running Grafana Enterprise Traces (GET).
Grafana Labs reserves the right to mark a support issue as ‘unresolvable’ if these requirements are not followed.
Refer to the &lt;a href="/legal/grafana-enterprise-slas/">Grafana Labs Enterprise Support SLA&lt;/a> for more details.&lt;/p></description></item><item><title>Deploy GET with Helm</title><link>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/helm-chart/</link><pubDate>Thu, 17 Apr 2025 13:08:48 +0000</pubDate><guid>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/helm-chart/</guid><content><![CDATA[&lt;h1 id=&#34;deploy-get-with-helm&#34;&gt;Deploy GET with Helm&lt;/h1&gt;
&lt;p&gt;The Helm charts for Grafana Enterprise Traces (GET) and Grafana Tempo allow you to configure, install, and upgrade Grafana Tempo or Grafana Enterprise Traces within a Kubernetes cluster.&lt;/p&gt;
&lt;p&gt;The recommended method for installing GET is to use the &lt;a href=&#34;https://github.com/grafana/helm-charts/tree/main/charts/tempo-distributed&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&lt;code&gt;tempo-distributed&lt;/code&gt; Helm chart&lt;/a&gt;, which deploys Tempo or GET in microservices mode.&lt;/p&gt;
&lt;p&gt;To deploy GET using the &lt;code&gt;tempo-distributed&lt;/code&gt; Helm chart, read the &lt;a href=&#34;/docs/helm-charts/tempo-distributed/next/get-started-helm-charts/&#34;&gt;Get started with Grafana Tempo using Helm&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;Monitoring with Grafana Cloud is required for all GET installations.
Professional services will assist you in configuring monitoring for your GET installation.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

]]></content><description>&lt;h1 id="deploy-get-with-helm">Deploy GET with Helm&lt;/h1>
&lt;p>The Helm charts for Grafana Enterprise Traces (GET) and Grafana Tempo allow you to configure, install, and upgrade Grafana Tempo or Grafana Enterprise Traces within a Kubernetes cluster.&lt;/p></description></item><item><title>Set up the GET plugin for Grafana</title><link>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/setup-get-plugin-grafana/</link><pubDate>Wed, 12 Mar 2025 12:54:02 +0000</pubDate><guid>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/setup-get-plugin-grafana/</guid><content><![CDATA[&lt;h1 id=&#34;set-up-the-get-plugin-for-grafana&#34;&gt;Set up the GET plugin for Grafana&lt;/h1&gt;
&lt;p&gt;The Grafana Enterprise Traces (GET) plugin lets you create new tenants and then use the access page to create new roles to publish traces.
These commands are completed using the Grafana user interface in lieu of commands that would normally be completed using the GET CLI.&lt;/p&gt;
&lt;p&gt;This procedure explains how to enable and configure the GET plugin.&lt;/p&gt;
&lt;h2 id=&#34;before-you-begin&#34;&gt;Before you begin&lt;/h2&gt;
&lt;p&gt;To configure the GET plugin, you need:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Grafana Enterprise 8.4.0 or higher&lt;/li&gt;
&lt;li&gt;GET cluster access token&lt;/li&gt;
&lt;li&gt;Microservice deployments require the GET gateway URL, for example: &lt;code&gt;https://gateway.enterprise-traces.svc.cluster.local:3100&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Refer to &lt;a href=&#34;/docs/grafana/latest/installation/kubernetes/#deploy-grafana-enterprise-on-kubernetes&#34;&gt;Deploy Grafana Enterprise on Kubernetes&lt;/a&gt; if you are using Kubernetes. Otherwise, refer to &lt;a href=&#34;/docs/grafana/latest/installation/&#34;&gt;Install Grafana&lt;/a&gt; for more information.&lt;/p&gt;
&lt;h2 id=&#34;install-the-plugin-in-your-grafana-enterprise-instance&#34;&gt;Install the plugin in your Grafana Enterprise instance&lt;/h2&gt;
&lt;p&gt;There are multiple ways to install the plugin to your local Grafana Enterprise instance.
For more information, refer to &lt;a href=&#34;/grafana/plugins/grafana-enterprise-traces-app/?tab=installation&#34;&gt;Grafana Enterprise Traces app installation&lt;/a&gt; (requires login).&lt;/p&gt;
&lt;p&gt;After installing the plugin, you will need to restart the Grafana pod for the plugin to be loaded on startup. If using the &amp;ldquo;Deploy Grafana Enterprise on Kubernetes&amp;rdquo; instructions, you will need to access the shell for the Grafana pod that you have just deployed to use the GET plugin installation instructions &amp;ldquo;Installing on a local Grafana&amp;rdquo;.&lt;/p&gt;
&lt;h2 id=&#34;enable-and-configure-the-plugin&#34;&gt;Enable and configure the plugin&lt;/h2&gt;
&lt;p&gt;To enable and configure the plugin:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Log in to Grafana Enterprise.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;From the top-left menu, select &lt;strong&gt;Configuration&lt;/strong&gt; and then select &lt;strong&gt;Plugins&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Search for &lt;strong&gt;Grafana Enterprise Traces&lt;/strong&gt; plugin. This option is only available if you have GET and Grafana Enterprise licenses installed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;From the &lt;strong&gt;Connection settings&lt;/strong&gt; tab of the plugin, enable the plugin by clicking on &lt;strong&gt;Enable plugin&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Provide the necessary API settings so that the plugin can connect to your cluster:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Access token&lt;/strong&gt;: Enter the admin-scoped access token that you generated when setting up your GET cluster. This is available in the logs output (or other configured output) from the 
    &lt;a href=&#34;/docs/enterprise-traces/v2.7.x/configure/tokengen/&#34;&gt;&lt;code&gt;tokengen&lt;/code&gt; job&lt;/a&gt; for the GET installation. The token is prefixed by the text &lt;code&gt;Token:&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Grafana Enterprise Traces URL&lt;/strong&gt;: Enter the URL of your GET cluster. For single-process clusters, this is any node in the cluster. For microservice deployments, this URL is the GET gateway (for example, &lt;code&gt;http://gateway.enterprise-traces.svc.cluster.local:3100&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Admin API version&lt;/strong&gt;: Choose the relevant API version. For a new installation, select &lt;code&gt;v3&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Click &lt;strong&gt;Test and save configuration&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Navigate to Grafana Enterprise Traces (select the GET, the stylized ‘T’ icon, on the menu bar).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Verify that the plugin loads and can communicate with the GET admin API endpoints. You can quickly test this by selecting the ‘Licenses’ tab from the GET plugin and ensure that you see something like this:&lt;/p&gt;

&lt;div class=&#34;code-snippet code-snippet__mini&#34;&gt;&lt;div class=&#34;lang-toolbar__mini&#34;&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet code-snippet__border&#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;Issuer:
https://grafana.com
Issued at:
2022-06-23 12:37:48
Expires:
2023-06-23 12:37:32
Max number of users:
0
Products:
grafana-enterprise-traces&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Look at the default access policy under the &lt;strong&gt;Access Policies&lt;/strong&gt; tab and ensure that there is a default access policy for the &lt;code&gt;admin&lt;/code&gt; scope.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The next step is to &lt;a href=&#34;../set-up-get-tenants/&#34;&gt;set up a GET tenant and visualize your data&lt;/a&gt;.&lt;/p&gt;
]]></content><description>&lt;h1 id="set-up-the-get-plugin-for-grafana">Set up the GET plugin for Grafana&lt;/h1>
&lt;p>The Grafana Enterprise Traces (GET) plugin lets you create new tenants and then use the access page to create new roles to publish traces.
These commands are completed using the Grafana user interface in lieu of commands that would normally be completed using the GET CLI.&lt;/p></description></item><item><title>Set up GET tenants</title><link>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/set-up-get-tenants/</link><pubDate>Wed, 12 Mar 2025 12:54:02 +0000</pubDate><guid>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/set-up-get-tenants/</guid><content><![CDATA[&lt;h1 id=&#34;set-up-a-tenant-in-your-grafana-enterprise-traces-cluster&#34;&gt;Set up a tenant in your Grafana Enterprise Traces cluster&lt;/h1&gt;
&lt;p&gt;Tenants provide a mechanism for trace isolation.
Access policies may be set on a per-tenant basis.
Authorization of requests is based on specified access policies.&lt;/p&gt;
&lt;p&gt;These instructions assume that you have the &lt;a href=&#34;../setup-get-plugin-grafana/&#34;&gt;Grafana Enterprise Traces (GET) plugin&lt;/a&gt; installed.
Use this plugin to create tenants, access policies, and tokens for your GET cluster.
The steps include:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Create a GET tenant.&lt;/li&gt;
&lt;li&gt;Create an access policy.&lt;/li&gt;
&lt;li&gt;Configure remote-write to your tenant.&lt;/li&gt;
&lt;li&gt;Set up your tenant as a Grafana data source.&lt;/li&gt;
&lt;li&gt;Visualize your data.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;create-a-get-tenant&#34;&gt;Create a GET tenant&lt;/h2&gt;
&lt;p&gt;Once a cluster is running, you can create new tenants.
To create a GET tenant:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Within Grafana Enterprise, navigate to &lt;strong&gt;Apps&lt;/strong&gt; &amp;gt; &lt;strong&gt;Grafana Enterprise Traces&lt;/strong&gt; &amp;gt; &lt;strong&gt;Tenants&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Click on &lt;strong&gt;Create tenant&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Choose a name for this tenant. For demonstration purposes, use the name &lt;code&gt;dev-tenant&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Select the cluster.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Click &lt;strong&gt;Create tenant&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;create-an-access-policy&#34;&gt;Create an access policy&lt;/h2&gt;
&lt;p&gt;Access policies are used to authorize actions and operations by specified tenants.
Access policies have a realm, which defines the set of tenants they apply to, and a scope, which defines the set of actions upon which they confer permissions to use.&lt;/p&gt;
&lt;p&gt;Grafana Enterprise requires a data source access policy and token to access the traces in the tenant named &lt;code&gt;dev-tenant&lt;/code&gt;.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Navigate to &lt;strong&gt;Apps&lt;/strong&gt; &amp;gt; &lt;strong&gt;Grafana Enterprise Traces&lt;/strong&gt; &amp;gt; &lt;strong&gt;Access policies&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create access policy&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Choose a name for the policy. For demonstration purposes, use &lt;code&gt;dev-read-write-policy&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Under &lt;strong&gt;Scopes&lt;/strong&gt;, select the toggle next to the question &lt;strong&gt;Are you planning on creating a data source that uses this access policy?&lt;/strong&gt;. This enables the &lt;strong&gt;traces:read&lt;/strong&gt; policy.&lt;/li&gt;
&lt;li&gt;Enable the scope &lt;strong&gt;traces:write&lt;/strong&gt; to create an access policy that grants access for both reading and writing trace data (as the previous step toggles the &lt;strong&gt;traces:read&lt;/strong&gt; policy automatically).&lt;/li&gt;
&lt;li&gt;Select the tenant &lt;code&gt;dev-tenant&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Click on &lt;strong&gt;Create&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;From the newly created access policy, click &lt;strong&gt;Add token&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Name the token &lt;code&gt;dev-token&lt;/code&gt; and click on &lt;strong&gt;Create&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In the next window, copy the token by selecting &lt;strong&gt;Copy to clipboard&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;At this point, you can add a data source to your Grafana Enterprise instance by using the &lt;strong&gt;Create a data source&lt;/strong&gt; option on this dialog or by manually adding one using the procedure below.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Select &lt;strong&gt;Create a data source&lt;/strong&gt;. The data source fields are automatically configured based upon your instance.&lt;/li&gt;
&lt;li&gt;Verify the created data source by opening the &lt;strong&gt;Configuration&lt;/strong&gt; option in the Grafana menu and then selecting &lt;strong&gt;Data sources&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;set-up-remote-write-to-your-tenant&#34;&gt;Set up remote-write to your tenant&lt;/h2&gt;
&lt;p&gt;To enable writes to your cluster, add a remote-write configuration snippet to the configuration file of an existing Grafana Alloy instance.
If you do not have an existing traces collector, refer to &lt;a href=&#34;/docs/alloy/latest/&#34;&gt;Set up with Grafana Alloy&lt;/a&gt;.
For Kubernetes, refer to the &lt;a href=&#34;/docs/alloy/latest/get-started/install/kubernetes/&#34;&gt;Grafana Alloy Kubernetes quick start guide&lt;/a&gt;.&lt;/p&gt;


&lt;div data-shared=&#34;agent-deprecation.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-caution&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Caution&lt;/p&gt;&lt;p&gt;Grafana Alloy is the new name for our distribution of the OTel collector.
Grafana Agent has been deprecated and is in Long-Term Support (LTS) through October 31, 2025. Grafana Agent will reach an End-of-Life (EOL) on November 1, 2025.
Read more about why we recommend migrating to &lt;a href=&#34;/blog/2024/04/09/grafana-alloy-opentelemetry-collector-with-prometheus-pipelines/&#34;&gt;Grafana Alloy&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;The sample below is an example Alloy configuration below for the Kubernetes Helm chart (the &lt;code&gt;values.yaml&lt;/code&gt; manifest):&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;YAML&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-yaml&#34;&gt;alloy:
  extraPorts:
    - name: otlp-grpc
      port: 4317
      targetPort: 4317
      protocol: TCP
  configMap:
    create: true
    content: |-
      // Creates a receiver for OTLP gRPC.
      // You can easily add receivers for other protocols by using the correct component
      // from the reference list at: https://grafana.com/docs/alloy/latest/reference/components/
      otelcol.receiver.otlp &amp;#34;otlp_receiver&amp;#34; {
        // Listen on all available bindable addresses on port 4317 (which is the
        // default OTLP gRPC port) for the OTLP protocol.
        grpc {
          endpoint = &amp;#34;0.0.0.0:4317&amp;#34;
        }

        // Output straight to the OTLP gRPC exporter. We would usually do some processing
        // first, most likely batch processing, but for this example we pass it straight
        // through.
        output {
          traces = [
            otelcol.exporter.otlp.get.input,
          ]
        }
      }

      // Define an OTLP gRPC exporter to send all received traces to GET.
      // The unique label &amp;#39;get&amp;#39; is added to uniquely identify this exporter.
      otelcol.exporter.otlp &amp;#34;get&amp;#34; {
          // Define the client for exporting.
          client {
              // Use Header authentication, defined below.
              auth = otelcol.auth.headers.credentials.handler
              // Send to the locally running Tempo instance, on port 4317 (OTLP gRPC).
              endpoint = &amp;#34;http://get-cluster-tempo-enterprise-gateway.get.svc.cluster.local:3100&amp;#34;
              // Configure TLS settings for communicating with the endpoint.
              tls {
                  // The connection is insecure.
                  insecure = true
                  // Do not verify TLS certificates when connecting.
                  insecure_skip_verify = true
              }
          }
      }

      // A default GET install doesn&amp;#39;t expose a TLS-encrypted gateway.
      // Grafana Alloy expects gRPC (HTTP/2) traffic to be TLS-encrypted, and
      // therefore fails if the &amp;#34;basic_auth&amp;#34; authorization block is used. Because of
      // this, use the generic &amp;#34;headers&amp;#34; block to authenticate a GET
      // tenant and token.
      // The authorization must be exposed as a &amp;#39;&amp;lt;tenant&amp;gt;:&amp;lt;writeToken&amp;gt;&amp;#39; pair that
      // has been base64 encrypted.
      otelcol.auth.headers &amp;#34;credentials&amp;#34; {
        header {
          key = &amp;#34;Authorization&amp;#34;
          value = &amp;#34;Basic ZGV2LXRlbmFudDpaR1YyTFhKbFlXUXRkM0pwZEdWeUxYQnZiR2xqZVMxa1pXMXZMWFJ2YTJWdU9qWS9lemR1TVRWaEpEUXZQR012THpRMVN6Z3NKakZiTVE9PQo=&amp;#34;
        }
      }&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;In the above Flow configuration, the token for authentication was generated using the &lt;code&gt;dev-tenant&lt;/code&gt; user and writeable token via:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;echo &amp;#39;dev-tenant:ZGV2LXJlYWQtd3JpdGVyLXBvbGljeS1kZW1vLXRva2VuOjY/ezduMTVhJDQvPGMvLzQ1SzgsJjFbMQ==&amp;#39; | base64&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;create-a-grafana-data-source&#34;&gt;Create a Grafana data source&lt;/h2&gt;
&lt;p&gt;To allow Grafana to read traces from GET, you must create a Tempo data source with the proper credentials.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Navigate to &lt;strong&gt;Connections&lt;/strong&gt; &amp;gt; &lt;strong&gt;Data Sources&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Click on &lt;strong&gt;Add a data source&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Select &lt;strong&gt;Tempo&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Set the URL to &lt;code&gt;http://&amp;lt;get-gateway-host&amp;gt;:&amp;lt;http_listen_port&amp;gt;/&amp;lt;http_api_prefix&amp;gt;&lt;/code&gt;, filling in the path to your gateway and the configured HTTP API prefix.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enable &lt;strong&gt;Basic Auth&lt;/strong&gt;. Use &lt;strong&gt;User&lt;/strong&gt; &lt;code&gt;dev-tenant&lt;/code&gt; and the token from your clipboard as the &lt;strong&gt;Password&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Click &lt;strong&gt;Save &amp;amp; Test&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;You should see a message that says &lt;code&gt;Data source is working&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id=&#34;visualize-your-data&#34;&gt;Visualize your data&lt;/h2&gt;
&lt;p&gt;Once you have created a data source, you can visualize your traces in the &lt;strong&gt;Grafana Explore&lt;/strong&gt; page.&lt;/p&gt;
&lt;h3 id=&#34;test-your-configuration-using-the-intro-to-mltp-application&#34;&gt;Test your configuration using the Intro to MLTP application&lt;/h3&gt;
&lt;p&gt;The Intro to MLTP application provides an example five-service application that generates data for Tempo, Mimir, Loki, and Pyroscope.
This procedure installs the application on your cluster so you can generate meaningful test data.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Navigate to &lt;a href=&#34;https://github.com/grafana/intro-to-mltp&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;https://github.com/grafana/intro-to-mltp&lt;/a&gt; to get the Kubernetes manifests for the Intro to MLTP application.&lt;/li&gt;
&lt;li&gt;Clone the repository using commands similar to the ones below:

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;  git clone git&amp;#43;ssh://github.com/grafana/intro-to-mltp
  cp intro-to-mltp/k8s/mythical/* ~/tmp/intro-to-mltp-k8s&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Change to the cloned repository: &lt;code&gt;cd intro-to-mltp/k8s/mythical&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;In the &lt;code&gt;mythical-beasts-deployment.yaml&lt;/code&gt; manifest, alter each &lt;code&gt;TRACING_COLLECTOR_HOST&lt;/code&gt; environment variable instance value to point to the Alloy location. For example, based on an Alloy installation in the default namespace called and with a Helm installation called &lt;code&gt;test&lt;/code&gt;:

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;YAML&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-yaml&#34;&gt; 	- env:
     ...
     - name: TRACING_COLLECTOR_HOST
       value: test-grafana-alloy.default.svc.cluster.local&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Deploy the Intro to MLTP application. It deploys into the default namespace.

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;    kubectl apply -f mythical-beasts-service.yaml,mythical-beasts-persistentvolumeclaim.yaml,mythical-beasts-deployment.yaml&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Once the application is deployed, go to Grafana Enterprise and select the &lt;strong&gt;Explore&lt;/strong&gt; menu item.&lt;/li&gt;
&lt;li&gt;Select the &lt;strong&gt;GET data source&lt;/strong&gt; from the list of data sources.&lt;/li&gt;
&lt;li&gt;Select the &lt;code&gt;Search&lt;/code&gt; Query type for the data source.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Run query&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Traces from the application are displayed in the traces &lt;strong&gt;Explore&lt;/strong&gt; panel.&lt;/li&gt;
&lt;/ol&gt;
]]></content><description>&lt;h1 id="set-up-a-tenant-in-your-grafana-enterprise-traces-cluster">Set up a tenant in your Grafana Enterprise Traces cluster&lt;/h1>
&lt;p>Tenants provide a mechanism for trace isolation.
Access policies may be set on a per-tenant basis.
Authorization of requests is based on specified access policies.&lt;/p></description></item><item><title>Monitor GET using Grafana Cloud</title><link>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/metamonitoring/</link><pubDate>Thu, 17 Apr 2025 13:08:48 +0000</pubDate><guid>https://grafana.com/docs/enterprise-traces/v2.7.x/setup/metamonitoring/</guid><content><![CDATA[&lt;h1 id=&#34;monitor-get-using-grafana-cloud&#34;&gt;Monitor GET using Grafana Cloud&lt;/h1&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;Monitoring with Grafana Cloud is required for all GET installations.
Professional services will assist you in configuring monitoring for your GET installation.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;



&lt;div data-shared=&#34;gex-metamonitoring.md&#34;&gt;
            &lt;!-- # Metamonitoring using Grafana Cloud --&gt;
&lt;p&gt;Grafana Labs champions the value of observability for your software applications and infrastructure.
This extends to the Database solutions offered as part of the Grafana Enterprise Stack: namely Grafana Enterprise Metrics, Logs, and Traces.
Successful operation of these databases requires comprehensive monitoring and alerting.
This allows the teams managing these Databases to swiftly identify issues and diagnose their root causes.
Grafana Labs itself maintains robust observability for the Grafana Enterprise Metrics, Logs, and Traces Databases it operates to power &lt;a href=&#34;/products/cloud/&#34;&gt;Grafana Cloud&lt;/a&gt;, our hosted observability-as-a-service offering.&lt;/p&gt;
&lt;p&gt;Our recommended approach for monitoring your Grafana Enterprise Databases is to use Grafana Cloud.
This approach is the easiest, most robust way to observe your database in accordance with Grafana Labs best practices and is included free of charge with your purchase of a Grafana Enterprise Database.&lt;/p&gt;
&lt;h2 id=&#34;how-it-works&#34;&gt;How it works&lt;/h2&gt;
&lt;p&gt;Each Grafana Enterprise Database is instrumented for observability by default.
Each Database component exposes metrics on a scrapable Prometheus compatible &lt;code&gt;/metrics&lt;/code&gt; endpoint and emits logs and traces.&lt;/p&gt;
&lt;p&gt;The Helm chart for each Enterprise Database includes an option for meta monitoring.
When enabled, the Helm chart deploys Grafana Alloy alongside the Enterprise Database.
Alloy is configured to collect metrics and logs from all database components and apply additional metadata, such as extra labels to indicate where the metrics or logs were scraped from.
&lt;em&gt;Alloy ONLY collects logs and metrics relevant to the internal system state of the Grafana Enterprise Databases; no other information is collected.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;From there, Grafana Alloy forwards the telemetry data to your Grafana Cloud account, where it can be stored and queried to help you understand the health of your Grafana Enterprise Database.
You can access this account at any time, and have complete control over who has access to it using Grafana Cloud’s &lt;a href=&#34;/docs/grafana-cloud/account-management/authentication-and-permissions/&#34;&gt;identity and access management&lt;/a&gt; functionality.
Availability and uptime adhere to the Grafana Cloud SLA.&lt;/p&gt;
&lt;p&gt;&lt;img
  class=&#34;lazyload d-inline-block&#34;
  data-src=&#34;/media/docs/loki/gex-metamonitoring-alloy.svg&#34;
  alt=&#34;Overview of monitoring a Grafana Enterprise Database product using Grafana Cloud&#34;/&gt;&lt;/p&gt;
&lt;p&gt;Additionally, this Grafana Cloud account is preconfigured with Grafana Labs’ recommended dashboards for visualizing the telemetry data collected from your Grafana Enterprise Database.
Should you choose, you can also create alerts on the data in this account to notify you when the telemetry data collected from your Grafana Enterprise Database is no longer within expected parameters.
Grafana Labs can provide a recommended set of alerts to configure.&lt;/p&gt;
&lt;p&gt;If you need to file a support escalation, you can choose to give the Grafana Labs support team access to the telemetry data in your Grafana Cloud account.
Historically, Grafana Labs has found that faster access to telemetry data radically reduces the time needed to resolve escalations.&lt;/p&gt;
&lt;/div&gt;

        
]]></content><description>&lt;h1 id="monitor-get-using-grafana-cloud">Monitor GET using Grafana Cloud&lt;/h1>
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>Monitoring with Grafana Cloud is required for all GET installations.
Professional services will assist you in configuring monitoring for your GET installation.&lt;/p></description></item></channel></rss>