Create a file to prevent installing ActiveMQ features on Minion startup
sudo vi etc/featuresBoot.d/disable-activemq.boot
Add the following lines to disable ActiveMQ features and save the file
!minion-jms
!opennms-core-ipc-rpc-jms
!opennms-core-ipc-sink-camel
Create a file to install gRPC features on startup
sudo vi etc/featuresBoot.d/grpc.boot
Add the gRPC client features
opennms-core-ipc-grpc-client
Configure the gRPC client and the Minion location via the Karaf Shell
ssh -p 8201 admin@localhost
Configure the Minion location and REST endpoint
config:edit org.opennms.minion.controller(1)
config:property-set location my-location(2)
config:update(3)
1 Edit the minion configuration
2 Replace my-location with a location name representing your remote location the Minion is running
3 Save the configuration
By default the Minion generates a unique id. If you want to provide a human readable Minion identifier yourself with config:property-set id my-minion-name
Configure the gRPC endpoint
config:edit org.opennms.core.ipc.grpc.client
config:property-set host core-instance-ip(1)
config:property-set port 8990(2)
config:update(3)
1 Set the host to connect to the gRPC server running on the Horizon Core instance, replace the core-instance-ip accordingly
2 Set the port of the gRPC server which is by default 8990
3 Save the configuration
Restart the Minion to apply the changes
systemctl restart minion
Verify the configuration using the health check in the Karaf Shell
ssh -p 8201 admin@localhost
Run the health check command
opennms:health-check
Verify if all components are configured properly
admin@minion> opennms:health-check
Verifying the health of the container

Connecting to OpenNMS ReST API   [ Success  ]
Verifying installed bundles      [ Success  ]
Connecting to gRPC IPC Server    [ Success  ]

=> Everything is awesome
This optional, if you want to enable TLS for gRPC you have to provide certificate files and enable it. The commands for TLS are described below.
Connect to the Karaf Shell
ssh -p 8201 admin@localhost
Configure TLS and certificate parameters
config:edit org.opennms.core.ipc.grpc.client
config:property-set tls.enabled true(1)
config:property-set trust.cert.filepath /custom-path/ca.crt(2)
config:property-set client.cert.filepath /custom-path/client.crt(3)
config:property-set client.private.key.filepath /custom-path/client.pem(4)
config:update(5)
1 Enable TLS for the gRPC server
2 Set the path to your CA certificate file
3 Set the path to your client certificate file
4 Set the path client certificate key file
5 Save and update the configuration
This is optional and you can set a maximum message size for gRPC. The maxium size has to be the same on the Horizon Core instance as well. If you don’t set a maximum message size the default is 10 MiB.
Configure maximum message size for gRPC in the Karaf Shell
config:edit org.opennms.core.ipc.grpc.client
config:property-set max.message.size 10485760
config:update
Apply the changes with restarting Horizon Core instance
sudo systemctl restart opennms