2. Configuration
Smart Agent remote installation requires two key configuration files: config.ini for Smart Agent settings and remote.yaml for defining remote hosts and connection parameters.
Configuration Files Overview
Both configuration files should be located in the Smart Agent installation directory:
The two files you’ll configure:
config.ini- Smart Agent configuration deployed to all remote hostsremote.yaml- Remote hosts and SSH connection settings
config.ini - Smart Agent Configuration
The config.ini file contains the main Smart Agent configuration that will be deployed to all remote hosts.
Location: /home/ubuntu/appdsm/config.ini
Controller Configuration
Configure your AppDynamics Controller connection:
Key Parameters:
ControllerURL: Your AppDynamics SaaS controller endpointControllerPort: HTTPS port for the controller (default: 443)FMServicePort: Flow Monitoring service portAccountAccessKey: Your AppDynamics account access keyAccountName: Your AppDynamics account nameEnableSSL: Enable SSL/TLS encryption (should betruefor production)
Common Configuration
Define the agent’s identity and polling behavior:
Parameters:
AgentName: Name identifier for the agentPollingIntervalInSec: How often the agent polls for data (in seconds)Tags: Custom tags for categorizing agents (comma-separated)ServiceName: Optional service name for logical grouping
Telemetry Settings
Configure logging and profiling:
Parameters:
LogLevel: Logging verbosity (DEBUG,INFO,WARN,ERROR)LogFile: Path where logs will be written on remote hostsProfiling: Enable performance profiling (true/false)
TLS Client Settings
Configure proxy and TLS settings:
Parameters:
Insecure: Skip TLS certificate verification (not recommended for production)AgentHTTPProxy: HTTP proxy server URL (if required)AgentHTTPSProxy: HTTPS proxy server URL (if required)AgentNoProxy: Comma-separated list of hosts to bypass proxy
Auto Discovery
Configure automatic application discovery:
Parameters:
RunAutoDiscovery: Automatically discover applications (true/false)ExcludeLabels: Metrics to exclude from discoveryExcludeProcesses: Process names to exclude from monitoringExcludeUsers: User accounts to exclude from monitoringAutoDiscoveryTimeInterval: How often to run discovery (e.g.,4h,30m)AutoInstall: Automatically install discovered applications
Task Configuration
Configure native instrumentation:
Parameters:
NativeEnable: Enable native instrumentationAutoUpdateLdPreload: Automatically update LD_PRELOAD settings
remote.yaml - Remote Hosts Configuration
The remote.yaml file defines the remote hosts where Smart Agent will be installed and the connection parameters.
Location: /home/ubuntu/appdsm/remote.yaml
Example Configuration
Global Settings
max_concurrency: Maximum number of hosts to process simultaneously
- Default:
4 - Increase for faster deployment to many hosts
- Decrease if experiencing network or resource constraints
remote_dir: Installation directory on remote hosts
- Default:
/opt/appdynamics/appdsmartagent - Must be an absolute path
- User must have write permissions
Protocol Configuration
type: Connection protocol
- Value:
ssh
auth.username: SSH username for authentication
- Example:
ubuntu,ec2-user,centos - Must match the user configured on remote hosts
auth.private_key_path: Path to SSH private key
- Must be an absolute path
- Key must be accessible and have proper permissions (600)
auth.privileged: Run agent with elevated privileges
true: Install as root/systemd servicefalse: Install as a user process- Recommended:
truefor production deployments
auth.ignore_host_key_validation: Skip SSH host key verification
true: Skip verification (useful for testing)false: Validate host keys (recommended for production)
auth.known_hosts_path: Path to SSH known_hosts file
- Default:
/home/ubuntu/.ssh/known_hosts - Used when host key validation is enabled
Host Definitions
Each host entry requires:
host: IP address or hostname of the remote machine
- Can be IPv4, IPv6, or hostname
- Must be reachable from the control node
port: SSH port
- Default:
22 - Change if SSH is running on a non-standard port
user: User account that will own the Smart Agent process
- Typically
rootfor system-wide installation - Can be a regular user for user-specific installation
group: Group that will own the Smart Agent process
- Typically matches the user (e.g.,
root)
Adding More Hosts
To add additional remote hosts, append to the hosts list:
Tip
You can add as many hosts as needed. The max_concurrency setting controls how many are processed in parallel.
Verifying Configuration
Before proceeding with installation, verify your configuration files:
Review remote.yaml
Check that:
- All host IP addresses are correct
- SSH key path is valid
- Remote directory path is appropriate
Review config.ini
Verify that:
- Controller URL and account information are correct
- Log file paths are valid
- Settings match your environment requirements
Validate YAML Syntax
Ensure your YAML file is properly formatted:
If the command completes without errors, your YAML syntax is valid.
Once your configuration files are ready, you can proceed with the installation!