Прежде всего, я хотел бы сказать спасибо, что нашли время, чтобы прочитать это.
Так что в настоящее время я провожу некоторые исследования и планирую, как сделать эту настройку наиболее эффективной.
У меня есть основной сервер, на котором запущен пользовательский CRM, созданный для клиента. Клиент хочет начать загрузку больших файлов, которые быстро заполнили бы диск сервера. По этой причине эти файлы должны быть сохранены на удаленном / альтернативном сервере, но также доступны через HTTP (для отображения во внешней CRM).
Как бы я мог настроить что-то подобное?
Я думал об использовании FTP для передачи файла на удаленный сервер, но это кажется дополнительным ненужным шагом, поскольку файл сначала будет загружен на основной сервер, а затем отправлен на дополнительный. Это вдвое больше пропускной способности и времени отклика.
Возможно, есть способ присоединить вторичный сервер в качестве «сетевого расположения» на главном сервере, а затем просто переместить файлы на него во время их загрузки.
Другая проблема, которая может возникнуть, заключается в том, что главный сервер должен иметь возможность динамически создавать каталоги на сервере хранения, поскольку это CRM, добавляются новые клиенты, поэтому файлы будут загружены в / clients / {ID} / {PROJECT} / * например.
Я думал об использовании Amazon S3 или другого облачного хранилища, но клиенту нужен выделенный сервер для их хранения.
Другая возможность, возможно, заключается в том, что пользователь загружает данные прямо на сервер хранения, а сервер хранения отправляет информацию обратно на главный сервер, но не уверен, как это будет работать лучше всего.
Основной сервер работает под управлением CentOS и управляется с помощью WHM / cPanel.
Как уже упоминалось в комментариях, вы определенно не хотите использовать FTP. Это, наверное, худшее решение.
Вообще говоря, серверное решение должно быть прозрачным, и если на обоих серверах установлена ОС на основе Unix, то NFS — типичный путь. Вот краткое руководство по настройке NFS в CentOS:
https://www.howtoforge.com/tutorial/setting-up-an-nfs-server-and-client-on-centos-7/
Если по какой-то причине в будущем вы решите перенести хранилище в Amazon, то есть хорошая новость: он уже поддерживает NFS (и SMB в этом отношении), поэтому стоимость перенастройки сведена к минимуму.
SMB хорош, если один из серверов работает под Windows. Также он предлагает большую гибкость в отношении доступа (примечание: IMHO в большинстве случаев более чем достаточно типичной схемы доступа Unix).
Не сложно настроить, но он не является родным для Unix. Из-за того, что SMB медленнее, но если вам не нужна первоклассная производительность в реальном времени, это не будет проблемой (и, честно говоря, самой большой задержкой будет соединение между клиентом и сервером, а не сервер-сервер)
Здесь вы найдете как графические, так и CMD инструкции по настройке SMB на CentOS:
https://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-samba-configuring.html
WebDAV универсален и имеет преимущество перед SMB, когда используется для доступа к файлам в сети с высокой задержкой (например, облако Amazon). WebDAV может иметь худшую производительность, чем SMB в локальной сети. Также он имеет ограничение размера файла 4 ГБ
Других решений пока нет …