📜 ⬆️ ⬇️

TeamWox SaaS Agent: how to build SaaS farms for free and quickly

A new version of TeamWox SaaS Agent has been released , which now allows you to build SaaS farms with hundreds of copies of TeamWox groupware systems for free to both providers and independent suppliers.

TeamWox SaaS Agent Architecture

Interesting? I invite under the cat.

')
In order to experience all the problems that providers face when installing and servicing our software, we decided to start providing SaaS services on our own.

At the very beginning, we had to feel all the delights of hosters' work - preparing and configuring a computer, setting up a firewall, registering domains, selecting and renewing SSL certificates, installing TeamWox servers for clients, testing their availability after installation, monitoring their status, uninstalling TeamWox.

If you do all these operations manually, each time repeating them again and again, then you can make a mistake, and the client "guesses" that everything is not as simple as marketers describe.

Initial setup of TeamWox SaaS Agent

Like any software developed by our company, the TeamWox hosting management solution had to be simple, efficient, work as an administrator, forcing you to perform the necessary minimum of operations, and warn about dangers and errors. The result of the work is TeamWox SaaS Agent.

In order for a computer with MS Windows Server 2008 to become a home for a dozen TeamWox groupware systems, one minute is enough - 10 seconds to download the TeamWox SaaS Agent installer (1.5 MB) and 50 seconds to install it and open the web page with a suggestion enter username and password.

To work with TeamWox, a user needs a web browser in which the user enters the address of his favorite corporate application. To provide such an address to the user, you must select a domain.

Providing a unique domain for each application is a costly option for both the hoster and the client. No one likes to pay for services that the average person doesn’t even realize.

A simple and elegant option is to provide access to the application using a third-level domain. You can take on the maintenance of such domains - the client will not even know that "something needs to be allocated there."

By organizing our own SaaS farm, we did just that. In TeamWox, the SaaS Agent implemented integration with popular DNS servers through their HTTP API. The domain for the new application is automatically allocated; it is enough to specify the address and authorization data of the HTTP API DNS server in the settings.

Security is the key to SaaS. For the security of user data storage provider is responsible. Ensuring the security of access to them is his own task. Using open HTTP for corporate SaaS applications is the height of irresponsibility. It is for this reason that access to TeamWox can only be via the secure HTTPS protocol.

In order for HTTPS to work, an SSL certificate must be installed on the server, which causes trust among web browsers. You can get it from companies such as Thawte, Comodo or any other similar.

Before ordering SSL certificates for hundreds of applications, it is worth remembering one feature of the HTTPS protocol - one IP address / port can serve only one server SSL certificate. At the same time, it will be necessary either to allocate dozens of IP addresses on each of the farm computers, or to torment the user with exotic additives in the address in the form of ports.

But neither the first nor the second idea does not cause delight. The solution we used is a wildcard SSL certificate. One wildcard SSL certificate serves all applications installed on our SaaS farm. The user is safe for himself and without torment uses TeamWox.

It is impossible to install a certificate in Windows for the first time without knowledge of how the certificate store works. To simplify and make this process understandable, in TeamWox SaaS Agent we have made a convenient and simple interface for servicing server certificates.

Through the web interface we install and update the certificate, we can generate a request for a new one, download the installed certificate as a file. While testing a SaaS farm, you can generate a temporary self-signed wildcard SSL certificate without searching for the console utility.

Installing SSL Certificate in TeamWox SaaS Agent

After the basic routine operations have been automated, it is time to organize a SaaS farm - to merge a set of servers together. The solution we use to organize our own SaaS farm is very simple and effective.

Each of the farm servers is equivalent, it performs only one function - TeamWox hosting. To enable a new computer in the SaaS farm, it is enough to install TeamWox SaaS Agent on it. And this, as I wrote above, is very simple and quick to do.

Tasks that arise when organizing multiple servers in a farm:

To solve them, we expanded the functionality of the TeamWox SaaS Agent, turning it into a SaaS server manager. Of all the servers in the farm, one was chosen, which was assigned the functions of a manager.

It collects information from all servers in the farm and, based on the statistics obtained, automatically selects which server will have a new copy of TeamWox installed on it. This allows you to follow the principle of fairness and load each of the SaaS farm servers with work evenly.

TeamWox SaaS Agent slave servers

SaaS farm is convenient to manage from one place. The simple and intuitive TeamWox SaaS Agent interface made it possible to transfer the reins of the SaaS farm to regular users - our managers.

A new application can be installed literally in 2-3 minutes without distracting technical specialists for this. It is also easy to manage and control the work of hundreds of TeamWox applications already installed.

TeamWox has built-in self-monitoring and monitoring tools to help ensure its stable operation. TeamWox SaaS Agent, using this data, allows you to achieve stability of the entire SaaS farm. Monitoring the operation of all applications on the page of the managing server allows you to protect users from dangers, which they should not guess.

TeamWox SaaS Agent Usage Statistics

Organizing your SaaS farm from scratch with TeamWox SaaS Agent is easy and fast. Hosters with work experience have an established server management infrastructure, and no one is going to break it or refuse it. And I will quote myself - it is convenient to manage a SaaS farm from one place. It was necessary to integrate our software and software provider. And as experience suggests, the integration of two independent products is usually a painful process.

We have experienced all the delights of the integration process. For the experiment was chosen popular software providers for the company Parallels.

The result of our work was a clear and well-structured HTTP API TeamWox SaaS Agent'a and certified in accordance with version 1.2 of the APS standard package, which is available in the application store both on the website and through the web interface of Parallels products.

If you already provide hosting services based on Parallels Business Automation or Parallels Plesk Panel, then you will manage the life cycle of TeamWox applications using your usual user interface.

Integration with other software familiar to you should not cause difficulties and can be done in any popular programming language that has the tools to work with HTTP and JSON. In the APS package, for example, scripts are written in PHP.

For those who still have an exciting adventure to certify your APS package, we will confirm a number of facts already voiced and add some new ones to them.

The documentation provided by Parallels is as official as it does not reveal all the intricacies of the packaging process - materials are sorely lacking.

The lack of necessary information is filled by the company's technical support staff. They will advise what needs to be corrected in the package description, and point out obvious errors. The testing process for compliance with APS standards is automated, but not for applications distributed by type of external SaaS.

APS Standard with TeamWox

We began our journey as newbies and completed it by building a full-featured SaaS farm that serves hundreds of applications. The experience gained in solving the problems we encountered was embodied in the TeamWox SaaS Agent.

Using our tool, you can build a SaaS farm from scratch or expand the range of services offered at no extra cost. You will feel the drive in the process, the pleasure from the result obtained and hear the words of gratitude of satisfied users.

Our company tries to keep Habr's readers informed about the most interesting events related to our products. Among the first you learned that " TeamWox is a new product of our company ", and that " TeamWox is a gift to a small business! ".

This article is intended to expand the scope of articles in our blog on Habré. In the case of interest in the issues to which this article is devoted, we will continue publication. In the next article we will talk about the tools we use to create the applications described in this article.

Source: https://habr.com/ru/post/126510/


All Articles