Назад | Перейти на главную страницу

Каков типичный набор инструментов для удаленного обслуживания на компьютерах с Windows?

Мне нужно развернуть код PHP и Python и соответствующую среду (веб-сервер, сервер db) в удаленных системах Windows, и я не знаю, какой набор инструментов будет эквивалентен ssh, scp, bash и тому подобное.

Итак, по сути, мне нужно уметь следующее:

Главный вопрос, вероятно, в первую очередь заключается в том, как я могу безопасно попасть на машину, а остальное - это общие знания администратора Windows, которые, вероятно, слишком широки, чтобы уместиться в одном вопросе.

У меня есть многолетний опыт обслуживания боксов Linux, и я использовал для них инструменты разной сложности, от простых scpиспользование файлов PHP для развертывания контейнеров приложений Java и даже полных виртуальных машин с помощью Vagrant.

В Windows я полный нуб и даже не знаю, с чего начать. Я устанавливал Apache, MySQL, PHP на настольную машину, может быть, дважды в жизни, вот и все.

Бонусные баллы за то, что работает с Linux-машины на моей стороне, но я мог запустить виртуальную машину и делать все оттуда.

PowerShell - лучший язык сценариев для администрирования Windows, локального или удаленного.

Есть несколько инструментов для вызова и использования PowerShell из * nix, например Паш. Я никогда не использовал ни один из них, поэтому не могу говорить об их способностях, полноте или полировке.

Безопасный удаленный доступ: OpenVPN + RDP? Если вы достаточно смелы, вы можете установить сервер Cygwin + OpenSSH.

Возможно, вы захотите взглянуть на марионетку для Windows, которая должна помочь вам в автоматизации и установке программного обеспечения (msi). Я считаю, что puppetmaster должен быть на Linux, а марионеточный агент будет работать на Windows.

Хм, забавно, что здесь никто не говорит о тяжеловесах.

Для меня это SCOM, SCCM - System Center Operations and Configuration Manager.

Установки, отслеживание производительности, уведомление о проблемах - все здесь.

IIS довольно хорошо запускает PHP и большинство других приложений FastCGI, если для него существует фильтр ISAPI. При этом я бы почти посмотрел на использование Фреймворк веб-фермы, модуль для IIS, а также, возможно, набор инструментов для веб-развертывания.

По сути, вы настраиваете главный сервер, который настраиваете так, как вы хотите, от настроек IIS до MySQL и PHP, а затем просто настраиваете IIS для обслуживания страниц для этого приложения. После того, как все это настроено, вы можете просто включить другие «вторичные» серверы в ферме, и они автоматически синхронизируют все настройки приложения и сервера.

Кроме того, если для определенных компонентов, таких как PHP и MySQL, существует пакет установщика веб-платформы, он также автоматически установит и исправит их для вас. И последнее, но не менее важное: система гарантирует, что на каждой машине также будет одинаковый уровень обновлений Windows, которые могут сбивать с толку здесь и там.

Одна из замечательных вещей в этом заключается в том, что @ChrisS упоминает, что PowerShell - это среда сценариев для Windows, и в этой связи Web Farm Framework также имеет командлеты PowerShell для упрощения удаленного администрирования самой службы.

Есть целая куча справочной документации Вот. Обратите внимание, что текущая версия - 2.2.

Я не уверен, подойдет ли он, но Нагои может сработать и для вас. Я знаю, что у них есть некоторые инструменты удаленного развертывания, а также мониторинг.

По сути, вы хотите запустить RDP через VPN. Поэтому установите vpn в ящик любыми способами (hamachi / open vpn и т. Д.), А затем запустите RDP-клиент для подключения к ящику.

В своих целях я использую веб-шлюз для установки vpn (Adito), а затем запускаю приложение RDP, которое я опубликовал внутри шлюза.

Хотя PowerShell является отличным инструментом для администратора Windows, ему по-прежнему требуется безопасное соединение, и установка программного обеспечения только с помощью Powershell (без рабочего стола с графическим интерфейсом) будет излишне сложной.