No web application can succeed without a solid server beneath its feet. Setting up and maintaining such a server is a task that is often underestimated. Not paying enough attention to the server setup could result in unexpected (and undetected!) outages, security breaches, and ultimately - lost business.
The good news is that we can take on that challenge for you - we have experience with building and maintaining stable server environments for large and successful sites both in the cloud (AWS), in virtual environments and on dedicated hardware. Our administration team will make sure that your server is monitored, backed-up and fully prepared to meet the expected load. And when the unexpected happens, we will be there to investigate and make the necessary adjustments, providing you with detailed information and giving you options. We got you covered.
Tasks performed by the sysadmin team
Regular software updates and patches Having up-to-date software and maintaining your site's stability are usually two conflicting needs. We can work out a shorter or a longer update cycle depending on your requirements, and then stick to it. Keeping the software on the system up-to-date is the main duty of a system administrator.
- Reliable external backups and restoration
We are using several backup techniques, that ensure that you have a very recent copy of your data at all times. Our backup strategies always include full filesystem backup to a remote location, performed by smart tools that minimize the required transfer and storage capacity, while performing all actions over securely encrypted channels. In addition, depending on the server environemnt, we use specific backup routines tools ranging from database backups (with the capability of separately restoring each row of SQL databases) to full filesystem snapshots. Each of our backup tools is designed so that it would fire an explicit alert in case of backup failure, letting us know of the problem immediately.
- Version control and automated website deployment setup
Whenever there is a customized code running on a system there is the need of version control. The version control systems that we use (Subversion and Git) allow us to track down each changed line of code down to the specific second it was made; what's more, we can instantly bring back to life the code from months or years ago. Code repositories are stored on a central server which features a high level of security and certificate-based authentication. A great advantage of our centralized version control is that it enables developers and designers to work without having a direct access to the web server. This perk alone contributes to having much more stable and secure servers, while increasing the productivity and ease of collaboration for the involved developers and designers.
- Monitoring of application and server stats monitoring
We are using various tools to monitor the servers under our control and the applications that run of them. The best tool in our toolbox is our own, state-of-the-art monitoring system S2Mon (www.s2mon.com). It provides both real-time alerts as well as historical data for all major server parameters, which helps us to pinpoint and resolve server problems with unprecedented speed and accuracy. In addition to 50+ built-in stats that S2Mon can track, it also supports customized plugins, which can monitor and report any numerical data related to your server or application.
- Security monitoring and remedial actions
In addition to the general-purpose server stats monitoring, we can also install and manage systems aimed specifically at security events monitoring. Host-based Intrusion Detection Systems (HIDS), as well as log monitoring software are a must for anyone who doesn't want to turn a blind eye to the security attacks. We can install, configure, update and monitor such systems, ensuring that security threats would never go unnoticed.
- Centralized configuration management
Managing multiple servers and clusters can quickly scale up out of control. Maintaining cohesive server configuration across multiple machines, each with its own needs and history is an extremely error-prone task, riddled with pitfalls and time-consuming debugging efforts. To cope with this challenge, we are relying on a centralized management system, which can easily deploy customized, yet coherent configurations to multiple servers; we can also use it to quickly tell if and where a server's configuration is getting out of line.
- 24x7 emergency telephone availability
Have you ever ran into a situation where the support staff is bouncing you off from one level to another? Have you waited on the phone for minutes in a row, just to find out that the person at the other end of the line is not really qualified to solve your problem? Well, we believe this isn't the way it should be. When you call your dedicated support number, you would talk directly to the system administrator who knows your server, and who has the power to make changes there. No more "escalation", and no more putting you on hold. We have a single level of support, and it consist of the very people who built and maintain your machine.
If you are interested in our system administration services or if you have any questions whatsoever, do get in touch with us, and we will get back to you as soon as possible.