Skip to content
Paula Gombar edited this page Sep 30, 2019 · 15 revisions

List of frequently asked questions:

What does "Goal state agent" mean in "waagent --version" output?

The command waagent --version displays output similar to the following.

# sudo waagent -version
WALinuxAgent-2.2.20 running on ubuntu 16.04
Python: 3.5.2
Goal state agent: 2.2.26

NOTE: waagent is typically located in /usr/sbin.

Two versions are displayed:

  1. WALinuxAgent-x.x.xx
  2. Goal state agent: x.x.xx

The agent is split into two parts.

  1. Provision handler and daemon which is WALinuxAgent-x.x.xx
  2. Extension handler which is Goalstate agent: x.x.xx

WALinuxAgent-x.x.xx represents provisioning and daemon. This version ships with the image, and is not upgraded except by the package manager. The version can be queried using the package manager.

  1. yum list WALinuxAgent for CentOS and RHEL
  2. apt list WALinuxAgent for Debian and Ubuntu
  3. zypper info python-azure-agent for SuSE

During provisioning, the agent will configure the user name and password (or SSH key), and signal Azure that provisioning has completed.

The daemon is responsible for ensuring the extension handler is always running. If the extension handler process dies, the daemon will automatically restart it.

The extension handler is responsible for managing extensions and reporting VM status. Extension Handler is auto-upgraded by default as new releases roll out. This is controlled via the configuration option AutoUpdate.Enabled in /etc/waagent.conf. A value of 'y' enables auto-update (the default), and 'n' disables it. The core functionality of the agent is contained in the extension handler, which is why we encourage users to maintain an up to date version.

NOTE: distro vendors control the setting of this flag, and not all distros default to a value of 'y'.

The relationship between the daemon and extension handler can be see using the ps command.

# ps -ef | grep -i agent
root       2058      1  0 04:49 ?        00:00:00 /usr/bin/python -u /usr/sbin/waagent -daemon
root       2063   2058  2 04:49 ?        00:08:21 python -u bin/WALinuxAgent-2.2.25-py2.7.egg -run-exthandlers

Please review the Configuration section of the documentation to learn more about /etc/waagent.conf and the options available.

AutoUpdate.Enabled Type: Boolean Default: y
Enable or disable auto-update for goal state processing; default is enabled.

Please review the How to update the Azure Linux Agent on a VM to learn more about keeping your agent up to date.

How to remove the agent?

Please note: this is an unsupported scenario.

If you really need to remove the agent, you will need to stop the service first and then use the appropriate package manager to uninstall the service.

Example for Ubuntu:

systemctl stop walinuxagent
sudo apt-get remove walinuxagent
rm -rf /var/lib/waagent
Clone this wiki locally