<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>RabbitMQ | Federica Baldi</title><link>https://federicabaldi.netlify.app/tag/rabbitmq/</link><atom:link href="https://federicabaldi.netlify.app/tag/rabbitmq/index.xml" rel="self" type="application/rss+xml"/><description>RabbitMQ</description><generator>Wowchemy (https://wowchemy.com)</generator><language>en-us</language><lastBuildDate>Fri, 11 Jun 2021 19:02:46 +0000</lastBuildDate><image><url>https://federicabaldi.netlify.app/media/icon_hu45b33b605845c6c3bc44961d747e982e_24504_512x512_fill_lanczos_center_3.png</url><title>RabbitMQ</title><link>https://federicabaldi.netlify.app/tag/rabbitmq/</link></image><item><title>Docker Health Monitoring System</title><link>https://federicabaldi.netlify.app/project/docker-health-monitoring-system/</link><pubDate>Fri, 11 Jun 2021 19:02:46 +0000</pubDate><guid>https://federicabaldi.netlify.app/project/docker-health-monitoring-system/</guid><description>&lt;p>The purpose of this project is to develop a system to monitor the health of a set of Docker hosts. On each Docker host runs an agent, a software whose task is to periodically check the wellbeing of containers running on the same host. Specifically, every x seconds the agent pings all containers in the ”to be monitored” list and calculates the experienced packet loss. If a container is down or if it is experiencing packet loss greater than a certain threshold, the agent must destroy it and automatically restart it.&lt;/p>
&lt;p>The list of containers to be monitored and the threshold are set by the system administrator, who communicates with the system via a REST interface. This interface is exposed by a control module running on one of the Docker hosts (in our case, on the machine with IP address 172.16.3.169).&lt;/p>
&lt;p>In addition, one of the Docker hosts (in our case, the machine with IP address 172.16.3.172) exposes the RabbitMQ broker service as a container, thus allowing the various components (the agents and the swagger server to communicate.&lt;/p>
&lt;p>To test the proper functioning of the system we have:&lt;/p>
&lt;ul>
&lt;li>created ”dummy” containers running on each Docker host that will be monitored by each of the agents&lt;/li>
&lt;li>developed the antagonist, a small program running on each Docker host that periodically stops containers or artificially causes packet losses&lt;/li>
&lt;/ul></description></item></channel></rss>