Event ID 5012 – Erro 9026 – Falha na Replicação DFS no Windows Server

Olá pessoal,

fui acionado por cliente que informou que estava tendo problemas na replicação DFS após criar um namespace novo, ou seja, criava arquivos ou pastas em um servidor e não era replicado para o outro. Verifiquei o log de eventos e encontrei o ID 5021, com erro 9026 (conexão inválida) que realmente informava falha de conectividade e consequentemente sincronismo entre os parceiros de um determinado grupo de replicação.

DFS1

Para corrigir este problema, vamos registrar novamente a Replicação do DFS no Provedor WMI e reiniciar o serviço executando os os seguintes passos:

Execute o prompt de comando e acesse o diretório C:\Windows\system32\wbem\
Em seguida,  execute os comandos abaixo na sequência:
mofcomp dfsrprovs.mof
net stop winmgmt
net start winmgmt
net start iphlpsvc
net stop dfsr
net start dfsr

Verifique no Log de Eventos se a Replicação DFS entre os parceiros foi restabelecida. conforme imagem abaixo.

DFS2

Até a próxima!

Definindo as configurações do Windows Update através do sconfig no Windows Server 2016

Olá pessoal,

fui acionado por um cliente que reportou que um servidor Hyper-V baseado no Windows Server 2016 reiniciou bem cedo, pouco antes do inicio do expediente. O Servidor levando bastante tempo para ficar online novamente, com isso as VMs com os sistemas não subiram e o inicio da operação da empresa acabou prejudicado.

Pois bem, eu acessei o servidor e identifiquei no log, através do Evento 1074,  que o próprio sistema realizou a instalação de um service pack e ao final reiniciou o servidor. Vejam abaixo:

Win16Up01

O cliente solicitou que as atualizações não sejam mais feitas de forma automática e sim manualmente, conforme janela a ser definida. Essa configuração poderia ser feita através de uma Política de Grupo (GPO) no Active Directory, porém como se trata de um servidor Standalone, vamos demonstrar como definir esta configuração diretamente na própria máquina, localmente.

Primeiramente abra o PowerShell como Administrador execute o comando sconfig

Após isso, selecione a opção 5, Configurações do Windows Update e defina a opção (M) Manuais. A mensagem abaixo será exibida. Clique em OK.

Win16Up02_nova

Pronto, desta forma as atualizações do Windows Update serão feitas manualmente.

Win16Up03

Até a próxima!

Hyper-V: Shutdown em todas as VMs via PowerShell

Olá pessoal,

WindowsPowerShellDe tempos em tempos eu preciso instalar as atualizações do Windows Update em um host Hyper-V baseado em Windows Server 20126 de um cliente. Antes de iniciar o processo eu desligo as máquinas virtuais (VMs) utilizando um script que eu vou compartilhar aqui com vocês. Com as VMs desligadas eu faço a atualização e em seguida reinicio o Host.

Antes de mais nada, execute o PowerShell no servidor e verifique o status das máquinas virtuais que estão rodando neste servidor utilizando o cmdlet abaixo:

Get-VM

Em seguida, utilize o script abaixo para desligar todas as máquinas virtuais que estejam ligadas:

[cmdletbinding()]
Param($vmhost = ‘NOME_DO_HOST’)
$runningVM = Get-VM -ComputerName $vmhost| where state -eq ‘running’
foreach ($cn in $runningVM)
{Stop-VM $cn.name -asjob}

Cole o código acima em um bloco de notas, substitua NOME_DO_HOST, pelo nome do seu servidor, e salve como por exemplo, Shutdown_VMs.ps1

Após isso execute o arquivo criado no PowerShell.

Será criado um job de desligamento por vm, no meu caso são 8 VMs neste servidor:

HyperV_PS_ShutdownVMs_1

Após isso execute novamente o cmdlet Get-VM para verificar o status das VMs:

HyperV_PS_ShutdownVMs_2

Podemos verificar também o status através do Gerenciador do Hyper-V, conforme imagem abaixo:

HyperV_PS_ShutdownVMs_3.1

Até a próxima!

Windows Server – Verificando a versão do schema do Active Directory

Olá pessoal,

Como eu sempre falo em minhas palestras e eventos, apesar de vivermos uma explosão de incentivos, ofertas e conteúdos voltados para os serviços em nuvem, o mundo on premise, ou seja a infraestrutura local, interna nas empresas segue demandando e exigindo muitos dos profissionais e consultores de TI.

Com o fim do suporte ao Windows Server 2008 R2 por parte da Microsoft em 14 de janeiro de 2020 as empresas já estão se movimentando para atualizar seus ambientes. Vejo grandes oportunidades de negócio, inclusive no ano passado eu publiquei um vídeo sobre.

Sem dúvida já existe uma demanda enorme para migração de ambientes Active Directory baseados no Windows Server 2008 R2 e em momentos de migração ou upgrade é necessário saber a versão do schema de forma a fazer o planejamento adequado da versão correta do Windows Server a ser instalada.

Vejam abaixo a relação de sistemas operacionais e suas respectivas versões do AD.

AD_SCHEMA_VERSOES

Mas como fazer para identificar a versão do schema do AD do seu ambiente? Vou listar 3 maneiras abaixo:

