This tutorial outlines how to setup an SNMP agent on a Turbonomic instance and Application Discovery (for self-monitoring and control). These instructions could be applied to any other Linux-based VM that is under Turbonomic's control. Overall, SNMP Application Discovery enables Turbonomic to see applications' demand which further enhances its control decisions.
1) Login to a Turbonomic instance with root credentials
2) Install SNMP agent on Turbonomic. Run the following command:
zypper --non-interactive install net-snmp
3) Configure SNMP agent
4) For the following prompts, enter the responses highlighted in RED:
a) Valid answer examples: "all", "none","3","1,2,5"
Read in which (default = all): all
b) Select the file type you wish to create:
(you can create more than one as you run this program)
Select File: 3
c) Select a configuration section for snmpd.conf that you wish to create:
1: Extending the Agent
2: Trap Destinations
3: Agent Operating Mode
4: Monitor Various Aspects of the Running Host
5: System Information Setup
6: Access Control Setup
Select section: 6
d) This section defines who is allowed to talk to your running snmp agent.
1: a SNMPv3 read-write user
2: a SNMPv3 read-only user
3: a SNMPv1/SNMPv2c read-only access community name
4: a SNMPv1/SNMPv2c read-write access community name
Select section: 3
e) The community name to add read-only access for: turbonomic (or choose your own community name)
f) The hostname or network address to accept this community name from [RETURN for all]: <RETURN>
g) The OID that this community should be restricted to [RETURN for no-restriction]: <RETURN>
h) For the next 3 prompts, type the following responses:
5) Restart the SNMP daemon
6) Now, setup Application Discovery in Turbonomic. Navigate to the PolicyTab > Expand Discovery > Select Application Discovery
Define the processes that you would like Turbonomic to monitor on your Linux machine. Click the Green button to add a new process entry. Give a name and a process string to match. For example, I have added: java, mysqld, vmtoolsd, and systemd.
7) Navigate to Application Credentials by expanding Application Discovery > Select Application Credentials
Select the VM group on which you would like to enable application discovery. In my example I've made a custom group (from Group Management) for just my SNMP enabled VMs.
On the far right, check "SNMP Community" and enter in the same community string to setup in step 4e. In my example, it's "turbonomic"
Click "Apply Settings Change"
8) In the next 10-20 minutes you will see new Application entries in the Inventory tab. (For impatient users, you can perform a rediscovery on the hypervisor target that manages the VMs for which you have just configured SNMP. This expedites the visualization of the Application entity in the Inventory.) As defined in step 6, I now see entries for java, mysql, systemd, and vmtoolsd.
Memory and CPU statistics will now be collected on your defined applications. You can then define application priorities to ensure mission critical applications receive the resources they need.