Em máquinas Windows, qual é o toolchain típico para manutenção remota?

6

Eu preciso implantar código PHP e Python e o ambiente apropriado (servidor web, servidor db) para sistemas Windows remotos e não sei qual toolchain seria equivalente a ssh , scp , bash e similar.

Então, basicamente, o que eu preciso ser capaz de fazer é o seguinte:

  • acesse o Windows remoto com os privilégios apropriados de maneira segura, como faço rotineiramente com ssh (nem sei se seria uma interface gráfica ou de texto no Windows).
  • instalar remotamente o software: Apache ou IIS, MySQL ou Postgres, Python ou PHP
  • copia arquivos do remoto (o aplicativo que estamos implantando)
  • configura remotamente a máquina para executar tarefas regulares (por exemplo, verificação de atualizações no aplicativo)
  • automatizar tarefas como o download de arquivos de um local designado

A questão principal é provavelmente como eu coloco a máquina em segurança em primeiro lugar, e depois o resto é conhecimento geral do administrador do Windows, que provavelmente é um escopo muito amplo para caber em uma questão.

Tenho anos de experiência na manutenção de caixas Linux e usei ferramentas de sofisticação variada, variando de% simples de arquivos PHP a implantação de contêineres de aplicativos Java e até VMs completas com o Vagrant.

No Windows, eu sou um noob completo e nem sei por onde começar. Eu instalei o Apache, MySQL, PHP em uma máquina de desktop, talvez duas vezes na minha vida, é sobre isso.

Pontos de bônus para coisas que funcionam em uma máquina Linux no meu final, mas eu poderia executar uma VM e fazer tudo de lá.

    
por Hanno Fietz 15.08.2012 / 12:10

6 respostas

3

O PowerShell é a linguagem de script proeminente para administração do Windows, local ou remota.

Existem algumas ferramentas disponíveis para ligar e usar o PowerShell da * nix, como o Pash . Eu nunca usei nenhum deles, então não posso falar sobre suas habilidades, perfeição ou polimento.

    
por 15.08.2012 / 16:45
1

Acesso remoto seguro: OpenVPN + RDP? Se você for corajoso o suficiente, você pode instalar o servidor Cygwin + OpenSSH.

Você pode querer olhar para o fantoche para janelas, que deve ajudá-lo com muita automação e instalação de software (msi). Eu acredito que o puppetmaster tem que estar no linux e um agente de marionetes funcionará nas janelas.

    
por 15.08.2012 / 17:30
1

Hm, é engraçado ninguém falar sobre os pesados aqui.

Para mim, é SCOM, SCCM - Operações do System Center e Gerenciador de Configuração.

Instalações, acompanhamento de desempenho, notificação sobre problemas - tudo lá.

    
por 07.01.2013 / 09:56
0

O IIS executa o PHP e a maioria dos outros aplicativos FastCGI muito bem se existir um filtro ISAPI para ele. Dito isto, eu quase gostaria de usar o Web Farm Framework , um módulo para o IIS, bem como talvez o conjunto de ferramentas Web Deploy.

Essencialmente você configura um servidor mestre que você configura da maneira que você quer das configurações do IIS para MySQL e PHP e simplesmente configura o IIS para servir páginas para aquele aplicativo. Uma vez que tudo isso esteja configurado, você pode simplesmente ativar outros servidores "secundários" no farm e eles sincronizarão automaticamente todas as configurações do aplicativo e do servidor.

Além disso, se existir um pacote Web Platform Installer para determinados componentes, como PHP e MySQL, ele será automaticamente instalado e corrigido também para você. Por último, mas não menos importante, o sistema garantirá que cada máquina também tenha o nível idêntico de atualizações do Windows, o que poderia resultar em coisas aqui e ali.

Uma das coisas legais sobre isso é como as menções do @ChrisS, o PowerShell é o ambiente de script do Windows e, nessa medida, o Web Farm Framework também tem cmdlets do PowerShell para facilitar a administração remota do próprio serviço.

Há muitos documentos de ajuda aqui . Observe que a versão atual é 2.2

    
por 06.09.2012 / 16:32
0

Eu não tenho certeza se seria um bom ajuste, mas Nagois pode funcionar para você também. Eu sei que eles têm algumas ferramentas de implantação remota, juntamente com o monitoramento.

    
por 06.09.2012 / 17:16
-1

Essencialmente, você deseja executar o RDP em uma VPN. Então, estabeleça uma vpn para a caixa por qualquer meio (hamachi / open vpn etc.) e, em seguida, execute um cliente RDP para conectar-se à caixa.

Para os meus propósitos eu uso um gateway da web para estabelecer a VPN (Adito) e, em seguida, executar um aplicativo RDP que eu publiquei dentro do gateway.

Embora o powershell seja uma excelente ferramenta para o administrador do Windows, ele ainda precisa de uma conexão segura, e a instalação de software estritamente por meio do Powershell (sem o desktop GUI) seria desnecessariamente difícil.

    
por 06.09.2012 / 18:13