{"id":12608,"date":"2022-05-07T10:15:36","date_gmt":"2022-05-07T07:15:36","guid":{"rendered":"https:\/\/kifarunix.com\/?p=12608"},"modified":"2024-03-09T14:17:37","modified_gmt":"2024-03-09T11:17:37","slug":"install-sensu-agent-on-rocky-linux","status":"publish","type":"post","link":"https:\/\/kifarunix.com\/install-sensu-agent-on-rocky-linux\/","title":{"rendered":"Install Sensu Agent on Rocky Linux"},"content":{"rendered":"\n<p>This guide will take you through how to install Sensu agent on Rocky Linux systems. In order to start collecting remote system metrics for monitoring using Sensu Go server, you need to install Sensu agents on the hosts being monitored.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Install Sensu Agent on Rocky Linux<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Install Sensu RPM repository;<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -s https:\/\/packagecloud.io\/install\/repositories\/sensu\/stable\/script.rpm.sh | sudo bash<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Install Sensu Agent<\/h3>\n\n\n\n<p>Once the repository is installed, ran the command below to install Sensu agent;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf install sensu-go-agent<\/code><\/pre>\n\n\n\n<p>Sample installation command output;<\/p>\n\n\n\n<pre class=\"scroll-box\"><code>Dependencies resolved.\n============================================================================================================================================================================\n Package                                     Architecture                        Version                                    Repository                                 Size\n============================================================================================================================================================================\nInstalling:\n sensu-go-agent                              x86_64                              6.7.1-6231                                 sensu_stable                              6.6 M\n\nTransaction Summary\n============================================================================================================================================================================\nInstall  1 Package\n\nTotal download size: 6.6 M\nInstalled size: 19 M\nIs this ok [y\/N]: y\nDownloading Packages:\nsensu-go-agent-6.7.1-6231.x86_64.rpm                                                                                                        1.1 MB\/s | 6.6 MB     00:06    \n----------------------------------------------------------------------------------------------------------------------------------------------------------------------------\nTotal                                                                                                                                       1.1 MB\/s | 6.6 MB     00:06     \nRunning transaction check\nTransaction check succeeded.\nRunning transaction test\nTransaction test succeeded.\nRunning transaction\n  Running scriptlet: sensu-go-agent-6.7.1-6231.x86_64                                                                                                                   1\/1 \n  Preparing        :                                                                                                                                                    1\/1 \n  Running scriptlet: sensu-go-agent-6.7.1-6231.x86_64                                                                                                                   1\/1 \n  Installing       : sensu-go-agent-6.7.1-6231.x86_64                                                                                                                   1\/1 \n  Running scriptlet: sensu-go-agent-6.7.1-6231.x86_64                                                                                                                   1\/1 \n  Verifying        : sensu-go-agent-6.7.1-6231.x86_64                                                                                                                   1\/1 \nInstalled products updated.\n\nInstalled:\n  sensu-go-agent-6.7.1-6231.x86_64                                                                                                                                          \n\nComplete!\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Configure and Run Sensu Agent<\/h3>\n\n\n\n<p>You can run Sensu agent with or without defining a configuration file.<\/p>\n\n\n\n<p>To run without defining a configuration file on the foreground, use the command below<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo -u sensu sensu-agent start --backend-url &lt;sensu-server-web-socket-url&gt;<\/code><\/pre>\n\n\n\n<p>Sensu backend web socket listens on port 8081. <strong>Ensure this port is opened on the Sensu backend server to allow agents to connect<\/strong>. The protocol is WS or WSS. (websocket on http\/websocket on https)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo -u sensu sensu-agent start --backend-url ws:\/\/127.0.0.1:8081<\/code><\/pre>\n\n\n\n<p>or <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo -u sensu sensu-agent start --backend-url ws:\/\/192.168.56.124:8081<\/code><\/pre>\n\n\n\n<p>Sample output;<\/p>\n\n\n\n<pre class=\"scroll-box\"><code>{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"compacting api queue\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"finished api queue compaction\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"using password auth\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"configuration successfully validated\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"starting statsd server on address: 127.0.0.1:8125\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"starting UDP listener on address: 127.0.0.1:3030\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"starting api on address: 127.0.0.1:3031\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"event\":{\"Title\":\"Gostatsd started\",\"Text\":\"Gostatsd started\",\"DateHappened\":1651905744,\"Hostname\":\"localhost.localdomain\",\"AggregationKey\":\"\",\"SourceTypeName\":\"\",\"Tags\":null,\"SourceIP\":\"\",\"Priority\":1,\"AlertType\":0},\"level\":\"info\",\"msg\":\"statsd received an event\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"starting TCP listener on address: 127.0.0.1:3030\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"connecting to backend URL \\\"ws:\/\/192.168.56.129:8081\\\"\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"level\":\"info\",\"msg\":\"successfully connected\",\"time\":\"2022-05-07T02:42:24-04:00\"}\n{\"component\":\"agent\",\"content_type\":\"application\/octet-stream\",\"level\":\"info\",\"msg\":\"message received\",\"payload_size\":31,\"time\":\"2022-05-07T02:42:25-04:00\",\"type\":\"entity_config\"}\n{\"check\":\"keepalive\",\"component\":\"agent\",\"entity\":\"localhost.localdomain\",\"event_uuid\":\"48e54a4e-ddd6-4f0e-9f94-b78497385c28\",\"level\":\"info\",\"msg\":\"sending event to backend\",\"time\":\"2022-05-07T02:42:25-04:00\"}\n{\"component\":\"agent\",\"content_type\":\"application\/octet-stream\",\"level\":\"info\",\"msg\":\"message received\",\"payload_size\":169,\"time\":\"2022-05-07T02:42:25-04:00\",\"type\":\"entity_config\"}\n{\"check\":\"keepalive\",\"component\":\"agent\",\"entity\":\"localhost.localdomain\",\"event_uuid\":\"6d2b8024-bbfb-4f80-b1aa-252777e7daf7\",\"level\":\"info\",\"msg\":\"sending event to backend\",\"time\":\"2022-05-07T02:42:45-04:00\"}\n...\n<\/code><\/pre>\n\n\n\n<p>To run Sensu agent as a service, you need a configuration file. Download and install the sample Sensu agent configuration file;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo curl -sL https:\/\/docs.sensu.io\/sensu-go\/latest\/files\/agent.yml -o \/etc\/sensu\/agent.yml<\/code><\/pre>\n\n\n\n<p>This is how sample config looks like;<\/p>\n\n\n\n<pre class=\"scroll-box\"><code>---\n# Sensu agent configuration\n\n\n##\n# agent configuration\n##\n#name: \"hostname\"\n#namespace: \"default\"\n#subscriptions:\n#  - example\n#labels:\n#  example_key: \"example value\"\n#annotations:\n#  example\/key: \"example value\"\n#agent-managed-entity: false\n#allow-list: \/etc\/sensu\/check-allow-list.yaml\n#assets-burst-limit: 100\n#assets-rate-limit: 1.39\n#backend-handshake-timeout: 15\n#backend-heartbeat-interval: 30\n#backend-heartbeat-timeout: 45\n#backend-url:\n#  - \"ws:\/\/127.0.0.1:8081\"\n#cache-dir: \"\/var\/cache\/sensu\/sensu-agent\"\n#config-file: \"\/etc\/sensu\/agent.yml\"\n#deregister: false\n#deregistration-handler: \"example_handler\"\n#detect-cloud-provider: false\n#disable-assets: false\n#keepalive-critical-timeout: 0\n#keepalive-handlers:\n#  - slack\n#  - email\n#keepalive-interval: 20\n#keepalive-warning-timeout: 120\nlog-level: \"debug\" # available log levels: panic, fatal, error, warn, info, debug\n#user: \"agent\"\n#password: \"P@ssw0rd!\"\n#redact:\n#  - password\n#  - passwd\n#  - pass\n#  - api_key\n#  - api_token\n#  - access_key\n#  - secret_key\n#  - private_key\n#  - secret\n#require-fips: false\n#require-openssl: false\n\n\n##\n# api configuration\n##\n#api-host: \"127.0.0.1\"\n#api-port: 3031\n#disable-api: false\n#events-burst-limit: 10\n#events-rate-limit: 10.0\n\n\n##\n# socket configuration\n##\n#socket-host: \"127.0.0.1\"\n#socket-port: 3030\n#disable-sockets: false\n\n\n##\n# statsd configuration\n##\n#statsd-disable: false\n#statsd-event-handlers:\n#  - example_handler\n#statsd-flush-interval: 10\n#statsd-metrics-host: \"127.0.0.1\"\n#statsd-metrics-port: 8125\n\n\n##\n# tls configuration\n##\n#cert-file: \"\/path\/to\/tls\/agent.pem\"\n#trusted-ca-file: \"\/path\/to\/tls\/ca.pem\"\n#key-file: \"\/path\/to\/tls\/agent-key.pem\"\n#insecure-skip-tls-verify: false\n<\/code><\/pre>\n\n\n\n<p>The default Sensu backend URL is <strong><code>ws:\/\/127.0.0.1:8081<\/code><\/strong>.<\/p>\n\n\n\n<p>If you are using a remove Sensu backend;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo vim \/etc\/sensu\/agent.yml<\/code><\/pre>\n\n\n\n<p>update the backend url from;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#backend-url:\n#  - \"ws:\/\/127.0.0.1:8081\"<\/code><\/pre>\n\n\n\n<p>To (<em>replace &lt;sensu-backend-IP&gt; with Sensu backend IP address<\/em>);<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>backend-url:\n  - \"ws:\/\/&lt;sensu-backend-IP&gt;:8081\"<\/code><\/pre>\n\n\n\n<p>At the very least, Sensu agent just requires the backend url to be defined.<\/p>\n\n\n\n<p>Next, start and enable the Sensu agent service to run on system boot;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl enable --now sensu-agent<\/code><\/pre>\n\n\n\n<p>Check the Status;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>systemctl status sensu-agent<\/code><\/pre>\n\n\n\n<pre class=\"scroll-box\"><code>\u25cf sensu-agent.service - The Sensu Agent process.\n     Loaded: loaded (\/lib\/systemd\/system\/sensu-agent.service; enabled; vendor preset: enabled)\n     Active: active (running) since Sat 2022-05-07 01:17:26 EAT; 3s ago\n   Main PID: 4246 (sensu-agent)\n      Tasks: 7 (limit: 1133)\n     Memory: 8.3M\n        CPU: 62ms\n     CGroup: \/system.slice\/sensu-agent.service\n             \u2514\u25004246 \/usr\/sbin\/sensu-agent start -c \/etc\/sensu\/agent.yml\n\nMay 07 01:17:27 debian11 sensu-agent[4246]: {\"component\":\"agent\",\"header\":\"Accept: application\/octet-stream\",\"level\":\"debug\",\"msg\":\"setting header\",\"time\":\"2022-05-07T01:1&gt;\nMay 07 01:17:28 debian11 sensu-agent[4246]: {\"component\":\"agent\",\"level\":\"info\",\"msg\":\"successfully connected\",\"time\":\"2022-05-07T01:17:28+03:00\"}\nMay 07 01:17:28 debian11 sensu-agent[4246]: {\"component\":\"agent\",\"header\":\"Accept: [application\/octet-stream application\/json]\",\"level\":\"debug\",\"msg\":\"received header\",\"ti&gt;\nMay 07 01:17:28 debian11 sensu-agent[4246]: {\"component\":\"agent\",\"format\":\"protobuf\",\"level\":\"debug\",\"msg\":\"setting serialization\/deserialization\",\"time\":\"2022-05-07T01:17&gt;\nMay 07 01:17:28 debian11 sensu-agent[4246]: {\"component\":\"agent\",\"header\":\"Content-Type: application\/octet-stream\",\"level\":\"debug\",\"msg\":\"setting header\",\"time\":\"2022-05-0&gt;\nMay 07 01:17:28 debian11 sensu-agent[4246]: {\"component\":\"agent\",\"level\":\"debug\",\"msg\":\"maxSessionLength is 0s, agent won't periodically disconnect\",\"time\":\"2022-05-07T01:&gt;\nMay 07 01:17:28 debian11 sensu-agent[4246]: {\"component\":\"agent\",\"content_type\":\"application\/octet-stream\",\"level\":\"info\",\"msg\":\"message received\",\"payload_size\":143,\"time&gt;\nMay 07 01:17:28 debian11 sensu-agent[4246]: {\"component\":\"agent\",\"level\":\"debug\",\"msg\":\"received an entity config from the backend\",\"time\":\"2022-05-07T01:17:28+03:00\"}\nMay 07 01:17:28 debian11 sensu-agent[4246]: {\"component\":\"agent\",\"level\":\"debug\",\"msg\":\"successfully received the initial entity config\",\"time\":\"2022-05-07T01:17:28+03:00\"}\nMay 07 01:17:28 debian11 sensu-agent[4246]: {\"check\":\"keepalive\",\"component\":\"agent\",\"entity\":\"debian11\",\"event_uuid\":\"14a4c0f8-301c-4fe2-9db3-119c8a53274a\",\"level\":\"info\n<\/code><\/pre>\n\n\n\n<p>In case of any issue, check the logs using journalctl command;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -u sensu-agent<\/code><\/pre>\n\n\n\n<p>Sensu Agents listens on ports 3030\/tcp,udp for the Sensu agent socket and 3031\/tcp for Sensu API;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ss -altnp | grep sensu<\/code><\/pre>\n\n\n\n<pre class=\"scroll-box\"><code>LISTEN 0      4096       127.0.0.1:3030      0.0.0.0:*    users:((\"sensu-agent\",pid=1180,fd=10))\nLISTEN 0      4096       127.0.0.1:3031      0.0.0.0:*    users:((\"sensu-agent\",pid=1180,fd=12))\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Very Sensu Agents Connectivity with Sensu Backend Server<\/h3>\n\n\n\n<p>Login back to Sensu backend and confirm the status of the agents.<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-rocky-linux.png\" class=\"td-modal-image\"><figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1916\" height=\"946\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-rocky-linux.png\" alt=\"\" class=\"wp-image-12610\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-rocky-linux.png?v=1651907285 1916w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-rocky-linux-768x379.png?v=1651907285 768w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-rocky-linux-1536x758.png?v=1651907285 1536w\" sizes=\"(max-width: 1916px) 100vw, 1916px\" \/><\/figure><\/a><\/div>\n\n\n\n<p>As you can see, we have two remote agents under the <strong>default<\/strong> entity. <strong>sensu-system<\/strong> entity is the Sensu backend itself.<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agents-entities.png\" class=\"td-modal-image\"><figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1885\" height=\"466\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agents-entities.png\" alt=\"Install Sensu Agent on Rocky Linux\" class=\"wp-image-12611\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agents-entities.png?v=1651907383 1885w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agents-entities-768x190.png?v=1651907383 768w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agents-entities-1536x380.png?v=1651907383 1536w\" sizes=\"(max-width: 1885px) 100vw, 1885px\" \/><\/figure><\/a><\/div>\n\n\n\n<p>You can click on any of the respective agent entities to view more details;<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-properties.png\" class=\"td-modal-image\"><figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1793\" height=\"896\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-properties.png\" alt=\"Install Sensu Agent on Rocky Linux\" class=\"wp-image-12612\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-properties.png?v=1651907437 1793w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-properties-768x384.png?v=1651907437 768w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/05\/sensu-agent-properties-1536x768.png?v=1651907437 1536w\" sizes=\"(max-width: 1793px) 100vw, 1793px\" \/><\/figure><\/a><\/div>\n\n\n\n<p>Sensu is now installed and running!<\/p>\n\n\n\n<p id=\"block-8f9082be-1211-45b2-8a98-35908eec535c\">Next, follow the guide below to learn how to monitor Linux system metrics using Sensu.<\/p>\n\n\n\n<p id=\"block-8a1fc978-3f96-4730-9222-5b0d432d1414\"><a href=\"https:\/\/kifarunix.com\/how-to-monitor-linux-system-metrics-using-sensu\/\" target=\"_blank\" rel=\"noreferrer noopener\">How to Monitor Linux System Metrics using Sensu<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Reference<\/h3>\n\n\n\n<p><a href=\"https:\/\/docs.sensu.io\/sensu-go\/latest\/operations\/deploy-sensu\/install-sensu\/\" target=\"_blank\" rel=\"noreferrer noopener\">Install Sensu<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Other Tutorials;<\/h3>\n\n\n\n<p><a href=\"https:\/\/kifarunix.com\/install-sensu-go-on-ubuntu\/\" target=\"_blank\" rel=\"noreferrer noopener\">Install Sensu Go on Ubuntu 22.04<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/kifarunix.com\/install-sensu-agent-on-ubuntu-debian\/\" target=\"_blank\" rel=\"noreferrer noopener\">Install Sensu Agent on Ubuntu\/Debian<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This guide will take you through how to install Sensu agent on Rocky Linux systems. In order to start collecting remote system metrics for monitoring<\/p>\n","protected":false},"author":1,"featured_media":12604,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_lock_modified_date":false,"footnotes":""},"categories":[72,121],"tags":[5059,5060,5061,5062],"class_list":["post-12608","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-monitoring","category-howtos","tag-install-sensu-agent-on-rocky-linux","tag-rocky-linux-sensu-agents","tag-sensu-agent-rocky-linux","tag-sensu-agents","generate-columns","tablet-grid-50","mobile-grid-100","grid-parent","grid-50","resize-featured-image"],"_links":{"self":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/12608"}],"collection":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/comments?post=12608"}],"version-history":[{"count":5,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/12608\/revisions"}],"predecessor-version":[{"id":20537,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/12608\/revisions\/20537"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/media\/12604"}],"wp:attachment":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/media?parent=12608"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/categories?post=12608"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/tags?post=12608"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}