- Agents >
- Automation Agent >
- Install or Update the Automation Agent >
- Install the Automation Agent with
rpm
Packages
Install the Automation Agent with rpm
Packages¶
On this page
Overview¶
Ops Manager Automation relies on an Automation Agent, which must be installed on every server that runs a monitored MongoDB deployment. The Automation Agents periodically poll Ops Manager to determine the goal configuration, deploy changes as needed, and report deployment status back to Ops Manager.
Automation Agents can run only on 64-bit architectures.
Use this procedure to install the agent on RHEL, CentOS, SUSE, Amazon
Linux, and other systems that use rpm
packages.
If you cannot install to a host using the rpm
package, install the agent
using an archive. Ensure this
agent runs as the same system user as the MongoDB process.
Prerequisites¶
Server Networking Access¶
The hosts that serve the MongoDB deployments must:
Have full networking access to each other through their fully qualified domain names (FQDNs). Each host must be able to reach every other host through the FQDN.
To find the FQDN for each host:
On Linux / macOS hosts, run the following command in the Terminal:
On Windows hosts, run the following command in Powershell:
Resolve each FQDN to a unique IP address.
Run the following domain internet groper (
dig
) shell command to find the host’s IP address.Note
dig
is available for Microsoft Windows. Download and install the BIND tools from http://www.isc.org/downloads/Set the Common Name or Subject Alternative Name value of any SSL certificates to the MongoDB host’s FQDN.
The network configuration must allow each Automation Agent to make a direct connection to every MongoDB deployment listed on the Deployment page. Ops Manager does not support port forwarding.
Installing to a Server that Already Runs MongoDB¶
If you install the Automation Agent to a server that is already running a MongoDB process, the agent must have:
- Permission to stop the MongoDB process. The Automation Agent will restart the process using the agent’s own set of MongoDB binaries. If you had installed MongoDB with a package manager, use the same package manager to install the Automation Agent. This gives the agent the same owner as MongoDB.
Read
andWrite
permissions on the MongoDB data directory and log directory.- Permission to stop, start, and update any existing Monitoring and Backup Agents.
Installing to a Server Before Installing MongoDB¶
If you deploy the Automation Agent to a server that does not have
MongoDB installed, ensure the user that owns the Automation Agent has
Read
and Write
permissions on the MongoDB data and log
directories you plan to use.
Procedures¶
This section includes procedures for both installing and updating the Automation Agent.
Install the Automation Agent with an rpm
Package¶
Installation Tip for Binding the Agent to a Project
You can also access install instructions in Ops Manager, including commands you can copy and paste: click Deployment, then Agents, then Downloads & Settings.
Login to Ops Manager.¶
Begin or Manage a Deployment¶
- Click Build New or Manage Existing to begin the deployment wizard. When you reach the Install an Automation Agent on each server page, all hosts are listed.
- Click on the Install Agent menu of the first MongoDB host.
- Select <Linux-Distribution> - RPM.
Download the latest version of the Automation Agent archive.¶
On a system shell, issue a curl
command to download the rpm
for the agent that works on your platform:
Note
Replace <OpsManagerHost:Port>
with the hostname and port
of your Ops Manager installation.
For RHEL / CentOS (7.x) and SUSE 12 on x64 architecture:¶
For RHEL / CentOS (7.x) on PowerPC architecture (managing MongoDB 3.4 or later deployments only):¶
For RHEL/CentOS (5.X, 6.X), SUSE 12, and Amazon Linux on x64 architecture:¶
Generate an agent API key or retrieve an existing agent API key for your Ops Manager group.¶
- Click + Generate Key.
Note
The button appears only if the current user is the project owner and the project either has no Agent API keys or just the Original Group API key. An Original Group API key exists only in projects created prior to the new Agent API Key model. The new model allows a project to have more than one key and permits any of the project’s agents to use any of the keys. For more information, see Manage Agent API Keys. If you do not see the + Generate Key button and do not remember your existing agent api key, you can generate a key on the Agent API Keys tab. To navigate to the tab, select Deployment view, then click the Agents tab and then the Agent API Keys tab.
- Enter your password and click Verify.
- Click + Generate Key again.
Important
When you generate an Agent API key, Ops Manager displays it one time only. You must copy it and store it in a secure place. Ops Manager will never display the full key again.
Edit the automation-agent.config
file.¶
In the directory where you installed the Automation Agent, edit the
automation-agent.config
file to either:
Bind to a specific project via the
mmsGroupId
,mmsApiKey
, andmmsBaseUrl
settings.- or -
Add the server to a server pool via
serverPoolKey
,serverPoolPropertiesFile
,serverPoolStateFile
, andmmsBaseUrl
settings.
Open the file with an editor. For example:
Configure for a Specific Project¶
Update the following configuration keys:
- For
mmsGroupId
, set to your ProjectID. - For
mmsApiKey
, set to the project’s agent API key. - For
mmsBaseUrl
, set to the URL of the Ops Manager Application. Include the port number.
Do not configure the server pool settings:
serverPoolKey
, serverPoolPropertiesFile
,
serverPoolStateFile
.
For SUSE 12+ deployments only, configure the
sslTrustedMMSServerCertificate
setting. Omit this step for
other operating systems.
Configure for a Server Pool¶
Update the following configuration keys:
For
mmsBaseUrl
, set to the URL of the Ops Manager Application. Include the port number.For
serverPoolKey
, set to the Server Pool Key.To find the server pool key, in the Admin menu, go to Server Pool view and click on the Agent Configuration tab.
For
serverPoolPropertiesFile
, set to the full filepath of a file that contains server properties. Ensure the Automation Agent can read the file.The properties file contains key/value pairs of the form
<property>=<value>
. The Ops Manager Administrator decides on both the property names and values.Note
Ensure that the properties file contains the desired property names and values before starting the Automation Agent on the server.
Once the server is registered with the pool, changes to the properties file do not take effect until the server is first removed and the Automation Agent restarted.
For
serverPoolStateFile
, set to the full filepath of the file to be used by the Automation Agent.Ensure that the directory path to the file exists and the agent has read and write access to the directory. The file itself need not exist; however, if it does exist, the agent must have read and write access to the file.
Do not configure the project settings:
mmsGroupId
and mmsApiKey
.
For SUSE 12+ deployments only, configure the
sslTrustedMMSServerCertificate
setting. Omit this step for
other operating systems.
Optional: Configure the Automation Agent to use a proxy server.¶
To configure the agent to connect to Ops Manager via a proxy server, you must
specify the server in the httpProxy
environment variable. In the
/etc/mongodb-mms/automation-agent.config
file, set the httpProxy
value to the URL of to
your proxy server:
Prepare the data directory.¶
The data directory stores MongoDB data and must be owned by the
`mongod`
user. For an existing MongoDB deployment, ensure the
directory has the mongod
user as owner. If no MongoDB
deployment exists, create the directory and set the owner.
The following commands create a data directory and set the
owner as the mongodb
user:
Start the Automation Agent.¶
Issue the following command:
Verify that the Automation Agent can connect to Ops Manager.¶
Click Verify Agent on the Automation Agent Installation Instructions modal.
Update the Automation Agent with an rpm
Package¶
Important
If any Automation Agent for any deployment is out of date, Ops Manager displays a warning on the Deployment page.
If you use this procedure, you do not need to stop the agent. The update package automatically stops, unpacks, and then restarts the agent.
Log in the the host where the Automation Agent is installed.¶
Stop any currently running Automation Agents.¶
Issue the following command on the MongoDB host:
Login to Ops Manager.¶
Click Deployment, then Agents, and then Downloads & Settings.¶
Download the latest version of the Automation Agent archive.¶
On a system shell, issue a curl
command to download the rpm
for the agent that works on your platform:
Note
Replace <OpsManagerHost:Port>
with the hostname and port
of your Ops Manager installation.
For RHEL / CentOS (7.x) and SUSE 12 on x64 architecture:¶
For RHEL / CentOS (7.x) on PowerPC architecture (managing MongoDB 3.4 or later deployments only):¶
For RHEL/CentOS (5.X, 6.X), SUSE 12, and Amazon Linux on x64 architecture:¶
Prepare the data directory.¶
The data directory stores MongoDB data and must be owned by the
`mongod`
user. For an existing MongoDB deployment, ensure the
directory has the mongod
user as owner. If no MongoDB
deployment exists, create the directory and set the owner.
The following commands create a data directory and set the
owner as the mongodb
user:
Start the Automation Agent.¶
Issue the following command: