Installing the Ops Agent on a single VM

The Ops Agent collects logs and metrics on Compute Engine instances, sending your logs to Cloud Logging and your metrics to Cloud Monitoring.

Before you begin

To install the agent, ensure that you have the following:

Installing the agent on a single VM

To install the agent, use the following instructions.

Installing the latest version of the agent

To install the latest version of the agent, complete the following steps.

Linux

  1. Open a terminal connection to your VM instance using SSH or a similar tool and ensure you have sudo access.

  2. Change to a directory you have write access to, for example your home directory.

  3. Run:

    curl -sSO https://dl.google.com/cloudagents/add-google-cloud-ops-agent-repo.sh
    sudo bash add-google-cloud-ops-agent-repo.sh --also-install
    

Windows

  1. Connect to your instance using RDP or a similar tool and login to Windows.

  2. Open a PowerShell terminal with administrator privileges by right-clicking the PowerShell icon and selecting Run as Administrator.

  3. Run the following PowerShell commands:

    (New-Object Net.WebClient).DownloadFile("https://dl.google.com/cloudagents/add-google-cloud-ops-agent-repo.ps1", "${env:UserProfile}\add-google-cloud-ops-agent-repo.ps1")
    Invoke-Expression "${env:UserProfile}\add-google-cloud-ops-agent-repo.ps1 -AlsoInstall"
    

Installing a specific version of the agent

To install a specific version of the agent, complete the following steps.

Linux

  1. Open a terminal connection to your VM instance using SSH or a similar tool and ensure you have sudo access.

  2. Change to a directory you have write access to, for example your home directory.

  3. Download the agent installation script:

    curl -sSO https://dl.google.com/cloudagents/add-google-cloud-ops-agent-repo.sh
    

    When running the add-google-cloud-ops-agent-repo.sh script, you can also set the following flags:

    • --verbose: Turns on verbose logging during the script execution.
    • --also-install: Installs the agent after adding the agent package repository.
    • --version: Sets the agent version for the script to install.
    • --uninstall: Uninstalls the agent.
    • --remove-repo: Removes the corresponding agent package repository after installing or uninstalling the agent.
    • --dry-run: Triggers only a dry run of the script execution and prints out the commands that it is supposed to execute.
    • --uninstall-standalone-logging-agent: Uninstalls the legacy Logging agent (StackdriverLogging).
    • --uninstall-standalone-monitoring-agent: Uninstalls the legacy Monitoring agent (StackdriverMonitoring).

    See the script comments for more information and example usage.

  4. Add the agent's package repository and install the agent:

    1. To list the available agent versions in order to select which version to install, refer to Listing all agent versions.

    2. For production environments, you might want to pin to a major version to avoid installing major versions that might include backward incompatible changes. To pin to a major version, run:

      sudo bash add-google-cloud-ops-agent-repo.sh --also-install \
        --version=MAJOR_VERSION.*.*
      

      For example, to pin to the 1.x.x of the agent, run:

      sudo bash add-google-cloud-ops-agent-repo.sh --also-install \
        --version=1.*.*
      
    3. To install a specific version of the agent, run:

      sudo bash add-google-cloud-ops-agent-repo.sh --also-install \
        --version=MAJOR_VERSION.MINOR_VERSION.PATCH_VERSION
      

You can delete the installation script after it runs successfully.

  • To verify that the agent is working as expected, run:

    sudo systemctl status google-cloud-ops-agent"*"
    

    The status of the agent should be OK.

If you have trouble with the installation, refer to the Troubleshooting page.

Windows

  1. Connect to your instance using RDP or a similar tool and login to Windows.

  2. Open a PowerShell terminal with administrator privileges by right-clicking the PowerShell icon and selecting Run as Administrator.

  3. Download the agent installation script:

    (New-Object Net.WebClient).DownloadFile("https://dl.google.com/cloudagents/add-google-cloud-ops-agent-repo.ps1", "${env:UserProfile}\add-google-cloud-ops-agent-repo.ps1")
    

    When running the add-google-cloud-ops-agent-repo.ps1 script, you can also set the following flags:

    • -Verbose: Turns on verbose logging during the script execution.
    • -AlsoInstall: Installs the agent after adding the agent package repository.
    • -Version: Sets the agent version for the script to install.
    • -Uninstall: Uninstalls the agent.
    • -RemoveRepo: Removes the corresponding agent package repository after installing or uninstalling the agent.
    • -WhatIf: Triggers only a dry run of the script execution and prints out the commands that it is supposed to execute.
    • -UninstallStandaloneLoggingAgent: Uninstalls the legacy Logging agent (StackdriverLogging).
    • -UninstallStandaloneMonitoringAgent: Uninstalls the legacy Monitoring agent (StackdriverMonitoring).

    See the script comments for more information and example usage.

  4. Add the agent's package repository and install the agent:

    1. To list the available agent versions in order to select which version to install, refer to Listing all agent versions.

    2. For production environments, you might want to pin to a major version to avoid installing major versions that might include backward incompatible changes. To pin to a major version, run:

      Invoke-Expression "${env:UserProfile}\add-google-cloud-ops-agent-repo.ps1 -AlsoInstall -Version MAJOR_VERSION.*.*"
      

      For example, to pin to the 1.x.x of the agent, run:

      Invoke-Expression "${env:UserProfile}\add-google-cloud-ops-agent-repo.ps1 -AlsoInstall -Version 1.*.*"
      
    3. To install a specific version of the agent, run:

      Invoke-Expression "${env:UserProfile}\add-google-cloud-ops-agent-repo.ps1 -AlsoInstall -Version version-number"
      

      For example:

      Invoke-Expression "${env:UserProfile}\add-google-cloud-ops-agent-repo.ps1 -AlsoInstall -Version 1.0.1"
      

