Algolia

With the advent of the internet, the search got added to the basic needs of human beings. Google made a breakthrough in the search using their PageRank Algorithm. Search option became the most prominent component of almost every website. And then the business needs started going beyond basic search giving rise to searching algorithms and products such as Lucene And Solr. Going beyond these two, Algolia provides search as a service with highly relevant, contextualized and super fast results to businesses across the globe.

Continue reading “Algolia”

ufw

When you are dealing with a machine security, the very first things that comes to your mind is setting up a mechanism so that only authorized personnel can access your machine. Setting up username/password, SSH based authentication are few ways to implement access control. However, a most useful tool for any administrator is to setup firewall on the machine. UFW i.e. uncomplicated firewall is a firewall implementation available on linux distros such as Ubuntu and CentOS.

Continue reading “ufw”

Munin

You are a system administrator, managing a set of servers. As a part of your job, you need to ensure that all the servers are up and running 24X7, they are resources are utilized optimally. And that no single server is overloaded or consuming huge memory or some similar abnormal behavior over a time period. Obviously, you will be needing a monitoring tool. Munin is one such tool, which helps system administrators to keep track of system resources.

Munin Architecture

Munin derives its name from mythology. It means memory. This monitoring software memorizes what it sees and hence the name.

This monitoring tool uses Master-node architecture. Master periodically pulls data from all the configured nodes and processes it to create graphical dashboards.

Munin Architecture
Munin Architecture – Source: http://guide.munin-monitoring.org/en/latest/architecture/index.html

One of the advantages of Munin is its vast plugin eco-system. There are several hundred plugins available, which make it a powerful monitoring system. Munin itself uses RRDTool, which is written in Perl, whereas plugins could be written in any language. This tool is available on various distros such as Debian, Ubuntu, and CentOS.

Munin-memory-week
Munin graph depicting memory usage over a week
Once data is collected from nodes, it is processed by the master and various graphs are made available on the dashboard. One of the components is – Munin-limits – which monitors the values between configured “ok”, “warn” and “crit” levels and can create a notification for the administrators.

Alternate Server Monitoring Tools

Several alternatives are available.

  • Nagios
  • NewRelic
  • Netdata
  • Zabbix

Considering that most of the deployments are in the cloud these days, you may want to use the monitoring tools provided by your cloud providers:

  • AWS Cloudwatch
  • Azure Monitor
  • Google Cloud – Stackdriver monitoring

Related Links

Related Keywords

Server Monitoring, AWS Cloudwatch, Azure Monitor, Nagios, NewRelic

 

ADC – Application Delivery Controller

Application Delivery Controller aka ADC is an advanced version of server load balancing (SLB) which includes traditional load balancing along with some advance features such as health checks, SSL offloading, DDoS protection, Reverse Proxy, WAF etc.

Application Delivery Controller
Network Panel

History of Application Delivery Controller

Load balancing among several servers is not new. An initial version of load balancing was to have 1 to many relations between the domain name and IP addresses in DNS server. This severely lacked health checks as clients wouldn’t know if given IP is working or not. This drawback gave rise to next level of load balancing where a specific IP address was exposed to the world. This IP was catered by clustering software, which routed the traffic from clients to several servers in the backend.

Next generation load balancers introduced health monitors. If any of the servers goes unresponsive, the load balancer would stop sending traffic to that server until it was recovered. This also allowed system administrators to build some custom logic to add or reduce the servers in the farm based on the monitoring data.

ADCs are current generation load balancers which provide a variety of functions bundled together. Some of them are listed in the section below.

Features of ADC

Application Delivery Controller
Application Delivery Controller – ADC. Source: https://aiscaler.com/application-delivery-controllers-on-the-cloud
  • SSL Offloading: ADC can handle the terminating SSL connection keeping the traffic between ADC and backend servers in plain text. And hence it helps in reducing the load on the application servers in the server farm.
  • Multilayer load balancing: These load balancers can balance traffic at Layer 3/4 as well as Layer 7 of OSI model. Thus it gives an ability to route traffic based on IP addresses, subnets as well as based on the URL patterns, domains and HTTP header fields.
  • Load balancing methods: ADCs can use various methods such as round robin, least packets, least bandwidth, latency or hashing of certain parameters.
  • DDoS Protection: ADCs can look into the incoming traffic and detect DDoS before it starts loading the application servers, thereby defeating the attack.
  • WAF: ADCs can have built-in Web Application Firewall which can prevent common security attacks such as Cross-site scripting XSS.

For a much more comprehensive list, you can to the article in related links section.

Related Links

Related Keywords

Load Balancer, Hardware, WAF, DAF