Day 26: Configuring Memcached & RabbitMQ

In continuation of setting up a complete Java project stack manually using Vagrant-based virtual machines, Day 26 focused on configuring two vital backend services:

  • Memcached (Database Caching)

  • RabbitMQ (Message Broker)


๐Ÿ—ƒ๏ธ Memcached Setup (mc01 VM)

Memcached boosts performance by caching database responses.

Steps:

  1. SSH into mc01 VM:

     vagrant ssh mc01
     sudo -i
    
  2. Update /etc/hosts if needed.

  3. Install & configure Memcached:

     yum install memcached -y
     systemctl start memcached
     systemctl enable memcached
     sed -i 's/127.0.0.1/0.0.0.0/g' /etc/sysconfig/memcached
     systemctl restart memcached
    
  4. Open firewall ports:

     firewall-cmd --add-port=11211/tcp
     firewall-cmd --runtime-to-permanent
     firewall-cmd --add-port=11111/udp
     firewall-cmd --runtime-to-permanent
    

๐Ÿ“จ RabbitMQ Setup (rmq01 VM)

RabbitMQ acts as a message broker, managing communication between services.

Steps:

  1. SSH into rmq01:

     vagrant ssh rmq01
     sudo -i
    
  2. Update /etc/hosts and disable SELinux:

     sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
     setenforce 0
    
  3. Install Erlang (dependency):

     curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | bash
     yum clean all
     yum makecache
     yum install erlang -y
    
  4. Install RabbitMQ Server:

     curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | bash
     yum install rabbitmq-server -y
     systemctl start rabbitmq-server
     systemctl enable rabbitmq-server
    
  5. Configure for remote login & add test user:

     echo "[{rabbit, [{loopback_users, []}]}]." > /etc/rabbitmq/rabbitmq.config
     rabbitmqctl add_user test test
     rabbitmqctl set_user_tags test administrator
    
  6. Open ports & restart:

     firewall-cmd --add-port=5671/tcp --permanent
     firewall-cmd --add-port=5672/tcp --permanent
     firewall-cmd --reload
     systemctl restart rabbitmq-server
    

๐Ÿ’ก Takeaway

Both services are now configured and ready to integrate into the application stack!
Stay tuned for Day 27, where we configure Tomcat for deploying the Java WAR file.


๐Ÿ“Œ Follow the full DevOps Stack Setup series on Hashnode
๐Ÿ› ๏ธ GitHub Repo: hkhcoder/vprofile-project

0
Subscribe to my newsletter

Read articles from Shaharyar Shakir directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Shaharyar Shakir
Shaharyar Shakir