1 – Através do Registro (regedit) do Windows, navegando em Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\NTDS\Parameters e verifique a entrada Schema Version, no exemplo abaixo versão 47, ou seja, Windows Server 2008 R2.

AD_SCHEMA_VERSOES_REGEDIT

2 – Via CMD, utilizando o comando dsquery, substitua “nomedominio” e “corp” pelo nome do domínio a ser pesquisado:

dsquery * cn=schema,cn=configuration,dc=nomedominio,dc=corp -scope base -attr objectVersion

3 – Via PowerShell:

Get-ADObject (Get-ADRootDSE).schemaNamingContext -Property objectVersion

Espero ter ajudado! Boas migrações!

PowerShell – Identificando os servidores Controladores de domínio utilizados pelo Exchange Server

WindowsPowerShellOlá pessoal,

Durante uma migração de Active Directory em um cliente, foi necessário verificar e garantir que o servidor Exchange Server estava pesquisando e utilizando os servidores Controladores de domínio e Global Catalog corretos para autenticação.

Para obter essa informação via PowerShell vamos executar o comando abaixo:

Get-ExchangeServer -Identity “servidor” -status | fl

Substitua “servidor” pelo nome do seu servidor Exchange Server nas versões 2007, 2010, 2013 ou 2016.

Até a próxima!

Exchange Server – Alguns comandos PowerShell para gerência dos databases

Olá pessoal,

WindowsPowerShellHoje eu compartilho com vocês alguns comandos PowerShell bastante úteis para gerencia e suporte em ambientes com Exchange Server na rede.

Para obter informações sobre cada mailbox existente em todos os databases em um servidor Exchange, execute:

Get-MailboxStatistics

Para saber a quantidade exata de mailboxes criadas no Exchange Server execute, substituindo SERVIDOR, pelo nome do seu servidor:

Get-Mailbox -Server SERVIDOR | Measure-Object

Para identificar a quantidade de maiboxes criadas em cada database existente no Exchange, execute:

Get-Mailbox | Group-Object -Property:Database | Select-Object Name,Count | Sort-Object Name | Format-Table -Aut

Até a próxima!

GAB 2019 – Material da apresentação sobre Azure File Share

Olá pessoal,

conforme prometido eu compartilho com vocês o material sobre Azure File Share que eu utilizei na apresentação que eu fiz no Global Azure Bootcamp em Uberlândia/MG no último dia 27/04.

Aos que participaram, eu espero que tenham gostado e saibam que eu caso de dúvidas eu estou à disposição, podem entrar em contato.

Então, divulguem, compartilhem e bons estudos!

27/04 – Global Azure Bootcamp 2019 – Uberlândia/MG

Olá pessoal,

pelo segundo ano consecutivo terei o prazer de participar da edição em Uberlãndia/MG do Global Azure Bootcamp. O evento está sendo organizado pelo meu amigo Bruno Maestro e acontecerá no próximo sábado (27/04), a partir das 8:30, no Senac Uberlândia, localizado na Avenida Belo Horizonte, 525.

Profissionais de Infra e Dev receberão conteúdo relevante e de qualidade.

As inscrições podem ser realizadas em http://bit.ly/bootcamp2019udia

Aguardo todos vocês lá! Até sábado!

GLOBALAZURE2019_UBERLÂNDIA

Live Migration de máquina virtual no Hyper-V via PowerShell

WindowsPowerShellOlá pessoal,

Devido a necessidade de um cliente eu precisei automatizar o processo de Live Migration de máquinas virtuais baseadas no Hyper-V/Windows Server. Para isso utilizei os comandos PowerShell abaixo:

Primeiro devemos importar o módulo do Failover Cluster no equipamento onde os comandos serão executados:

Import-Module FailoverClusters

Após isso, para realizar o Live Migration de uma VM utilize:

Get-Cluster “Nome_do_Cluster” | Move-ClusterVirtualMachineRole -Name “Nome_da_máquina_virtual” -Node “Nome_do_nó_do Cluster”

Vejam o exemplo: Get-Cluster SRVCLUS01 | Move-ClusterVirtualMachineRole -Name SRV01 -Node SRVHV01

Será exibida uma barra de status do processo no prompt do PowerShell. Aguarde todo o processo e verifique no nó de destino se o processo ocorreu com sucesso e a máquina virtual está ok.

Até a próxima!

Realizando teste de conexão com um database SQL Server

Olá pessoal,

dica rápida para quem precisa validar/testar as credenciais de acesso a um banco de dados baseado no SQL Server.

A partir do PC/Notebook/Servidor com sistema operacional Windows, de onde será feito o teste de conexão, crie um arquivo txt sem conteúdo com nome, por exemplo, testedeconexao.txt

Renomeie este arquivo *.txt criado para a extensão *.udl, no exemplo então renomeie para testedeconexao.udl

Execute o arquivo testedeconexao.udl e será exibida a tela abaixo.

SQLTest1

Selecione o servidor para o qual deseja realizar o teste, defina as credenciais de acesso e para qual banco a tentativa de acesso será realizada. Após isso clique em Testar conexão.

SQLTest2

Até a próxima!