Examinar o recurso de comunicação remota implícita no Windows PowerShell
Um dos problemas contínuos no espaço de gerenciamento do Windows é a incompatibilidade de versão. Por exemplo, os servidores Windows 2019 e 2022 incluem muitos novos comandos do Windows PowerShell. Você pode disponibilizar esses comandos no Windows 10 ou no Windows 11, como parte das Ferramentas de Administração de Servidor Remoto. No entanto, talvez você não consiga usar a mesma abordagem com as versões mais antigas do Windows.
Você deve estar familiarizado com outro problema contínuo se teve que recompilar uma estação de trabalho recentemente. O problema é o longo tempo necessário para rastrear e instalar ferramentas administrativas e MMCs (Consoles de Gerenciamento da Microsoft) em um computador. Supondo que todos eles sejam compatíveis com as versões do Windows, a instalação em si pode levar dias.
Esses problemas levam os administradores a deixar de instalar as ferramentas nas estações de trabalho e, em vez disso, acessar as ferramentas diretamente no servidor por meio da Área de Trabalho Remota da Microsoft. No entanto, essa não é uma boa solução porque coloca o servidor na posição de ser um cliente, ao mesmo tempo em que fornece serviços para centenas ou milhares de usuários. O advento do Server Core, que não tem uma GUI (interface gráfica do usuário), ocorreu em parte para fazer com que os servidores tenham melhor desempenho e precisem de menos atualizações. No entanto, isso também significa que eles não podem executar ferramentas de GUI e MMCs.
A comunicação remota implícita oferece ferramentas a você
A comunicação remota implícita oferece uma cópia das ferramentas do Windows PowerShell de um servidor para o computador local. Na realidade, você não está copiando os comandos, e sim criando um tipo de atalho, chamado de função proxy, para os comandos do servidor. Quando você executa os comandos no computador local, eles são executados implicitamente no servidor por meio da comunicação remota. Em seguida, os resultados são enviados para você. É exatamente como se você executasse tudo através do Invoke-Command, mas é muito mais prático. Os comandos também são executados mais rapidamente, pois os comandos no servidor são colocados com a funcionalidade e os dados do servidor.
Usar a comunicação remota implícita
Embora a comunicação remota implícita tenha sido disponibilizada no Windows PowerShell 2.0, tornou-se muito mais fácil usar a partir do Windows PowerShell 3.0. Tudo o que é necessário é criar uma sessão para o servidor contendo o módulo que você deseja usar. Em seguida, usando Import-Module e seu parâmetro –PSSession, você importa o módulo desejado. Os comandos nesse módulo e até mesmo os arquivos de Ajuda ficam disponíveis na sessão do Windows PowerShell local.
Com a comunicação remota implícita, você tem a opção de adicionar um prefixo ao nome de comandos importados. Ao fazer isso pode facilitar, por exemplo, ter várias versões dos mesmos comandos carregadas simultaneamente, sem causar uma colisão de nomenclatura. Por exemplo, se você importar os comandos do Microsoft Exchange Server 2016 e do Exchange Server 2019, pode adicionar o prefixo 2016 e 2019 a cada um deles, respectivamente. Isso permite que você execute os dois conjuntos de comandos. Na realidade, cada um deles estaria em execução nos respectivos servidores, permitindo que você executasse os dois conjuntos (talvez em um cenário de migração) lado a lado.
A opção Ajuda também funciona para comandos que executados por meio da comunicação remota implícita. No entanto, os arquivos de Ajuda são elaborados por meio da mesma sessão de comunicação remota que os próprios comandos. Portanto, o computador remoto deve ter uma cópia atualizada dos arquivos de Ajuda. Isso pode ser preocupante nos servidores, pois eles podem não ser usados com frequência e podem não ter executado o Update-Help recentemente para remover os arquivos de Ajuda mais recentes.