Cloud SFTP Server Cluster Scalability via Distributed Registry
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional SSH file transfer protocol (SFTP) servers suffer from limited availability, lack of scalability, and fault tolerance due to hardware limitations.
Innovation Solution
A cloud-based distributed SFTP server cluster is implemented, utilizing a load balancer to assign client requests to available SFTP servers on virtual machines. A centralized registry table maintains records of user files and their locations on cloud storage, allowing any server in the cluster to process requests and perform file-related actions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional SFTP servers use local physical data storage, then file access and transfer services can be provided, but availability is limited and the system is not scalable or fault tolerant
Solution Approach 1:
The system segments the traditional monolithic SFTP server into multiple distributed SFTP server instances running on virtual machines. Each server instance is independent and can handle client requests autonomously by accessing the centralized registry table, enabling load distribution and eliminating single points of failure.
Solution Approach 2:
A centralized registry table is introduced as an intermediary component that stores file metadata and location information. This registry table acts as a mediator between distributed SFTP servers and cloud storage, allowing any server to access and manage files without direct hardware dependencies, thereby improving availability and fault tolerance.
2Adaptability or versatility
If traditional SFTP servers use local physical storage, then file services can be provided, but the system lacks scalability due to hardware limited capacity
Solution Approach 1:
The system implements universal access to file services through multiple distributed SFTP servers that can all perform the same file operations. Any server in the cluster can handle any client request by consulting the centralized registry table, making the system highly adaptable and scalable without being constrained by individual hardware capacities.
Solution Approach 2:
The system transitions from single-server local storage to a multi-dimensional distributed architecture where files are stored in cloud storage and metadata is maintained in a centralized registry table. This dimensional shift allows the system to scale horizontally by adding more virtual machine instances without being limited by physical hardware capacity of individual servers.
3Reliability
If traditional SFTP servers store files on local physical storage, then file transfer services can be provided, but the system is not fault tolerant
Solution Approach 1:
Each distributed SFTP server instance maintains local knowledge of file locations through the centralized registry table, allowing it to independently serve files without relying on other servers. This local quality of autonomy combined with centralized coordination provides fault tolerance, as the failure of any single server does not affect the overall system availability.
4Productivity
If cloud-based distributed SFTP servers are implemented with centralized registry table, then scalability and availability are improved, but system complexity increases
Solution Approach 1:
Each distributed SFTP server instance autonomously handles client requests by independently querying the centralized registry table for file metadata and performing file operations through cloud storage interfaces. This self-service capability eliminates the need for complex inter-server communication and coordination mechanisms, managing system complexity while maintaining high availability and scalability.
Data Source
AI summary
Examples provide a cloud-based distributed secure shell (SSH) file transfer protocol (SFTP) server system for responding to client requests. A load balancer assigns client requests to available SFTP servers within the cloud based distributed SFTP server cluster. Each SFTP server is hosted on an individual VM associated with a cloud server. An authentication service authenticates the client requests using a single user profile. A registry table on a first cloud storage maintains metadata describing all the data records stored within a second cloud storage. The registry table and the data records are accessible to all the SFTP servers within the server cluster. In this manner, any server within the cluster can authenticate a user and respond to a client request while providing a seamless and uniform user experience while simultaneously reducing resource usage and improving scalability.


