Menu

This is documentation for the next version of Alloy. For the latest stable release, go to the latest version.

Open source

Install Grafana Alloy with Chef

You can use Chef to install and manage Alloy.

Before you begin

  • These steps assume you already have a working Chef setup.
  • You can add the following resources to any recipe.
  • These tasks install Alloy from the package repositories. The tasks target Linux systems from the following families:
    • Debian, including Ubuntu
    • RedHat Enterprise Linux, including Fedora
    • Amazon Linux

Steps

To add Alloy to a host:

  1. Add the following resources to your Chef recipe to add the Grafana package repositories to your system:

    ruby
    if platform_family?('debian', 'rhel', 'amazon', 'fedora')
      if platform_family?('debian')
        remote_file '/etc/apt/keyrings/grafana.gpg' do
          source 'https://apt.grafana.com/gpg.key'
          mode '0644'
          action :create
          end
    
        file '/etc/apt/sources.list.d/grafana.list' do
          content "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com/ stable main"
          mode '0644'
          notifies :update, 'apt_update[update apt cache]', :immediately
        end
    
        apt_update 'update apt cache' do
          action :nothing
        end
      elsif platform_family?('rhel', 'amazon', 'fedora')
        yum_repository 'grafana' do
          description 'grafana'
          baseurl 'https://rpm.grafana.com/oss/rpm'
          gpgcheck true
          gpgkey 'https://rpm.grafana.com/gpg.key'
          enabled true
          action :create
          notifies :run, 'execute[add-rhel-key]', :immediately
        end
    
        execute 'add-rhel-key' do
          command "rpm --import https://rpm.grafana.com/gpg.key"
          action :nothing
        end
      end
    else
        fail "The #{node['platform_family']} platform is not supported."
    end
  2. Add the following resources to install and enable the alloy service:

    ruby
    package 'alloy' do
      action :install
      flush_cache [ :before ] if platform_family?('amazon', 'rhel', 'fedora')
      notifies :restart, 'service[alloy]', :delayed
    end
    
    service 'alloy' do
      service_name 'alloy'
      action [:enable, :start]
    end

Configuration

The alloy package installs a default configuration file that doesn’t send telemetry anywhere.

The default configuration file location is /etc/alloy/config.alloy. You can replace this file with your own configuration or create a configuration file for the service to use.

Next steps