You can delete the installation script after it runs successfully.

  • To verify that the agent is working as expected, run:

    Get-Service google-cloud-ops-agent
    

    The status of the agent should be Running.

If you have trouble with the installation, refer to the Troubleshooting page.

Optional tasks

This section describes how to perform common maintenance tasks.

Configuring an HTTP proxy

If you use an HTTP proxy for proxying requests to the Logging and Monitoring APIs, do the following:

Linux

  1. Edit the following configuration file (create the file if it doesn't already exist):

     /etc/systemd/system.conf
    
  2. Add the following to the file:

     DefaultEnvironment="HTTP_PROXY=http://proxy-ip:proxy-port" "HTTPS_PROXY=http://proxy-ip:proxy-port" "NO_PROXY=http://metadata.google.internal"  # Skip proxy for the local Metadata Server.
    
  3. Reload the environment variables:

     sudo systemctl daemon-reload
    
  4. Restart the agent by running the following command on your VM instance:

     sudo systemctl restart google-cloud-ops-agent.target
    

Windows

  1. If you use an HTTP proxy, run the following command from an administrator command prompt. This sets the HTTP_PROXY and HTTPS_PROXY environment variables so that the agent can send data to Google Cloud's operations suite using outbound HTTPS:

    setx HTTP_PROXY http://proxy-ip:proxy-port /m
    setx HTTPS_PROXY http://proxy-ip:proxy-port /m
    setx no_proxy metadata.google.internal /m
    

Determining the agent version

To determine the version of the Google Cloud's operations suite agent on your system, run the following commands on your VM instance:

CENTOS / RHEL

Run the following command on Red Hat or CentOS Linux:

rpm --query --queryformat '%{NAME} %{VERSION} %{RELEASE} %{ARCH}\n' \
     google-cloud-ops-agent

DEBIAN / UBUNTU

Run the following command on Debian or Ubuntu:

dpkg-query --show --showformat \
    '${Package} ${Version} ${Architecture} ${Status}\n' \
     google-cloud-ops-agent

SLES / SUSE

Run the following command on SUSE:

rpm --query --queryformat '%{NAME} %{VERSION} %{RELEASE} %{ARCH}\n' \
     google-cloud-ops-agent

WINDOWS

Run the following command on Windows:

googet installed google-cloud-ops-agent

Restarting the agent

You must restart the Google Cloud's operations suite agent to pick up changes in configuration files. To restart the agent, use the following instructions.

LINUX

Run the following command on your instance:

 sudo service google-cloud-ops-agent restart

Windows

  1. Connect to your instance using RDP or a similar tool and login to Windows.

  2. Open a PowerShell terminal with administrator privileges by right-clicking the PowerShell icon and selecting Run as Administrator.

  3. Run the following PowerShell command:

Restart-Service google-cloud-ops-agent -Force

Upgrading the agent

To upgrade the Google Cloud's operations suite agent to the latest release, use the following instructions:

Linux

To upgrade the agent to the latest version, run the following command:

sudo bash add-google-cloud-ops-agent-repo.sh --also-install

To upgrade the agent to the latest point release of a specific major version, run the following command:

sudo bash add-google-cloud-ops-agent-repo.sh --also-install \
  --version=MAJOR_VERSION.*.*

Windows

To upgrade to the latest agent release:

  1. Connect to your instance using RDP or a similar tool and login to Windows.

  2. Open a PowerShell terminal with administrator privileges by right-clicking the PowerShell icon and selecting Run as Administrator.

    Copy-Item -Path "C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml" -Destination "C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.bak"
    
  3. Run the following PowerShell commands to remove your installed agent and to run the installation command:

    googet -noconfirm remove google-cloud-ops-agent
    googet -noconfirm install google-cloud-ops-agent
    

Listing all agent versions

To list the available versions of the agent, run the following command:

CENTOS / RHEL

List the available versions of the agent:

sudo yum list --showduplicates google-cloud-ops-agent

DEBIAN / UBUNTU

List the available versions of the agent:

sudo apt-cache madison google-cloud-ops-agent

SLES / SUSE

List the available versions of the agent:

sudo zypper search -s google-cloud-ops-agent

WINDOWS

List the available versions of the agent:

googet available google-cloud-ops-agent

Uninstalling the agent

To remove the Google Cloud's operations suite agent and its configuration files, use the following instructions.

After you uninstall the agent, the Google Cloud Console might take up to one hour to report this change.

Linux

Run the following command:

sudo bash add-google-cloud-ops-agent-repo.sh --uninstall

Windows

To uninstall the Ops Agent, follow the following steps:

  1. Connect to your instance using RDP or a similar tool and login to Windows.

  2. Open a PowerShell terminal with administrator privileges by right-clicking the PowerShell icon and selecting Run as Administrator.

  3. Run the following PowerShell command:

    googet -noconfirm remove google-cloud-ops-agent
    

VMs without remote package access

Installing the Google Cloud's operations suite agent requires access to remote package repositories, for both the agent package and (on Linux) its dependencies.

If you are using VPC-SC or a private network, the network configuration might also affect your ability to install agent dependencies from upstream repositories. The agent packages themselves are accessible by using Private Google Access.

If your VM host's security policy denies access to remote package repositories, we recommend creating a custom VM image with the agent pre-installed and disabling package management in that image.

What's next